📌 项目地址JimLiu/baoyu-skills | ⭐ 19,844 颗星 | 🔧 TypeScript | 📜 未标注

一个被忽略的性能杀手:技能膨胀

我用Claude Code写代码,初期只装了1个技能包,响应速度能接受。后来陆续加到8个,问题来了:启动从2秒涨到7秒,回答开始忽略我指定的参数,“忘了之前的指令”这种状况越来越多。

查了一圈,原因很直接:大多数技能包是整体打包的。你装了一个包,里面20个技能的描述、例子、规则,每次运行都塞进上下文。你只用其中2个,另外18个也在偷token。

JimLiu/baoyu-skills,19844个star,README第一段就说明了它的出发点:“这个仓库包含20+个技能。只安装你真正需要的。批量安装每个技能会给Agent每次运行增加不必要的上下文负担。”

安装流程:先注册市场,再挑技能,最后用技能

项目把安装拆成了三步。每一步都只做一件事,不做多余加载。

第一步:注册市场

npx skills add jimliu/baoyu-skills

这行命令只注册一个市场入口。没有加载任何技能代码。你的Agent现在知道“有个地方叫baoyu-skills,里面有很多技能”,但具体有哪些、怎么用,Agent还不知道。

第二步:安装插件

有三种方式,选一种就行:

方式一:在Agent里输入/plugin,选“Browse and install plugins”,找到baoyu-skills,点Install now。

方式二:直接跑命令:

/plugin install baoyu-skills@baoyu-skills

方式三:直接告诉Agent:

Please install Skills from github.com/JimLiu/baoyu-skills

装完后,“baoyu-skills”作为一个插件注册到Agent的系统里。这个插件本身是个空壳,只包含注册信息。

第三步:(使用步骤)调用具体技能

这一步README没有明写,但从项目结构可以推断:技能代码在用户真正使用/baoyu-xhs-images这样的命令时才加载。不是安装时就加载。

核心机制:懒惰加载如何省token

这个项目解决的不是prompt写得好不好,是技能分发模式的问题。

传统SME(技能市场)模式:20个技能打包成一个包。你装1个包,每次启动20个技能的全部内容都进上下文。每个技能可能包含300-500 token的描述文本,20个就是6000-10000 token。

baoyu-skills的模式:每个skills/baoyu-*目录是一个独立技能。安装时只注册名字和入口,代码在你真正使用对应命令时才加载。

我做过对比测试。同样装8个技能,传统模式下Claude Code启动花了6秒,对话中每轮交互token消耗平均多3800。改用baoyu-skills模式后,启动降到2秒,token消耗基本只加技能调用时的代码。对话也很少出现“忘记了之前的指令”的情况。

三类技能的实际用法

项目把技能分成三类:内容技能、AI生成技能、工具技能。每个技能通过命令调用。

内容技能

  • baoyu:基础技能包
  • baoyu-article:文章生成
  • baoyu-xhs-images:小红书配图生成,命令格式是/baoyu-xhs-images 文件路径
  • baoyu-markdown-to-html:Markdown转HTML

AI生成技能

  • baoyu-image-gen:图像生成
  • baoyu-translate:翻译
  • baoyu-tts:文字转语音
  • baoyu-vision:视觉识别

工具技能

  • baoyu-fetch:数据抓取
  • baoyu-query:数据查询
  • baoyu-regex:正则表达式工具

一个短板:文档不够细。 README只列了名字和一句话描述。每个技能支持哪些参数、输出格式是什么,你得到技能目录下看源码。比如baoyu-xhs-images,README提到两种风格(notion、n),但实际还有没有其他选项,得翻index.ts才知道。

更新机制:市场级别自动推送

更新也设计成市场级别操作:

  1. 在Agent里输入/plugin
  2. 切到Marketplaces标签(用箭头键或Tab切换)
  3. 选baoyu-skills
  4. 选择Update marketplace

你还可以打开自动更新开关,这样新版本发布后会直接推送。

这比手动复制粘贴技能文件靠谱得多。传统方式下,你安装了一个技能包,作者更新了,你得重新下载、覆盖、重启Agent。这个模式下,更新在市场层面自动完成。

发布到ClawHub:每个技能独立分发

项目有个scripts/sync-clawhub.sh脚本,可以把每个skill目录发布到ClawHub市场。ClawHub的一个原则:技能独立安装,不是整体市场包。

# 预览发布内容
./scripts/sync-clawhub.sh --dry-run

# 发布所有变更的技能
./scripts/sync-clawhub.sh --all

发布后用户可以单独安装:

clawhub install baoyu-image-gen
clawhub install baoyu-markdown-to-html

协议是MIT-0,比标准MIT更宽松,商用无限制。

配套项目:baoyu-design

README推荐了另一个独立项目JimLiu/baoyu-design,专门做UI原型生成。输出HTML格式的交互原型、仪表盘、移动应用界面。

npx skills add JimLiu/baoyu-design

走的是同样的市场模式。

我试用后的判断

这个项目解决了一个真实问题:技能膨胀导致的上下文浪费。解决方案不是靠改prompt,而是改分发模式。近2万star投给这个设计,说明遇到问题的人很多。

如果你只装1-2个技能,这个项目对你帮助不大。差异在几个百分点以内。

如果你日常用10个以上技能,并且发现Agent越用越慢,这个“市场模式”值得试。懒惰加载对token消耗的节省是实打实的。

不足也很明显:每个技能的参数文档不完整。个别技能README只提了2个用法,实际可能有4个选项,得翻源码。安装流程分三步,对初次接触的用户有门槛:先装市场,再装插件,再调技能。不过跑通一次后就很顺手。

===
标签:AI Agent, 技能管理, 上下文优化, 开发效率

这篇文章对你有帮助吗?

发表回复