QUOTE
工具可以换,Skill 不该跟着散。
—— 格物致知札记
最近半年,我的编程工具箱一直在“换岗“。Cursor 写业务代码顺手,Claude Code 查日志和重构更稳,Codex 处理大文件批改效率高,新出的工具又总忍不住想尝鲜。多 Agent 并行,本来是为了不把鸡蛋放在一个篮子里。
但有个东西一直没跟上——Skill。

碎片化:同一份 Skill 散落在多个 Agent 目录
一、碎片化,是从”多开“开始的
在 Codex 里调好的一个周报 Skill,切到 Claude Code 还是旧的;Cursor 目录下甚至躺着一份同名、但内容迥异的副本。一开始手动复制还能忍,时间一长就乱了:哪份才是最新?该用谁覆盖谁?每接一个新工具,又要重复搬一遍。
这种”碎片化“最磨人的,不是效率低,而是在反复确认里被悄悄消耗的心力。
二、现成方案,都只解决了一半
社区不是没解法。我试了一圈,结论是:它们要么解决了”存”,没解决“自动分发“;要么解决了”共享”,没解决“多目录实时同步与冲突感知“。
Git submodule / Monorepo:改个 prompt 还要 commit/push/pull,对日常 Coding 太重;
Syncthing 这类同步工具:只懂文件,不懂 Skill 语义,双向改极易覆盖;
LangSmith 等 Prompt 平台:给 LLM 应用开发设计的,根本不管本地 Agent 的配置文件。
当几个 Agent 同时开着,我要的其实很简单:改一处全部生效,随时知道哪份最新。这个”最后一公里“的闭环,现成轮子补不上。
三、我的解法:一个中心仓库,按需分发
于是我认准一条原则——Skill 必须收敛到一个中心仓库,再按需分发给各个 Agent。
1. 只维护一份中心仓库,统一存 Skill 和同步状态;
2. 默认用软链接让各 Agent 目录指向中心仓库——改一处,全部生效(环境不支持软链就切复制模式,由 CLI 同步);
3. 同步状态随时可查:远端有没有更新、本地有没有改动、有没有冲突,一眼就知道下一步干嘛。

一个中心仓库,软链接分发到所有 Agent
四、两种模式,从轻到重
它提供两种模式,按需选:
Local mode
本地中心仓库 + 软链接/复制,零服务依赖。适合只想先把本机多个 Agent 的 Skill 统一起来的人。会自动发现 Codex、Claude、Cursor、Kiro、Lingma 等目录,也能手动加。
Registry mode
把 Skill 放进远端 Registry,带可视化、版本治理、跨设备同步。适合 Skill 多到要迭代、或团队共用的场景。
我的建议:先从 Local mode 用起,本机收拢;等需要跨设备、团队协作或版本治理,再切 Registry mode,不用重新整理。

Local(本机)与 Registry(远端)两种模式
五、快速上手:两条路,挑一条走
路一:让 Agent 自己干(推荐)
官方给了一份标准 SKILL.md,把 nacos-skill-sync 的规范和交互流程都写清楚了。你只要给任意 Agent(Cursor、Claude Code、Codex 都行)发一句话,它就会自己读这份 Skill、检查本机环境、执行同步;遇到要选模式、有内容冲突这类需要你拍板的地方,它会主动停下来问你。
阅读下面的 Skill,使用它来同步我本地的 Skill:https://nacos.io/skill-sync/SKILL.md
路二:自己敲 CLI
想完全自己控流程,就用命令行。先装 CLI(二选一):
# 方式 A:官方安装脚本
curl -fsSL https://nacos.io/nacos-installer.sh | bash -s -- --cli
# 方式 B:不想装,直接 npx 跑
npx @nacos-group/cli@latest skill-sync --help
Registry mode(跨设备 / 团队协作)
先建一个 profile,再 add / start / status:
npx @nacos-group/cli@latest profile edit test
npx @nacos-group/cli@latest --profile test skill-sync add pdf
npx @nacos-group/cli@latest --profile test skill-sync start
npx @nacos-group/cli@latest --profile test skill-sync status
Local mode(单机轻量,不用 profile)
npx @nacos-group/cli skill-sync add pdf
npx @nacos-group/cli skill-sync start
npx @nacos-group/cli skill-sync status
add 后面那个 pdf 只是举例(比如你有个处理 PDF 的 Skill),换成你自己的 Skill 名就行。add 会扫一遍各 Agent 目录里的同名内容,有差异就让你选以哪份为准;想批量收编,加 --all 先扫描全部已有 Skill,确认范围后再统一。
六、两个我亲历的场景
个人:工作记录 & 周报
以前每天在多个 Agent 里干活,记录散在不同对话,周五整理周报像考古。现在把它沉淀成一个 Skill 放 Local mode 共用:任务结束记结果,同主题合并,生成周报保留进展和风险。最关键是——这不是复制一次就完:在 Codex 里改了周报字段,Claude 和 Cursor 看到的也是更新后的。
团队:文档统一格式
接口文档、技术方案、故障复盘由不同人、不同设备生成,格式各写各的。这类规范适合放 Registry mode,统一入口 + 版本记录,公司电脑、家里电脑、新设备同步后都用同一套。
七、日常维护,只看一个命令
用起来后,日常只看 skill-sync status:每个 Skill 的状态、覆盖哪些 Agent、下一步干嘛,一目了然。
Synced:一切正常,不用管;
Local changes:本地有改动,可自动上传或保留;
Conflict:本地和远端都改了,需要你选一个版本(默认保守,不擅自替你做选择)。

一个 status 命令,看清每个 Skill 的状态
八、让 Skill 有一份可信来源
多 Agent 并行会越来越常见。真正要管理的,不只是”用哪个 Agent”,而是这些 Agent 共同依赖的 Skill。
更理想的状态,是让 Skill 有一份可信来源。Agent 可以换,Skill 不该跟着散。
夜雨聆风