用于跟踪、提交、比较或回滚 OpenClaw 配置更改。当用户提及“提交配置”、“保存此版本”等时触发。
OpenClaw Git 管理器是一项面向实际任务的技能,主要用于OpenClaw 配置文件的Version 控制器 —— 与 diff 执行, 比较历史, 滚回到任何以前的版本;Core Place.;
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
OpenClaw 配置文件的版本控制 — 支持带差异比对的提交、历史版本对比、回滚至任意先前版本。
任何未通过 Git 记录的配置变更,都是一次潜在的数据丢失事件。 本技能将 OpenClaw 配置管理从“希望一切不出问题”转变为“我总能回退”。
所追踪的内容:
~/.openclaw/openclaw.json — 主配置文件~/.openclaw/credentials/*.json — 凭据配置文件~/.openclaw/agents/ — Agent 定义~/.openclaw/flows/ — Flow 定义~/.openclaw/skills/ — 自定义技能配置不追踪的内容: memory/、logs/、media/、tmp/、trash/、canvas/、npm/、completions/、service-env/、tasks/、.DS_Store。
首次使用时,若 ~/.openclaw/ 下尚无 Git 仓库,该技能将自动初始化一个 Git 仓库,并配置合理的 .gitignore 文件,以排除运行时数据。
/openclaw-git-manager commit暂存并提交当前配置状态,并附上可读性良好的提交信息。
适用于以下场景:
doctor 或 config 后且状态发生变更执行步骤:
git status)config:禁止操作:
/openclaw-git-manager log展示提交历史,包含单行摘要与差异概览。
适用于以下场景:
执行步骤:
git log --oneline -20 展示最近 20 条提交git show --stat (变更文件列表) + git show (补丁内容)禁止操作:
/openclaw-git-manager diff精确展示两次提交之间,或工作树与 HEAD 之间的差异。
适用于以下场景:
执行步骤:
--from --to :展示两个提交之间的差异禁止操作:
/openclaw-git-manager restore回滚至某历史提交,或恢复特定文件。
适用于以下场景:
log 找到一个稳定可用的提交,并希望恢复至该版本执行步骤:
log 中的编号):将整个工作树恢复至该提交config: restore to () 恢复模式:
git checkout -- . (所有受追踪文件)git checkout -- path/to/file git reset --hard —— 仅当用户明确说出“hard reset”时才执行禁止操作:
/openclaw-git-manager status展示当前工作树状态。
适用于以下场景:
执行步骤:
git status --short 获取简洁视图禁止操作:
diff 命令)主入口始终为 scripts/git_manager.py,从 ~/.openclaw/ 目录调用。
# 在 ~/.openclaw/ 目录下执行 python3 ~/.openclaw/workspace/skills/openclaw-git-manager/scripts/git_manager.py[args] # 支持命令:commit、log、diff、restore、status
脚本根据已安装技能目录解析自身位置,而非当前工作目录。
| 文件 | 路径 | 说明 |
|---|---|---|
| 主配置 | ~/.openclaw/openclaw.json |
主要受追踪文件 |
| 凭据 | ~/.openclaw/credentials/*.json |
含真实密钥 — 绝不暴露原始内容 |
| Agents | ~/.openclaw/agents/ |
Agent 定义 |
| Flows | ~/.openclaw/flows/ |
Flow 定义 |
| 自定义技能 | ~/.openclaw/workspace/skills/ |
自定义技能配置 |
以下路径均被排除在追踪范围之外:
# 运行时数据(排除) memory/ logs/ media/ tmp/ trash/ canvas/ npm/ completions/ service-env/ tasks/ .DS_Store # Node.js / npm node_modules/ package-lock.json # 编辑器 *.swp *.swo .vscode/ .idea/ # OpenClaw 内部文件(非用户配置) cron/ devices/ exec-approvals.json update-check.json skills-trigger-index.json subagents/ delivery-queue/
git push — 本仓库仅为本地记录,不作为共享仓库.git/ 目录 — 始终通过标准 Git 命令操作memory/ 或 logs/ — 这些属于运行时数据,而非配置一条优秀的提交信息应能让未来的阅读者快速回答:
示例提交信息:
config: enable minimax TTS in production profileconfig: add claude-sonnet model to local provider listconfig: rollback agent definitions to pre-migration stateconfig: updateconfig changesstuff| 优质 | 劣质 |
|---|---|
config: enable minimax TTS in production profile |
config update |
config: add claude-sonnet to model list |
model change |
config: restore openclaw.json to pre-wizard state |
restore |
config: migrate agent definitions to new format |
migration |
config: disable noisy plugin auto-update |
changed settings |
commit a1b2c3d 2 小时前 config: enable minimax TTS commit b2c3d4e 昨天 config: add claude-sonnet to providers commit c3d4e5f 3 天前 config: initial checkpoint
每次执行 restore 命令后,输出必须包含以下四项:
Files restored — 已恢复的文件列表New HEAD — 当前工作树指向的新提交哈希值Previous state — 上一提交哈希值(供后续撤销使用)Next action — 用户下一步建议操作(例如:“重启 gateway”)本技能解决一个明确问题:配置变更缺乏可见性与可逆性。
它不替代备份方案、云同步或团队协作工作流。