From OpenClaw to Claude Code Agent Teams: What Actually Migrates
I ran a 14-agent AI team on OpenClaw for months.
It handled startup ops across finance, marketing, engineering, customer support, daily standups, and even personal coaching. Each agent had its own Telegram bot, persistent memory, scheduled tasks, and MCP integrations.
Then Anthropic cut off Claude access through OpenClaw. Overnight, a large chunk of OpenClaw users lost their main LLM provider.
So I evaluated Claude Code Agent Teams as a replacement, mapped what carries over, identified what breaks, and built an open-source migration tool to make the switch easier.
What OpenClaw gives you
If you use OpenClaw actively, you already know the model:
- Isolated agents
- Persistent memory
- Scheduled tasks
- MCP integrations
- Inter-agent coordination
The real issue is not the orchestration layer. It is losing Claude as the LLM behind it.
Since then, Anthropic has launched Agent Teams and a few other features that make a multi-agent setup inside Claude Code much more viable. It is not the same as OpenClaw, but it does recreate a meaningful part of what made OpenClaw powerful, with its own pros and cons.
What Claude Code Agent Teams gives you
Anthropic launched Agent Teams as an experimental feature in Claude Code v2.1.32.
One Claude Code session acts as the lead and spawns teammates. Each teammate gets its own context window, can message other teammates, and coordinates through a shared task list.
That is much closer to OpenClaw than I expected.
At a high level, the mapping looks like this:
- OpenClaw agents → Claude Code agent definitions
- Isolated sessions → separate teammate contexts
- Inter-agent messaging → maps reasonably well
- Scheduled tasks and MCP integrations → mostly carry over
- Persistent memory → exists, but in a simpler form
Four things I learned during the migration
1. One agent definition can be used in two ways
In Claude Code, agents are markdown files with YAML frontmatter in ~/.claude/agents/.
The same file can be used as:
- A subagent for one-off delegated work
- A teammate in an Agent Team with coordination and persistence
You define the agent once. The runtime model changes how it behaves.
2. memory: user is the persistence mechanism
OpenClaw has much richer memory:
- SQLite
- Vector search
- Daily notes
- Long-term memory files
Claude Code is simpler. If you set memory: user in agent frontmatter, the agent gets a persistent memory directory under ~/.claude/agent-memory/{name}/.
It is not a full replacement, but it is enough for agents that need continuity across sessions.
3. Use teammates for recurring roles, subagents for one-off tasks
My OpenClaw setup had 14 agents. Translating that directly into 14 always-active Claude Code teammates would be wasteful.
The better model is:
- Teammates for recurring roles where memory matters
- Subagents for one-off tasks where persistence adds little value
A finance agent that remembers past reviews and outstanding invoices should be a teammate. A quick formatting or scripting task can stay a subagent.
You do not need every agent active all the time. The lead can spawn the right ones for the task at hand.
4. Per-agent messaging channels do not translate
This is the biggest workflow gap.
OpenClaw lets you assign separate Telegram bots to separate agents. I could message marketing directly, or finance directly, from my phone.
Claude Code gives you one inbound channel to the lead session. The lead routes work internally.
You keep the team structure, but lose direct access to individual agents from chat.
What migrates and what does not
Migrates well
- Agent roles, identity, and responsibilities
- Org hierarchy and delegation patterns
- MCP server configs
- Scheduled tasks
- Long-term memory content
- Inter-agent coordination patterns
Does not migrate cleanly
- Per-agent Telegram or WhatsApp bots
- Vector or semantic memory search
- Always-on daemon behavior (though a persistent tmux session gets part of the way there)
- Daily notes (usually not worth carrying over)
The migration tool
I built claw-to-claude, an open-source migration tool for this.
It runs in three phases:
Phase 1: Analyze
Reads your OpenClaw config, workspace files, skills, MCP servers, cron jobs, and agent hierarchy.
Phase 2: Plan
Generates a migration plan with agent mappings, MCP config, scheduling setup, skill consolidation, and a clear list of what will not migrate.
Phase 3: Execute
Creates agent files in ~/.claude/agents/, generates shared skill files, seeds persistent memory from existing MEMORY.md files, and prints setup steps.
Install
claude plugin marketplace add tkhattar14/claw-to-claude
claude plugins install github:tkhattar14/claw-to-claude
Run
/claw-to-claude:migrate --path ~/openclaw-snapshot
Or:
/claw-to-claude:migrate --ssh user@your-openclaw-host
Is it a full replacement?
No.
OpenClaw is built for always-on, multi-channel AI assistants. Claude Code Agent Teams is built for collaborative work inside Claude Code sessions.
If your workflow is “message my finance agent from Telegram and get a P&L update,” OpenClaw still fits better with a different LLM provider.
If your workflow is “break down a feature across agents, let them coordinate, and ship it,” Claude Code Agent Teams works well.
My current split is simple:
- Daily operations stay on OpenClaw
- Complex collaborative work that benefits from Opus 4.6 moves to Claude Code
The migration tool is at github.com/tkhattar14/claw-to-claude. It is MIT licensed. Issues and PRs are welcome.