Skip to content

Rename: skilifyskillify (fix typo) #114

@efenocchi

Description

@efenocchi

Why

The CLI subcommand and module are named skilify but the natural derivation from skill is skillify (double-l). The current name reads as a typo. Fixing while the user base is small avoids cementing it further.

Strategy

Hard switch — no CLI alias. After the rename, hivemind skilify ... returns "unknown subcommand". Users with shell history or scripts hardcoded to skilify need to relearn. Keeps the diff smaller and the surface unambiguous.

State directory auto-migrates. On first boot of the renamed version, if ~/.deeplake/state/skilify/ exists and ~/.deeplake/state/skillify/ does not, rename the directory in place. Preserves config.json, pulled.json (manifest), autopull-last-run.json, and per-project state files so installed skills aren't stranded and unpull keeps working.

Sequencing

Do this after PR #112 merges. Doing it earlier means the rename PR conflicts with #112's introduction of auto-pull.ts, agent-roots.ts, and the new manifest helpers. Once #112 is on main, branch off main and one-shot the rename across the post-#112 tree.

Scope

From a tree-wide grep: 49 files, 563 occurrences.

Touchpoint Action
src/skilify/ directory rename to src/skillify/ (also import paths in 30+ files)
src/commands/skilify.ts + bundle entrypoint rename file + the runSkilifyCommand export
hivemind skilify CLI subcommand dispatcher matches only \"skillify\"; \"skilify\" falls through to "unknown subcommand"
claude-code/tests/skilify-*.test.ts (17 files) rename files + update import paths
~/.deeplake/state/skilify/ one-time auto-migrate on first boot if ~/.deeplake/state/skillify/ doesn't yet exist
pulled.json installRoot field unaffected — stores absolute paths to <root>/.claude/skills/, no skilify substring
README.md, RELEASE_CHECKLIST.md global text replace
.github/workflows/{ci,release}.yml global text replace
pi/extension-source/hivemind.ts rename any ~/.deeplake/state/skilify/ literal paths
openclaw/skills/SKILL.md global text replace
vitest.config.ts coverage thresholds rename keys
esbuild.config.mjs rename bundle entrypoints if any

Risk

Users with hivemind skilify aliases / scripts get a hard error after upgrade. Mentioned in the rename PR's release notes.

State dir auto-migration is a one-time renameSync; if it fails (cross-device link, permission), fall back to leaving the old directory in place and starting fresh — pull will repopulate pulled.json, but unpull of pre-rename installs will need a manual cleanup step.

Out of scope

  • Keeping skilify as a deprecated alias (rejected — chose hard switch).
  • Renaming the ~/.deeplake/state/skillify/skilify-worker.ts log tag references in older session memory dumps (read-only history).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions