关于 sync-dotfiles
用于在 ai-env 仓库与主目录之间同步 dotfiles 的技能。它将检查差异、收集本地更改、部署仓库配置和安装技能等请求对应到 `sync.sh` 子命令;同步方向不明确时会先显示差异。
主要功能
- 01比较仓库与主目录文件
- 02显示受跟踪文件清单
- 03将本地更改拉入仓库
- 04将仓库配置推送到主目录
- 05从锁定文件安装技能
适用场景
- 01检查配置差异
- 02将本地配置修改保存到仓库
- 03在设备上部署仓库配置
- 04从锁定文件安装全局技能
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ camacho/ ai-skills --skill sync-dotfiles安装后在 Claude Code 中输入/sync-dotfiles确认已加载。
附带文件sync.sh
详细介绍
何时调用
- 用户说“同步 dotfiles”“拉取配置”“推送配置”“检查差异”
- 修改权限或钩子后的会话结束时
- 克隆 ai-env 后在新机器上
子命令
将用户意图映射到 sync.sh 子命令:
| 意图 | 命令 | 功能 |
|---|---|---|
| “检查有哪些差异” | sync.sh diff | 显示仓库与主目录之间的差异 |
| “查看跟踪了哪些内容” | sync.sh status | 显示文件注册表 |
| “保存我的本地更改” | sync.sh pull | 主目录 → 仓库(以主目录为准) |
| “部署仓库配置” | sync.sh push | 仓库 → 主目录(以仓库为准) |
| “安装技能” | sync.sh skills-push | 从 dotfiles/skills-lock.json 安装全局技能 |
| “同步”(含义不明确) | 先显示差异,再询问同步方向 | 安全默认选项 |
运行 sync.sh
同步脚本与此技能打包在一起,路径为 sync.sh(与此 SKILL.md 位于同一目录)。
直接运行即可——脚本会自动查找 ai-env 仓库:
/path/to/skill/sync.sh <subcommand>
脚本会通过以下发现流程自动设置 AI_ENV_ROOT。如需覆盖:
AI_ENV_ROOT=/custom/path/to/ai-env /path/to/skill/sync.sh push
AI_ENV_ROOT 发现流程
脚本会自动查找 ai-env 仓库(即 dotfiles/ 所在位置):
- 如果已设置
$AI_ENV_ROOT且$AI_ENV_ROOT/dotfiles存在:使用该路径 - 如果脚本位于 ai-env git 仓库内(例如从符号链接运行):使用该仓库根目录
- 如果
~/projects/camacho/ai-env存在:使用该路径 - 通过 GitHub 将
camacho/ai-env克隆到临时目录 - 如果克隆失败:报错并说明如何设置
AI_ENV_ROOT
pull 后
显示 git diff dotfiles/,并询问是否提交:chore: sync dotfiles
push 后
运行 sync.sh status 以确认,并针对缺失文件发出警告。
评论
支持 Markdown