OpenSkills说白了就是一个“外挂包管理器”。它把Anthropic公司(就是开发Claude大模型的那家)为Claude Code设计的“技能系统”变成了一种通用格式,让Cursor、Windsurf、Aider、Codex这些AI代理也能无缝使用。
它的核心思想很简单:技能就是一堆写好的说明文档(SKILL.md文件)。
OpenSkills 是一个通用 CLI 工具,使各类 AI 编码代理能复用 Anthropic 的 SKILL.md 技能格式,实现跨平台、可版本控制、按需加载的技能管理。
想像一下:你玩《我的世界》,想装个“砍树一键掉钻石”的模组,是不是得先装个“Forge”或者“Fabric”? OpenSkills 就是给 AI 编程助手用的“Forge”,专门管“外挂包”——不过这里的外挂叫“技能(skills)”。
它弄了个小黑框(CLI),让不同的 AI 小弟(比如 Claude Code、Cursor、Windsurf 等等)都能用同一套外挂包。
一句话总结:OpenSkills 让 Claude Code 的“外挂”变得谁都能用、想装就装、还能像 Git 一样做版本管理。
核心特性
- 跟 Claude 官方的外挂格式100%对得上,它用啥格式(SKILL.md),我就用啥格式,不玩花活。
- 装外挂不限官方商城,GitHub、你电脑里的文件夹、甚至私密的仓库都能装。
- 小黑框里就能一键装、一键删、一键列清单、一键同步,跟 npm 装包一样丝滑。
- 所有 AI 小弟共用同一套外挂,再也不用重复造轮子。
️ 安装与快速入门
第一步:先全局装上小黑框本体
bash
npm install -g openskills
(就像你全局装 QQ 音乐,想在哪儿听都行。)
第二步:装外挂包(比如把 Claude 官方的外挂全集搬下来)
bash
openskills install anthropics/skills
(去官方仓库一键拖 100 个模组进你的“外挂文件夹”。)
第三步:让 AI 小弟们知道你有啥外挂
bash
openskills sync
(生成一张“外挂清单” AGENTS.md,贴在小黑板上,所有 AI 小弟抬头就能看见。)
第四步:看看自己都装了啥
bash
openskills list
(像翻书包,看看里面都塞了哪些外挂。)
第五步:真打怪时,临时读外挂说明书
bash
openskills read <外挂名字>
(打 BOSS 前,现场翻攻略,看完就扔,不占地儿。)
为啥要用 OpenSkills?
✅ 通用(Universal)
它用的是一个叫 的 XML 小纸条,谁都能读。
只要 智能体代理会看 AGENTS.md,就能用里面的外挂,不挑人。
安装源随便挑
除了官方商城,还能从GitHub、本地、私有仓库拉外挂,像拉仓库一样简单。
对开发者超友好
- 小黑框支持交互式菜单,上下键选外挂,像逛淘宝。
- 还能写进自动化脚本(CI/CD),每次上线自动拉最新外挂,不用人工守着。
Progressive Disclosure(“用时再加载”)
外挂内容只有真要用时才读进内存,不会一上来就把 100 本攻略全塞你怀里,脑子不炸。
技术对比表
| 特性 | Claude Code 原生外挂 | OpenSkills |
应用场景举例(翻译继续)
✨ 场景一:
你在用 Cursor 写代码,突然想“提取 PDF 文字”,但 Cursor 不会。
咋办?
用 OpenSkills 装一个“PDF 外挂”,同步到 AGENTS.md,Cursor 马上就能用,不用等你喂 prompt。
✨ 场景二:
晚上 12 点,CI/CD 自动跑脚本:
1. 拉最新外挂 → 2. 生成 AGENTS.md → 3. AI 测试 agent 上线就能用新外挂,你睡得跟猪一样,它自己全干完。
为什么不用MCP?因为技能根本不需要服务器
有人可能会问:现在不是流行MCP(Model Context Protocol)吗?干嘛还搞个命令行工具?
这里的关键在于,MCP是用来动态调用外部工具的,比如让AI实时访问数据库、调用API、运行脚本,背后通常需要一个持续运行的服务端。
而OpenSkills处理的“技能”完全是静态的——它们就是一个个Markdown文件,里面写着“当你需要处理PDF时,请这样做:先用pdftotext提取文本,再用tabula-py抽表格,最后用PyPDF2合并”。
这些内容不需要联网,不需要后台服务,更不需要复杂的协议握手。
只要AI代理能读AGENTS.md这个文件,看到里面列了哪些技能,然后在需要时执行一句npx openskills read pdf,就能把对应的SKILL.md内容读出来当上下文用。
这种设计轻得像一张纸,却能被任何支持读取本地文件的AI代理理解。
反过来看,如果硬要用MCP来实现同样的功能,就得为每个技能搭个微型服务器,岂不是杀鸡用牛刀?技能的本质是知识,不是服务,所以用文件就够了。
兼容性设计:100%复刻Claude Code的技能格式
为了让其他AI代理无缝接入,OpenSkills在格式上做了极致兼容。
它生成的AGENTS.md文件里,技能列表部分完全照搬Claude Code的XML结构:
连注释标记和都原样保留,方便自动化工具识别替换区域。
技能文件本身也是标准的SKILL.md,开头通常有Usage说明、Input/Output规范、Examples示例等章节。
这种严格对齐意味着,任何原本为Claude Code写的技能,无需修改就能在OpenSkills生态里跑起来。
反过来,用OpenSkills开发的新技能,未来如果Claude Code开放更多接口,也能直接迁移回去。
这种双向兼容性大大降低了技能开发者的维护成本——写一次,到处用。更重要的是,它让整个AI代理生态朝着标准化迈进了一步,避免各家重复造轮子。
应用场景:让非Claude代理也能拥有超能力
最直接的应用场景就是赋能那些不支持原生技能系统的AI代理。
比如Cursor是个很火的AI代码编辑器,但它自己没技能商店。通过OpenSkills,Cursor项目里只要放个AGENTS.md,就能立刻获得PDF处理、数据库查询、API调试等能力。用户问“从这个PDF提取客户名单”,Cursor读AGENTS.md发现有pdf技能,调用openskills read pdf拿到指令,然后按步骤执行。
另一个典型场景是企业内部开发。假设有个团队用自研的AI代理做代码生成,他们可以把安全编码规范、公司专属框架的使用指南写成SKILL.md,用OpenSkills统一管理。新员工加入项目时,只要clone代码库,运行openskills sync,所有定制技能自动就位。甚至教育领域也能受益——老师可以把教学用的算法模板打包成技能,学生用任何支持AGENTS.md的AI工具都能调用,不用纠结工具差异。
技术细节:优先级规则与存储路径的精妙设计
OpenSkills在存储路径上设了四层优先级,确保不同场景下的技能加载不出错。
最高优先级是项目级的.agent/skills(用--universal安装时生成),
其次是全局的.agent/skills,
再次是项目级的.claude/skills,
最低是全局的.claude/skills。
当多个位置存在同名技能时,系统自动选优先级最高的那个。
这种设计巧妙解决了混合使用Claude Code和其他代理时的冲突问题——Claude Code默认读.claude/skills,而其他代理通过--universal参数用.agent/skills,互不干扰。
另外,AGENTS.md里的
技能即模块,构建AI时代的乐高生态
OpenSkills的野心不止于兼容Claude。它试图建立一种“技能即代码模块”的范式——每个SKILL.md都是独立、可组合、可复用的功能单元。就像前端开发者用npm装React组件,后端用pip装Python库,未来的AI开发者或许会用openskills install装各种能力模块。
这种模块化趋势将极大加速AI应用的开发:处理Excel?装个excel技能。调用天气API?装个weather技能。甚至复杂任务也能拆解——写本书?先装outline技能生成大纲,再装research技能查资料,最后装write技能填充内容。
每个技能专注一件事,通过AGENTS.md协调配合。
更妙的是,这些技能可以像开源软件一样被社区共建共享。GitHub上可能出现专门的技能仓库,按领域分类(数据科学、Web开发、法律文书等),开发者只需组合安装就能快速搭建垂直领域的AI助手。OpenSkills正是这个生态的基石,它用最简单的文件系统,撬动了AI能力复用的无限可能。