Agent Sync 是一个强大的命令行终端界面 (TUI) 工具,旨在为各种 AI Agent(如 OpenClaw, QClaw, Workbuddy, Trae, Claude Code 等)提供统一的技能配置和记忆管理体验。
它能够自动扫描你的各类 Agent 工作区,提取并帮助你轻松编辑第三方技能的配置文件,同时还提供了安全可靠的配置与记忆备份、恢复功能。
- 真正的终端交互界面 (TUI):基于 Python
curses构建,告别繁琐的命令行参数,支持全键盘(上下方向键)可视化选择操作。 - 原生多行编辑器支持:无缝挂载系统内置编辑器(默认优先唤起友好的
nano,并支持回退到vim),让修改多行配置文件如行云流水,修改完毕自动切回 TUI。 - 智能依赖与配置发现:能自动扫描各种 Agent 的技能目录(如
~/.agents/skills),准确识别config.json,.env,*.yaml甚至各种example模板文件,自动为你映射真实路径并创建配置。 - 大模型 (LLM) 语义解析辅助:遇到没有标准配置文件的复杂技能时,可调用大模型(兼容 OpenAI 格式 API,如 DeepSeek)智能阅读
skill.md,精准推导出所需配置结构并自动生成模板。 - 全方位备份与恢复:支持对 OpenClaw, QClaw, Workbuddy 的系统级核心设定(如
BOOTSTRAP.md,IDENTITY.md)及长短期记忆(sessions对话记录、灵感卡片)进行一键 Zip 备份与精准无损恢复。恢复时智能识别冲突并支持高亮展示文件差异(Diff)。
在多 Agent 协同和海量第三方 Skill 并存的环境下,用户往往面临以下痛点:
- 配置散落各处,层级深且隐蔽,难以统一管理。
- 缺乏标准化,有的需要改环境变量,有的需要改 JSON,还有的只有 example 模板。
- 宝贵的长篇对话历史与 Agent 记忆经常因环境迁移或重置而丢失。
Agent Sync 作为“配置的管家”,打破了 Agent 间的壁垒,提供了一站式的“扫描 -> 解析 -> 编辑 -> 备份 -> 恢复”流水线,极大地降低了 AI 玩家运维底层组件的心智负担。
- 首次安装第三方技能:刚下载了一个需要提供 API Key 的技能,直接打开 Agent Sync,选中该技能,即可在弹出的 nano 编辑器里填入 Key,一气呵成。
- 多终端环境迁移:在公司电脑调教好的 Workbuddy 或 OpenClaw,想平移到家里?用本工具一键导出 Zip,回家后一键导入,甚至能保留昨天的聊天记录和身份认知(IDENTITY.md)。
- 安全覆盖与回滚:当你想要更新系统级 Prompt 或技能配置时,利用导入时的
Diff 对比功能,清晰看到哪些参数发生了变化,安全决定是否覆盖。
- 扫描与呈现:启动时,工具会扫描预定义的多个工作目录(
~/.workbuddy/skills,~/.openclaw等),过滤掉无配置文件的纯逻辑技能,仅将需要你干预的配置项展现在 TUI 列表中。 - 文件干预:当你选中某个技能时,程序会释放终端控制权,唤起
nano或vim,在编辑完成后捕获你的保存动作,甚至遇到权限不足(如 Root 拥有)时会贴心地给出提权sudo命令。 - 打包逻辑:在备份 OpenClaw/Workbuddy 时,程序会精准过滤排除庞大的依赖代码(如
node_modules或__pycache__),只抽取核心的.md,.json, 记忆文件和系统变量配置,保证备份包轻量且纯粹。
本项目采用标准 Python 模块结构,可直接全局安装。要求 Python >= 3.6。
# 在项目根目录下执行:
pip install -e .安装后,你在任何目录下都可以直接输入命令启动 TUI:
agent-sync或者不安装,直接运行:
python3 main.py- 浏览与编辑 Skill 配置:进入全屏列表,上下键选择目标,回车进入
nano编辑。 - 配置大模型 (LLM):配置你的 OpenAI 或 DeepSeek API Key,用于辅助解析复杂的
skill.md。 - Agent 数据备份与恢复:一键打包你的 OpenClaw, QClaw 或 Workbuddy 的设定与对话记忆。
Q1:为什么我按 Enter 编辑配置时,提示 Unknown Command 或终端错乱?
A:请确保你使用的是最新版本代码。我们已经重构了终端 TTY 的劫持逻辑,并在退出编辑器时强制刷新了缓冲区,完美兼容了 curses 与 nano/vim 的控制权交接。
Q2:导入备份时,遇到冲突怎么办?
A:如果遇到冲突,系统会暂停并询问你:[o]覆盖 [d]对比差异 [s]跳过 [a]全部覆盖 [q]中止。你可以输入 d,系统会像 git diff 一样用红绿颜色高亮展示两者的内容差异,方便你做决策(支持 .md, .json, .yaml, .txt, .env 等纯文本配置)。
Q3:我的技能目录里只有 config.example.json,没有真实的配置怎么办?
A:不用担心,工具在扫描时会自动识别 example。当你按下 Enter 时,它会自动剥离 example 字眼,帮你复制一份真正的 config.json 并打开供你编辑。
Q4:为什么备份文件里没有我的技能源码?
A:为了保持备份包的轻量,工具在导出 skills/ 目录时启用了严格过滤逻辑,只会将诸如 .env, .json, .yaml, .txt 等明确的配置文件打包,防止将几百 MB 的运行依赖一并带出。