同时装了 Codex 和 Claude Code,baoyu-skills 到底该怎么更新?

type
status
date
slug
summary
tags
category
icon
password
wechat_gate
跨 AI Agent 生态下的 Skills 包管理实战,从混乱到统一。
今天想给 Claude Code 升级一下 baoyu-skills,顺手打开 Codex 才发现,两边的 skill 版本完全对不上。Claude Code 里已经是新的 --layout 系统,Codex 那份还停留在老版本。更麻烦的是,我当初在两边用了不同的安装方式,现在想统一管理,一时竟不知道从哪下手。
相信不少人都遇到过这种"多 agent 同名 skill 漂移"的问题。这篇文章把我踩过的坑和后来梳理出来的方案都讲清楚,供同样在用 Claude Code + Codex 的朋友参考。

背景:为什么 Skills 更新会变复杂

Agent Skills 是 Anthropic 在 2025 年底推出的开放标准,本质是一个带 SKILL.md 的文件夹——YAML frontmatter 描述 name 和 description,正文是给 AI 看的操作手册。这套标准现在已经被 Claude Code、Codex、Cursor、Copilot、Gemini CLI 等四十多个 agent 支持。
标准统一了,但分发渠道没统一。同一个 skill 仓库,可能通过以下任意一种方式装到你机器上:
  1. Claude Code 的 plugin marketplace(/plugin marketplace add)
  1. Vercel 出的 npx skills CLI(跨 agent)
  1. GitHub 的 gh skill 命令(2026 年新出的包管理器)
  1. ClawHub 按单个 skill 分发
  1. 手动 git clone 到 agent 的 skills 目录
每种方式写入的路径、记录元数据的方式、更新机制都不一样。所以"更新 baoyu-skills"这句话,必须先回答"当初是怎么装的"。
baoyu-skills 是 Jim Liu(宝玉)维护的一套 Claude Code 技能合集,包含小红书图片生成、文章封面、幻灯片、微信公众号自动发布等常用内容创作工具。仓库地址是 JimLiu/baoyu-skills,README 里官方推荐了三种安装入口,对应三种不同的更新方式。

第一步:先搞清楚安装方式

在两个工具里各跑一次下面的检查,从路径反推安装方式:
路径对应关系如下:
路径位置
安装方式
~/.claude/plugins/baoyu-skills/
Claude Code plugin marketplace
~/.claude/skills/baoyu-*/
npx skills 或手动 clone
~/.codex/skills/baoyu-*/
npx skills 或手动 clone
.agents/skills/baoyu-*/(项目根)
项目级安装,通常是 npx skills
如果路径下是一个 git 仓库(有 .git 目录),大概率是手动 clone;如果是普通目录且有 skill.lock 之类的锁文件,就是 npx skills 干的。

场景 1:用 npx skills 安装(最省心)

如果当初执行的是 npx skills add jimliu/baoyu-skills,恭喜,这是最干净的方式。Vercel 的这个 CLI 会在 skill.lock 里记录 GitHub tree SHA,更新时精确比对。
npx skills 会自动识别你机器上装了哪些 agent(通过扫描 ~/.claude/~/.codex/ 等目录),同步更新对应位置。这也是为什么它对多 agent 场景最友好——一条命令打通两端
一个容易踩的坑:如果当初用的是 symlink 模式(npx skills 默认行为之一),所有 agent 指向同一份 canonical copy,更新一次全生效;但如果当时选了 copy 模式,每个 agent 有独立副本,就得保证更新能覆盖所有位置。查看当前是哪种模式:

场景 2:Claude Code Plugin Marketplace 安装

如果在 Claude Code 里执行过 /plugin marketplace add JimLiu/baoyu-skills/plugin install,走的是 Claude Code 原生插件系统。更新在交互界面里完成:
或者进 /plugin 管理界面,找到 baoyu-skills,勾选 Enable auto-update,以后每次启动自动拉取。
这种方式有个关键限制:只管 Claude Code 侧。Codex 不支持 Claude Code 的 plugin marketplace 协议,所以 Codex 那份必须单独处理——要么走 npx skills,要么手动 clone。

场景 3:手动 git clone(Codex 侧常见)

Codex 本身没有官方 marketplace($skill-installer 只是一个脚本工具,不做版本管理),所以很多人把 baoyu-skills 直接 clone 到 ~/.codex/skills/。更新就是标准 git 操作:
关键提醒:Codex 只在启动时扫描一次 skill metadata,更新完必须重启 Codex 会话,否则新版本不会被加载。Claude Code 也一样,不过它在大多数情况下会自动感知变化。

