Migrate from Claude Code
Keep your setup, lose the lock-in. Claudin copies your Claude Code sign-in with one command, then imports the rest on your terms — and runs on any LLM provider.
Overview
Claudin is an independent project, built to work with any provider and rooted in the Claude Code codebase. Moving over is not a fresh setup — it is a two-step import: your sign-in first, then everything else, whenever you want it.
No manual export step. No config files to copy by hand. No workflow to relearn.
# install claudin
npm install -g @claudiolabs/claudin@latest
# run, then open /provider — a one-time banner offers to
# copy your Claude Code sign-in
claudin
/provider
✓ Detected ~/.claude/ — sign-in copied
✓ Ready — switch or add providers right here
✓ Bring the rest across any time with /import
What gets migrated
Migration is two separate commands, each with a different scope. /provider migrate handles sign-in only; /import handles everything else, and only when you ask for it.
/provider migrate — offered automatically as a banner the first time you open /provider with an existing ~/.claude/ and no ~/.claudin/ yet. Copies:
| What | Copied |
|---|---|
| Anthropic OAuth tokens | Restored and ready to use |
| Provider settings | providerProfiles, activeProviderProfileId, and customApiKeyResponses (already-approved API keys) |
| Account identity | The legacy global ~/.claude.json |
It's a copy, not a move — ~/.claude/ is left untouched, and running it again doesn't duplicate anything. Rerun it manually any time with /provider migrate.
/import — a separate, explicit command that reads eight agents, not just Claude Code (openclaude, OpenAI Codex, Gemini CLI, Qwen Code, opencode, Kimi CLI, and Cursor too). It shows what each one can contribute before writing anything:
| What | Imported |
|---|---|
| Skills, agents, slash commands | Yes, with conflicts reported and left to you to resolve |
| MCP servers | Yes |
| Theme & keybindings | Yes |
| Plugins | Yes |
| Rules & instructions, settings | Yes — permissions are counted and reported rather than translated, since rule syntax differs between agents |
| Credentials | Never — /provider migrate is the only path that copies tokens |
| Memory | Not imported — see Memory for why |
How it works
- Install Claudin. Requires Node.js 20+. Install globally with
npm install -g @claudiolabs/claudin@latest(orbun,npx, and the one-linecurlinstaller — see Install). - Run
claudin, then/provider. If it finds~/.claude/and you haven't set up Claudin yet, a banner offers to copy your sign-in. Accept it, or skip it and run/provider migratelater — the choice is remembered either way. - Bring the rest across, when you're ready. Run
/importto pick up skills, agents, MCP servers, plugins, theme, and keybindings. Nothing is overwritten by default — conflicts are reported, and overwriting is a separate, explicit choice on the confirmation screen. - Start coding. The only new thing is that you can now point Claudin at any model.
After you migrate
The reason to switch is provider freedom. Once your settings are imported, use the /provider wizard to add or switch models at any time — no environment variables, no restarts:
/provider # add, edit, or switch provider profiles
/provider doctor # health check: reachability, auth, model availability
You keep the full agentic workflow — bash, files, grep, glob, sub-agents, MCP, web search — but now on Anthropic, OpenAI, Gemini, DeepSeek, Mistral, Ollama, AWS Bedrock, Google Vertex, OpenRouter, Groq, or any of 200+ OpenAI-compatible endpoints. Prefer to stay fully offline? Pull a model with Ollama or LM Studio and run with no API key at all (see Local models).
Nothing is overwritten
/provider migrate is a read, not a move. Claudin reads from ~/.claude/ and writes its own configuration to ~/.claudin/. Your original Claude Code directory is left untouched, so you can keep both tools installed and fall back at any time. /import goes further: anything you already have is reported as a conflict and left alone by default — overwriting is a separate, explicit choice on the confirmation screen, so running it twice is a no-op.
FAQ
Is migrating automatic?
Signing in is one command, not automatic on first launch. The first time you open /provider with an existing ~/.claude/ and no ~/.claudin/ yet, a banner offers to copy your sign-in — accept it, or run /provider migrate yourself later. Everything else — skills, agents, MCP servers, plugins, theme, keybindings — comes across with a separate /import command, whenever you ask for it.
Does migrating bring my memory across?
No. Claudin's memory system is project-local and git-trackable — a different design from Claude Code's — so neither /provider migrate nor /import copies old memory files. See Memory for how Claudin's memory works instead.
Does it change or delete my Claude Code setup?
No. Claudin reads from ~/.claude/ and stores its own config in ~/.claudin/. The original directory is left in place, so both tools can coexist.
Can I use a provider other than Anthropic after migrating?
Yes — that is the point. After your settings import, run /provider to add or switch to OpenAI, Gemini, DeepSeek, Mistral, Ollama, AWS Bedrock, Google Vertex, OpenRouter, Groq, or any of 200+ OpenAI-compatible endpoints, without changing your workflow.
Is Claudin affiliated with Anthropic or Claude Code?
No. Claudin is an independent project. It is not affiliated with, endorsed by, or sponsored by Anthropic.