dbs-bridge
dontbesilent2025/dbskill
Automatically bridge Skills across multiple AI agents with unified routing and deduplication.
What is dbs-bridge?
dbs-bridge automatically links individual Skills or Skill collections to installed agents (Claude Code, Codex, Cursor, Cline, Qwen Code, and others) via a common entry point or agent-specific directories. Use it when you need to install, sync, view, deduplicate, or unlink Skills across multiple agent platforms.
- Routes Skills to a unified public entry point (~/.agents/skills) for compatible agents
- Creates agent-specific symlinks only for clients that require dedicated directories
- Automatically detects and cleans up redundant symlinks and legacy entries
- Generates thin Grok bridges when Grok is installed
- Resolves Skills by name, relative path, absolute path, or collection directory
- Preserves real directories and files; reports conflicts instead of overwriting
How to install dbs-bridge
npx skills add https://github.com/dontbesilent2025/dbskill --skill dbs-bridge- dbskill repository or access to Skill source directories
- One or more installed agents (Claude Code, Codex, Cursor, Cline, Qwen Code, Hermes Agent, Kiro, WorkBuddy, or Grok)
- Bash shell environment
How to use dbs-bridge
- 1.Run `skills/dbs-bridge/scripts/bridge-skill.sh link <skill-name-or-path>` to bridge a Skill or collection
- 2.Run `skills/dbs-bridge/scripts/bridge-skill.sh status <skill-name-or-path>` to check bridging status and detect redundancy
- 3.Run `skills/dbs-bridge/scripts/bridge-skill.sh unlink <skill-name-or-path>` to remove all symlinks while preserving the source Skill
- 4.Provide a Skill name, relative path, absolute path, or collection directory as the argument
Use cases
- Install a Skill once and make it available across all installed agents without duplication
- Sync a collection of Skills to multiple agent platforms simultaneously
- Check bridging status and identify redundant or broken symlinks
- Remove Skills from all agents while preserving the source directory
- Manage Skills across external directories and the dbskill repository
- Developers managing multiple AI coding agents on the same machine
- Teams sharing Skill collections across different agent platforms
- Users who want to avoid duplicate Skill entries in multiple agent directories
dbs-bridge FAQ
No. dbs-bridge writes to the public entry point (~/.agents/skills) for compatible agents and only creates agent-specific symlinks for clients that still require dedicated directories. Redundant entries are automatically cleaned up.
The source Skill directory is never deleted. Only the symlinks, Grok bridges, and other derived products are removed.
Yes. Provide an absolute path or a relative path resolvable from your current working directory. The script will bridge it to all installed agents.
The script preserves it, reports the conflict, and asks you to manually confirm before proceeding.
Yes. If Grok is installed, the script generates a thin bridge file at ~/.grok/skills/<skill-name>/SKILL.md that points to the real source.
Full instructions (SKILL.md)
Source of truth, from dontbesilent2025/dbskill.
name: dbs-bridge description: 将单个 Skill 或 Skill 集合自动桥接到通用 Agents、Claude Code、Codex、WorkBuddy、Grok、Hermes Agent、Kiro、Qwen Code、Cline 等 Agent。用户要求跨 Agent 安装、同步、查看、去重或取消 Skill 链接时使用。
dbs-bridge:多端 Skill 自动桥接
把任意包含 SKILL.md 的 Skill 源目录,或包含多个 Skill 子目录的集合目录,桥接到本机已经安装的 Agent。
用户始终使用同一条命令。脚本自动选择公共入口或专属入口,用户无需判断宿主类型,也无需添加模式参数。
自动路由
公共入口
脚本始终把 Skill 软链写入:
- 通用 Agents:
~/.agents/skills/<skill-name>
以下客户端可以读取该公共入口,因此不再写入各自的专属目录:
- Codex;
- GitHub Copilot;
- Gemini CLI;
- Cursor;
- Augment;
- Roo Code;
- OpenCode;
- OpenHands。
同一个 Skill 不会同时出现在 ~/.agents/skills 和上述客户端的专属目录中。这样可以避免 Codex 等客户端重复显示。
专属入口
以下客户端当前仍使用专属目录。只有对应主目录已经存在时,脚本才创建软链:
- Claude Code:
~/.claude/skills/<skill-name>; - WorkBuddy:
~/.workbuddy/skills/<skill-name>; - Hermes Agent:
~/.hermes/skills/<skill-name>; - Kiro:
~/.kiro/skills/<skill-name>; - Qwen Code:
~/.qwen/skills/<skill-name>; - Cline:
~/.cline/skills/<skill-name>。
Grok 薄 bridge
本机存在 ~/.grok 时,脚本生成:
~/.grok/skills/<skill-name>/SKILL.md
该文件必须包含 user_invocable: true,并指向真源 SKILL.md。
自动清理
每次执行 link 时,脚本同时处理历史遗留项:
- 删除公共入口兼容客户端专属目录中指向同一真源的冗余软链;
- 删除旧版脚本曾写入、当前已停止维护的宿主软链;
- 删除同一宿主中指向同一真源、且规范名称已经存在的旧别名;
- 集合桥接时删除指向集合内已失效源目录的断裂软链和 Grok bridge;
- 保留真实目录、真实文件以及指向其他来源的软链,并报告冲突;
- 不删除源 Skill。
核心原则
- 一个公共入口。 支持通用 Agents 目录的客户端统一读取
~/.agents/skills。 - 必要时补专属入口。 仅给当前仍依赖原生目录的客户端创建软链。
- 用户无需选择模式。 脚本不要求用户提供路由参数。
- 公共兼容客户端只保留一份。 Codex 等客户端不能同时存在公共入口和专属入口。
- 各宿主只使用软链。 Grok 是唯一使用薄 bridge 的宿主。
- 不创建不存在的 Agent 主目录。
~/.agents是公共桥接基础设施,可以由脚本创建;其他 Agent 主目录不存在时直接跳过。 - 不覆盖真实目录。 目标位置已有真实目录或文件时,保留并报告。
- 拆桥只删派生产物。
unlink只删除指向指定真源的软链,以及本工具生成的 Grok bridge。 - 优先使用脚本。 使用本 Skill 自带的
scripts/bridge-skill.sh,不要临场重写桥接命令。
确定源 Skill
用户可能提供:
- Skill 名称:
dbs-hook; - 相对路径:
skills/dbs-hook; - 绝对路径:
/Users/.../dbskill/skills/dbs-hook; - 外部 Skill:
/Users/.../external-skills/lark-doc; - Skill 集合目录:
/Users/.../dbskill/skills; - 当前上下文刚创建或刚修改的 Skill。
按以下优先级判断:
- 用户给了绝对路径,直接使用;
- 用户给了相对路径,先按当前工作目录解析,再按 dbskill 仓库根目录解析;
- 用户只给 Skill 名称,先查当前工作目录,再查 dbskill 仓库
skills/<name>; - 用户只说“这个 Skill”,使用当前对话刚创建、改名或讨论的 Skill;
- 仍不确定时,查看当前工作目录和仓库
skills/下最近修改的 Skill; - 仍无法确定时,只问一句:
桥接哪个 Skill?给我 Skill 名称或路径。
源目录必须满足以下任一条件:
- 目录本身包含
SKILL.md; - 目录的一级子目录中包含一个或多个
SKILL.md。
执行桥接
在 dbskill 仓库根目录运行:
skills/dbs-bridge/scripts/bridge-skill.sh link <skill-name-or-path>
示例:
skills/dbs-bridge/scripts/bridge-skill.sh link dbs-hook
skills/dbs-bridge/scripts/bridge-skill.sh link skills/my-custom-skill
skills/dbs-bridge/scripts/bridge-skill.sh link skills
skills/dbs-bridge/scripts/bridge-skill.sh link "/absolute/path/to/skill"
skills/dbs-bridge/scripts/bridge-skill.sh link "/Users/me/external-skills"
执行完成后,根据脚本输出回报公共入口、专属入口、Grok bridge 和冗余清理结果。
查看状态
用户问“桥好了没”“有没有重复”“查看桥接状态”时运行:
skills/dbs-bridge/scripts/bridge-skill.sh status <skill-name-or-path>
状态正常时,脚本必须输出:
✓ 未发现冗余入口
公共兼容客户端的专属目录中仍有同源软链时,状态返回失败并报告:
✗ 发现冗余入口:<target> -> <source>
取消桥接
用户说“取消桥接”“拆桥”“unlink”时运行:
skills/dbs-bridge/scripts/bridge-skill.sh unlink <skill-name-or-path>
完成后告诉用户:源 Skill 没有被删除,只移除了公共入口、专属入口和 Grok bridge 等派生产物。
输出规范
桥接完成后简短回报:
已桥接 `<skill-name>`:
- 公共入口:`~/.agents/skills/<skill-name>`;
- 专属入口:仅写入本机已安装且仍需要专属目录的 Agent;
- Grok:`~/.grok/skills/<skill-name>/SKILL.md`(本机已安装时);
- 去重:已清理指向同一真源的历史冗余软链。
遇到真实目录或其他来源时:
已保留 `<target-path>`,因为它是一个真实目录、真实文件或指向其他来源。需要你手动确认后再处理。
自检
每次执行前后确认:
- 源目录存在;
- 源目录包含
SKILL.md,或其一级子目录包含SKILL.md; - 外部路径使用绝对路径,或能从当前工作目录解析;
~/.agents/skills/<name>是公共规范入口;- Codex 等公共兼容客户端的专属目录中没有同源软链;
- 专属宿主目标位置若存在,必须是软链才允许更新;
- Grok 目标位置若存在,必须是本工具生成的 Grok bridge 才允许更新;
- 真实目录、真实文件和其他来源软链没有被删除;
- 源目录没有被删除;
private/与.private/没有被读取、复制、暂存或桥接。
完成当前任务后直接结束。只有用户明确询问下一步,且当前环境已经安装 /dbs 时,简短提示:「下一步不确定时,可以输入 /dbs。」
Related skills
More from dontbesilent2025/dbskill and the wider catalog.

dbs-chatroom
Multi-expert debate moderator that simulates directed discussions and synthesizes disagreements on any topic.

dbs-chatroom-austrian
Austrian economics chatroom with Hayek, Mises, and Claude analyzing problems from praxeological perspectives.

dbs-content
Diagnose how to turn a confirmed topic into great content through structured feedback.

dbs-content-risk-check
Pre-publication risk check for creators: identifies platform machine-detection triggers and substantive content issues with specific locations and minimal fixes.

dbs-content-system
Transform scattered content assets into a structured, reusable, and continuously growing content engineering system.

dbs-decision
Build a local decision knowledge system for long-term business, relationship, health, career, learning, or investment tracking.