Migrating from Claude Code
Me Write Code can reuse Claude Code authoring formats while storing its own config under ~/.mewrite/agent/ and project config under .mewrite/.
TL;DR
# 1. Install
npm install -g @zhachory1/mewrite-code
# 2. Copy config
mkdir -p ~/.mewrite/agent
cp -r ~/.claude/commands ~/.mewrite/agent/
cp -r ~/.claude/skills ~/.mewrite/agent/
cp -r ~/.claude/agents ~/.mewrite/agent/
cp ~/.claude/settings.json ~/.mewrite/agent/settings.json # hooks + statusLine
# 3. Project-scope
cp -r .claude .mewrite # optional project-scope import
# 4. Keep CLAUDE.md or add AGENTS.md; Me Write Code reads both.
# 5. MCP — already standard
# .mcp.json works as-is.
# 6. Run
mewriteWhat maps directly
| Claude Code | Me Write Code | Notes |
|---|---|---|
~/.claude/settings.json | ~/.mewrite/agent/settings.json | Hooks + statusLine compatible schema |
~/.claude/commands/*.md | ~/.mewrite/agent/commands/*.md | Frontmatter is a superset |
~/.claude/skills/<name>/SKILL.md | ~/.mewrite/agent/skills/<name>/SKILL.md | Identical |
~/.claude/agents/<name>.md | ~/.mewrite/agent/agents/<name>.md | Frontmatter is a superset |
.mcp.json | .mcp.json | Same path; no change |
CLAUDE.md | CLAUDE.md or AGENTS.md | Me Write Code reads both, layered |
| Auto-Memory | cavemem | Different backend; same UX |
Differences worth knowing
Memory
Claude Code uses Auto-Memory with ~/.claude/projects/<slug>/memory/MEMORY.md. Me Write Code uses cavemem by default and falls back to FilesProvider when Cavemem is unavailable. To bridge:
mewrite memory sync --from claudeThis imports MEMORY.md and per-fact files as cavemem observations. Going forward, if you keep both Claude Code and Me Write Code running in the same project, mewrite-code reads the first 200 lines of MEMORY.md on every session start.
Models
Claude Code is Anthropic-only. Me Write Code is provider-agnostic. After migrating, you can:
mewrite --model openai/gpt-5-codex
mewrite --model claude-sonnet-4 # default behavior matches Claude CodeCost
By default Caveman Mode compression is on, which Claude Code doesn't have. Expect tool-output token consumption to drop ~85%. If something looks off, bisect with:
/cave offPermissions and hooks
Me Write Code supports plan mode, approval mode, checkpoints, and beta native sandboxing. PreToolUse hooks can deny, ask, or allow tool calls via Claude Code-compatible hook output.
Confirming the migration worked
mewrite doctor # general health
# inside the TUI:
/hooks list # all hooks loaded
mewrite skills list # all skills loaded
mewrite agents list # all subagents loaded
mewrite mcp doctor # MCP servers reachableIf any of these report mismatches, open an issue — we treat Claude Code parity as a CI gate.
Why not just use Claude Code?
- Token efficiency. Caveman Mode, tool-output budgets, read deduplication, and prompt-cache-friendly sessions reduce context waste.
- Provider flexibility. Use ChatGPT Plus, Copilot, Gemini, or any OpenAI-compatible endpoint.
- Session branching.
/tree,/fork— no major competitor has this. - MIT. No vendor lock-in; self-host the daemon.
If none of those matter to you, stay on Claude Code — it's a fine product.