npx skills add ...
npx skills add dontbesilent2025/dbskill --skill dbs-bridge
将单个 Skill 或 Skill 集合自动桥接到通用 Agents、Claude Code、Codex、WorkBuddy、Grok、Hermes Agent、Kiro、Qwen Code、Cline 等 Agent。用户要求跨 Agent 安装、同步、查看、去重或取消 Skill 链接时使用。
npx skills add dontbesilent2025/dbskill --skill dbs-bridge
把任意包含 SKILL.md 的 Skill 源目录,或包含多个 Skill 子目录的集合目录,桥接到本机已经安装的 Agent。
用户始终使用同一条命令。脚本自动选择公共入口或专属入口,用户无需判断宿主类型,也无需添加模式参数。
脚本始终把 Skill 软链写入:
~/.agents/skills/<skill-name>以下客户端可以读取该公共入口,因此不再写入各自的专属目录:
同一个 Skill 不会同时出现在 ~/.agents/skills 和上述客户端的专属目录中。这样可以避免 Codex 等客户端重复显示。
以下客户端当前仍使用专属目录。只有对应主目录已经存在时,脚本才创建软链:
~/.claude/skills/<skill-name>;~/.workbuddy/skills/<skill-name>;~/.hermes/skills/<skill-name>;~/.kiro/skills/<skill-name>;~/.qwen/skills/<skill-name>;~/.cline/skills/<skill-name>。本机存在 ~/.grok 时,脚本生成:
~/.grok/skills/<skill-name>/SKILL.md该文件必须包含 user_invocable: true,并指向真源 SKILL.md。
每次执行 link 时,脚本同时处理历史遗留项:
~/.agents/skills。~/.agents 是公共桥接基础设施,可以由脚本创建;其他 Agent 主目录不存在时直接跳过。unlink 只删除指向指定真源的软链,以及本工具生成的 Grok bridge。scripts/bridge-skill.sh,不要临场重写桥接命令。用户可能提供:
dbs-hook;skills/dbs-hook;/Users/.../dbskill/skills/dbs-hook;/Users/.../external-skills/lark-doc;/Users/.../dbskill/skills;按以下优先级判断:
skills/<name>;skills/ 下最近修改的 Skill;桥接哪个 Skill?给我 Skill 名称或路径。源目录必须满足以下任一条件:
SKILL.md;SKILL.md。在 dbskill 仓库根目录运行:
示例:
执行完成后,根据脚本输出回报公共入口、专属入口、Grok bridge 和冗余清理结果。
用户问“桥好了没”“有没有重复”“查看桥接状态”时运行:
状态正常时,脚本必须输出:
公共兼容客户端的专属目录中仍有同源软链时,状态返回失败并报告:
用户说“取消桥接”“拆桥”“unlink”时运行:
完成后告诉用户:源 Skill 没有被删除,只移除了公共入口、专属入口和 Grok bridge 等派生产物。
桥接完成后简短回报:
遇到真实目录或其他来源时:
每次执行前后确认:
SKILL.md,或其一级子目录包含 SKILL.md;~/.agents/skills/<name> 是公共规范入口;private/ 与 .private/ 没有被读取、复制、暂存或桥接。完成当前任务后直接结束。只有用户明确询问下一步,且当前环境已经安装 /dbs 时,简短提示:「下一步不确定时,可以输入 /dbs。」
skills/dbs-bridge/scripts/bridge-skill.sh status <skill-name-or-path>✓ 未发现冗余入口✗ 发现冗余入口:<target> -> <source>skills/dbs-bridge/scripts/bridge-skill.sh unlink <skill-name-or-path>已桥接 `<skill-name>`:
- 公共入口:`~/.agents/skills/<skill-name>`;
- 专属入口:仅写入本机已安装且仍需要专属目录的 Agent;
- Grok:`~/.grok/skills/<skill-name>/SKILL.md`(本机已安装时);
- 去重:已清理指向同一真源的历史冗余软链。已保留 `<target-path>`,因为它是一个真实目录、真实文件或指向其他来源。需要你手动确认后再处理。