Wick migrate
Drop-in thinking-partner personality layer for Claude Code, Cursor, ChatGPT, and 20+ AI agent runtimes. MIT. Plaintext. Persistent memory. Framework-grounded. Calibration-disciplined.
npx -y skills add agoradynamics/wick --skill wick-migrateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Make a Wick agent fully portable between machines — consolidate a host's auto-memory into the Wick memory/ layer, disable the shadow portably, and relativize all paths and tooling. Guided, gated, archive-don't-delete. Use when moving an agent to a new machine, or to converge a single-machine agent onto one governed memory layer. Full reference in PORTABILITY.md.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.3 KB, as published. Nobody here has run it
Wick — Migrate (portability)
Consolidate everything into one portable, git-mergeable memory layer and disable the
machine-keyed shadow. This skill is the executable form of PORTABILITY.md — read that for
the full rationale and the failure modes; this is the operating checklist with the gates.
When to invoke
- Moving a Wick agent to a second machine (the
memory/folder must travel whole) - A host keeps its own auto-memory (Claude Code, Cursor) and you want one governed layer
- Convergence: corrections or facts live only in the host layer and you want them in
memory/
The load-bearing facts
- Freeze before you migrate. Auto-memory is live. Disable it (Step 1) and verify in a fresh session before consolidating — else the source mutates under you and the layers diverge invisibly. This makes it a two-session job, not one.
- Verify behavior, not form. "The setting says false" and "the path is relative" are the two ways this silently fails. Confirm by a fresh session and by resolving paths from the launch CWD.
- Archive, don't delete. Discards and prunes go to
memory/_archived-auto-memory/(the reversibility net), never to nothing.
Procedure (gates marked 🚦 — get explicit sign-off)
- 🚦 Freeze. Find
~/.claude/projects/<path-encoded-folder>/memory/. If present, write{ "autoMemoryEnabled": false }to the project's in-folder.claude/settings.json(verify the key against current docs; checksettings.local.jsondoesn't re-enable). Then start a fresh session and confirm no auto-memory loaded. Do the rest there. - Inventory both layers (Wick
memory/+ frozen auto-memory). Note duplicates, convention-bleed (feedback_X.md), and what's already inCLAUDE.md. Present it. - 🚦 Sort auto-memory: Keep / Merge / Discard / Conflict. Never auto-resolve a conflict — surface both versions, recommend, let the user decide. Present the sort.
- 🚦 Audit Wick memory: redundancy, overlap, bloat. Never flag by mtime — judge by whether content is still true. Present findings.
- Consolidate feedback into
memory/feedback/*.mdtopic files — only if it isn't already inCLAUDE.md. Strip YAML frontmatter; keep tables/values; <200 lines each. - Write kept/merged content (read target first; append, dated). Project detail →
projects/<name>/with a status line + pointer. - Archive the raw auto-memory
memory/subfolder →memory/_archived-auto-memory/with an INERT README. Not the*.jsonltranscripts. - 🚦 Prune now-redundant Wick files (approval required). Immutable logs stay as written.
- Fix dangling references in
memory/,CLAUDE.md, and tooling. - Rewrite
memory/index.md— relative paths, <100 lines, no "as of <date>" blocks, archives excluded. - Update
CLAUDE.mdmemory protocol — deterministic session-start loading, feedback capture, write discipline, portability note (memory/is the single source of truth). - Relativize to the launch directory — pin the frame in
CLAUDE.md; runnode tools/wick-path-audit.mjs. Watch the two "relative-but-resolves-wrong" traps (own-folder-name doubling; missingmemory/prefix). - Tooling sweep — scripts self-locate;
.mcp.jsonuses${CLAUDE_PROJECT_DIR}; no plaintext secrets (node tools/wick-scrub.mjs); hooks use relative cwd. - Verify behavior — fresh session loads nothing; sample paths resolve from launch CWD; all four scanners green; nothing lost; no conflict silently resolved. Report.
What this skill will never do
- Pass a 🚦 gate without explicit user sign-off.
- Delete the only copy of anything (archive first).
- Auto-resolve a conflict between the host layer and
CLAUDE.md. - Claim "disabled" or "portable" from text inspection — only from a fresh session and real path resolution.