场景 4:用 gh skill 做现代包管理(2026 年新方案)

如果你希望未来跨多个 agent 长期维护 skills,推荐直接切到 gh skill。这是 GitHub 在 2026 年推出的 skill 包管理器,语义上很像 npm——有 install、pin、preview、update、publish 这些一级命令,并且原生支持 Claude Code、Codex、Copilot、Cursor、Gemini CLI 等。
gh skill 最大的优势是版本可追溯——安装时会把 tree SHA 写进 SKILL.md,更新时精确比对,这也是它能安全覆盖的基础。对于要在团队里分发自建 skill 的场景,它还提供 gh skill publish 发布到私有 registry。

推荐方案:统一到一个通道

四种方式并存会导致两个问题:一是两端版本漂移,二是排错时要先搞清楚走的哪条路径。如果你和我一样同时用 Claude Code + Codex,强烈建议选一个工具统一管理
我的选择是 npx skills,原因是:
  1. 跨 agent 原生支持,a claude-code -a codex 一次搞定两端
  1. 不需要额外装工具,npx 随手可用
  1. baoyu-skills 官方 README 里就是这个方式,遇到问题好排查
迁移步骤如下:
如果你只用 baoyu-skills 里的某几个 skill(比如只用 baoyu-xhs-imagesbaoyu-post-to-wechat),可以指定安装,避免整包污染上下文:

验证更新成功

两个路径可以确认:
在 Claude Code 交互界面里,直接打 /skills 也能看到当前加载的所有 skill 和来源。
如果发现 skill 装上了但在对话里不触发,99% 是 description 字段写的触发关键词没命中——这时候读一下对应 SKILL.md 的 frontmatter,看看 description 里有没有你实际在用的关键词,必要时自己改一下(改完记得重启会话)。

几个容易踩的坑

坑 1:混合安装方式导致的幽灵更新
当初在 Claude Code 走 marketplace 装,后来又在同一台机器跑 npx skills add,两份文件都存在。Claude Code 加载哪一份取决于目录扫描顺序,更新时两边都得维护,否则行为诡异。解决方案就是前面说的:清空重装,统一通道。
坑 2:Codex 不重启不生效
Codex 启动时读一次 skill metadata,之后不再重新扫描。更新 SKILL.md 后如果没重启,Codex 还是用的旧描述,哪怕文件已经改了。习惯性在更新后 Ctrl+C 退出再重开。
坑 3:symlink 在 Windows/WSL 下的怪异行为
npx skills 默认用 symlink 模式在 Unix 系统上工作得很好,但在 Windows 原生或 WSL 跨文件系统场景下可能出现 permission denied。这时候手动指定 --copy 模式:
坑 4:skill 里的 npm 依赖没同步更新
baoyu-skills 里部分 skill(比如 baoyu-post-to-wechat)依赖本地的 Node.js 运行环境和 bun。更新了 skill 文件,但如果某个 skill 的脚本换了新依赖,第一次运行可能会报错。解决办法:看 CHANGELOG,如果有 scripts/ 下的变更,手动跑一次 cd ~/.claude/skills/baoyu-xxx && bun install(或者让 Claude 自动处理)。

反思:AI 工具生态的"前 npm 时代"

折腾这一圈下来,我的感受是:AI Agent Skills 现在正处于 JavaScript 生态 2010 年左右的阶段——标准在形成,包管理器在混战,多个工具各自写一套约定,开发者要同时应对三四种安装方式。
这是早期生态的必然阶段。前端从 Bower 到 npm 再到 pnpm 用了差不多十年,后端 Python 从 easy_install 到 pip 再到 uv 也走了类似的路。好消息是,gh skillnpx skills 这类工具正在快速收敛出统一接口,大概率一两年内会有明确的赢家。
在赢家出现之前,对个人开发者最实用的策略是:选一个、坚持用,别混搭。混搭会把你的时间消耗在"今天这个 skill 是从哪装的"这种元问题上,而不是真正解决业务。
从今天起,如果你在用多个 AI coding agent,花十分钟把 skills 通道统一掉。这件事做一次受益很久。

参考资源


 
2026.04.24 10:18 沪 · 赵巷
📌 声明:本文由 AI 辅助完成