Skip to content

How to migrate from Claude Code to OpenCode

aix is a CLI for defining, installing, and syncing AI editor configuration. If you are moving from Claude Code to OpenCode, this guide shows what aix can carry over, what the destination editor calls each feature, and where the destination config lands.

When you are ready to run the move, aix sync claude-code --to opencode copies the supported config from Claude Code into OpenCode. Use the comparison below first so you know which names, paths, and support differences to expect.

If you want the aix-side definitions first, review rules , prompts , mcp , skills , hooks .

How to use this guide

  • Read across a row to compare the source and destination terms, support, and targets.
  • Each scope line shows both what the editor supports and what aix writes today.
  • Open the destination editor page at the end if you need every path, note, and terminology detail.

The biggest changes are in rules, prompts, mcp.

How to read the statuses

Support key

Editor support

  • Supported The editor exposes that feature at that scope.
  • No support The editor does not expose that feature at that scope.

aix support

  • Native aix writes the editor's own format.
  • Adapter aix keeps the feature through an adapter or alternate representation.
  • No support aix does not write that feature for the destination today.

Use the Project scope and User scope rows to see where config lands at each level.

Feature comparison

Feature-by-feature differences from Claude Code to OpenCode.
Feature Claude Code OpenCode
Rules

Rules

Project
Editor Supported aix Native
Path .claude/rules/*.md
User
Editor Supported aix Native
Path ~/.claude/CLAUDE.md

AGENTS.md

Project
Editor Supported aix Native
Path AGENTS.md
User
Editor Supported aix Native
Path ~/.config/opencode/AGENTS.md
Prompts

Commands

Project
Editor Supported aix Native
Path .claude/commands/*.md
User
Editor Supported aix Native
Path ~/.claude/commands/*.md

Commands

Project
Editor Supported aix Native
Path .opencode/commands/*.md
User
Editor Supported aix Native
Path ~/.config/opencode/commands/*.md
MCP

MCP servers

Project
Editor Supported aix Native
Path .mcp.json
User
Editor Supported aix Native
Path ~/.claude.json

MCP servers

Project
Editor Supported aix Native
Path opencode.json
User
Editor Supported aix Native
Path ~/.config/opencode/opencode.json
Skills

Skills

Project
Editor Supported aix Native
Path .claude/skills/{name}/
User
Editor Supported aix Native
Path ~/.claude/skills/{name}/

Skills

Project
Editor Supported aix Native
Path .opencode/skills/{name}/
User
Editor Supported aix Native
Path ~/.config/opencode/skills/{name}/
Agents

Subagents

Project
Editor Supported aix Native
Path .claude/agents/*.md
User
Editor Supported aix Native
Path ~/.claude/agents/*.md

Agents

Project
Editor Supported aix Native
Path .opencode/agents/*.md
User
Editor Supported aix Native
Path ~/.config/opencode/agents/*.md
Hooks

Hooks

Project
Editor Supported aix Native
Path .claude/settings.json
User
Editor Supported aix Native
Path ~/.claude/settings.json

Hooks

Project
Editor No support aix No support
Editor: The editor does not expose this feature at this scope. aix: OpenCode does not support lifecycle hooks in aix.
User
Editor No support aix No support
Editor: The editor does not expose this feature at this scope. aix: OpenCode does not support lifecycle hooks in aix.

Recommended follow-up links