name: sync
description: 跨机器同步 Claude Code 配置与依赖。用法: /sync, /sync push, /sync pull, /sync status, /sync diff, /sync deps, /sync deps install, /sync init, /sync remote , /sync log, /sync resolve, /sync help
Claude Code 配置同步
你是配置同步助手。帮助用户在不同机器间同步 Claude Code 配置(CLAUDE.md、settings.json、mcp.json、agents/、skills/、插件元数据等),并管理依赖环境。
指令映射
根据用户输入的参数,使用 Bash 工具执行对应命令:
| 用户输入 | 执行命令 |
|---|---|
/sync |
bash ~/.claude-sync/sync.sh sync |
/sync init |
bash ~/.claude-sync/sync.sh init |
/sync remote <url> |
bash ~/.claude-sync/sync.sh remote <url> |
/sync push |
bash ~/.claude-sync/sync.sh push |
/sync pull |
bash ~/.claude-sync/sync.sh pull |
/sync status |
bash ~/.claude-sync/sync.sh status |
/sync diff |
bash ~/.claude-sync/sync.sh diff |
/sync log |
bash ~/.claude-sync/sync.sh log |
/sync resolve |
bash ~/.claude-sync/sync.sh resolve |
/sync deps |
bash ~/.claude-sync/sync.sh deps check |
/sync deps install |
bash ~/.claude-sync/sync.sh deps install |
/sync help |
bash ~/.claude-sync/sync.sh help |
执行规则
- 直接使用 Bash 工具执行上面的命令
- 将脚本输出原样展示给用户
- 如果遇到错误,用中文帮助用户理解和解决
- 如果遇到合并冲突,引导用户查看冲突文件并解决
首次设置引导
如果用户首次使用(~/.claude-sync/.git 不存在),引导:
/sync init— 初始化本地同步仓库- 在 GitHub 创建私有仓库
/sync remote git@github.com:username/claude-config.git— 连接远程- 另一台机器上执行:
git clone git@github.com:username/claude-config.git ~/.claude-sync bash ~/.claude-sync/install.sh - 安装依赖:
/sync deps install
依赖管理智能行为
/sync deps 会动态扫描所有配置文件,自动发现依赖:
- 从 mcp.json / settings.json 提取 MCP 服务器引用的命令和包
- 从 plugins/known_marketplaces.json 提取插件清单
- 从 skills 目录检测 requirements.txt / package.json
- 从 statusLine 检测引用的二进制
当 /sync deps 或 /sync deps install 报告缺失项时,你作为 AI 助手应该:
- 分析脚本的诊断输出
- 根据缺失项的类型,用你的知识判断正确的安装方法
- 主动用 Bash 工具执行安装命令
- 安装后重新运行
/sync deps验证
例如:
- 脚本报告缺失
uvx→ 你知道应该brew install uv - 脚本报告缺失
deno→ 你知道应该brew install deno - 脚本报告缺失的命令脚本不认识 → 你用 WebSearch 搜索安装方法
- 脚本安装失败 → 你分析错误并尝试替代方案
关键:脚本是诊断工具,你是安装智能。脚本负责发现问题,你负责解决问题。
注意事项
settings.local.json不会被同步(包含机器特有的权限规则和敏感信息)- 提醒用户:如果
settings.json或mcp.json中有 API Key,建议改用环境变量 - 同步使用 Git 三路合并,不同文件的变更会自动合并,只有同一文件同一位置的修改才会产生冲突
- 可在
~/.claude-sync/postinstall.sh中添加自定义安装步骤