Migrate ClaudeKit to Any Tool

One command. All your agents, skills, rules — everywhere.

ck migrate lets you take your ClaudeKit setup (agents, commands, skills, config, rules, hooks) and install it into any other AI coding tool with smart reconciliation.

Quick Start

Interactive install picker
ck migrate --install
Preview reconcile plan
ck migrate -a codex --dry-run
Preserve deletions
ck migrate --respect-deletions
To Cursor
ck migrate --agent cursor
To all providers
ck migrate --all
Config + rules only
ck migrate --all --config --rules

What Gets Migrated

Agents
Commands
Skills
Config (CLAUDE.md)
Rules (.claude/rules/)
Hooks (.claude/hooks/)

Step-by-Step Guide

For everyone

This guide is written for non-technical users. Just copy-paste the commands — no programming knowledge needed.

1

Make sure ClaudeKit (ck) is installed

Open your terminal and check if ck is available:

ck --version

If you see a version number, you're good. If not, visit vividkit.cc/guides to install ClaudeKit first.

2

Run the migrate command

Replace <tool> with your target tool name:

# Interactive mode — auto-detects installed tools
ck migrate
# Specific tool
ck migrate --agent cursor
ck migrate --agent antigravity
ck migrate --agent windsurf

Tip: Use --dry-run first to preview what will happen before writing any files.

3

Answer the prompts

The tool will ask you a few questions (which providers, project or global install, how to handle conflicts). Use arrow keys to select and Enter to confirm. To skip all prompts and use defaults:

ck migrate --all --yes

Done! Open your target tool

Your agents, rules, and config have been installed in the new tool's format. Open Cursor, Windsurf, or your chosen tool — the content will be ready.

How Migration Works

Step 1

Discovery

Walks your entire .claude/ directory to collect agents, commands, skills, rules, hooks, and config — building a complete inventory before touching anything.

Step 2

Provider Selection

Detects which tools are installed on your machine. You can override this with --agent <name> or migrate to all at once with --all.

Step 3

Reconciliation

Uses checksums to compare what you have vs what's already at the destination. Creates a plan: which files to install, update, skip, or remove — with no guessing.

Step 4

Execution

Converts content to each provider's format (e.g., .cursorrules, .windsurfrules), writes files to the correct locations, and merges hook configurations non-destructively.

Step 5

Summary

Prints a clear report of what was installed, skipped, or failed.

Supported Tools

Tool Agents Commands Skills Config Rules Hooks Flag
OpenCode --agent opencode
Cursor --agent cursor
Windsurf --agent windsurf
GitHub Copilot --agent github-copilot
Antigravity --agent antigravity
Cline --agent cline
Roo --agent roo
Codex --agent codex
Kilo --agent kilo
Kiro --agent kiro
Droid --agent droid
Goose --agent goose
OpenHands --agent openhands
Gemini CLI --agent gemini-cli
Amp --agent amp

Two Modes: Install vs Reconcile

ck migrate auto-detects the right mode based on registry state. You can also force one explicitly.

--install Install Picker

Interactively pick which agents/commands/skills/hooks to install. Default when registry is empty or has unknown checksums.

--reconcile Reconcile

Compute diff vs registry and apply only the changes (install/update/skip/delete). Default when registry is valid.

--reinstall-empty-dirs

Reinstall items when their type directory is empty/missing (default: true).

--respect-deletions

Preserve empty directories — skip the auto-reinstall heuristic when you intentionally deleted items.

Gotchas

  • --install and --reconcile are mutually exclusive — pass only one
  • --reinstall-empty-dirs and --respect-deletions are mutually exclusive
  • --force overrides skip decisions per item; --reinstall-empty-dirs is a per-directory heuristic

Conflict Resolution

When a target file has been modified externally, ck migrate will offer you a choice:

Overwrite
Replace target with source content entirely
Smart merge
Attempt to merge your changes with source
Skip
Keep existing file untouched
View diff
See differences before deciding

Auto-resolve: Add --yes to skip all conflict prompts and use safe defaults. Add --force to force-reinstall all items even if they were deleted or edited.

All Options Reference

Mode Options

--install Opt-in install picker — interactively select items
--reconcile Force reconcile mode (diff vs registry)
--reinstall-empty-dirs Reinstall items when type dir is empty (default: true)
--respect-deletions Preserve deletions — skip auto-reinstall heuristic

Target Options

-a, --agent <provider> Target tool (can be used multiple times)
--all Migrate to all supported providers
-g, --global Install globally (~/.claude/) instead of project-level
-y, --yes Skip all confirmation prompts
-f, --force Force reinstall deleted/edited items
--dry-run Preview plan without writing files

Content Selection

--only-agents Migrate agents only
--only-commands Migrate commands only
--only-skills Migrate skills only
--config Migrate CLAUDE.md config only
--rules Migrate .claude/rules/ only
--hooks Migrate .claude/hooks/ only
--skip-agents Skip agents migration
--skip-commands Skip commands migration
--skip-skills Skip skills migration (preserve symlinks/custom layouts)
--skip-config Skip config migration
--skip-rules Skip rules migration
--skip-hooks Skip hooks migration
--source <path> Custom CLAUDE.md source path