Nori Skillsets
为多种编码智能体集中安装、翻译并一键切换技能配置。
- Star 数
- ★ 170
- 最近更新
- 26 天前
- License
- Apache-2.0
- 主语言
- TypeScript
- FA 评分
- 38/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude CodeChatGPT(部分支持)
- 费用
- 免费,无需付费服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 同时使用 Claude Code 与 Codex 的开发者,希望维护一份技能源文件,安装时自动生成两个智能体各自的格式。
- 不适合
- Windows 用户:目前仅支持 Mac 或 Linux
- 不愿把智能体配置交给统一管理、希望手工直接编辑 .claude/ 等目录的人
- 没有安装任何受支持编码智能体 CLI 的团队
- 源码审查
- 38/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Nori Skillsets 是一个 npm 命令行客户端(nori-skillsets),用于从 noriskillsets.dev 注册表安装并管理「Skillset」——把技能、AGENTS.md/CLAUDE.md 指令、子智能体、斜杠命令和 MCP 服务器配置打包成一份统一配置。它在 ~/.nori/profiles/ 下维护技能集库,切换时先清理各目标智能体目录中的旧配置,再把同一份技能集翻译成 Claude Code、Cursor、Codex、Gemini CLI、GitHub Copilot、OpenCode、Goose、Kilo、Kimi CLI、Pi、OpenClaw、Droid 各自期望的磁盘格式并写入。技能内容可用 {{claude-code …}}{{codex …}}{{else …}} 条件语法按目标智能体分支,安装到 Claude Code 与 Codex 会得到不同结果。客户端还支持私有注册表,供团队在组织内共享经过验证的配置。它是配置分发与同步工具,本身不包含模型,实际推理由被配置的编码智能体完成。
客户端以 npm 全局包发布,核心命令包括 init(在 cwd/.nori/profiles 建立技能集目录并捕获现有配置)、download <name>(从 noriskillsets.dev 拉取技能集)、switch <name>(激活技能集)以及 config(选择目标智能体)。切换时它会清除各智能体目录(如 .claude/、.cursor/、.codex/、.gemini/)里已有的配置,再按 agents 支持的格式写入:skills/ 下的 SKILL.md、subagents/、slashcommands/、AGENTS.md 与 CLAUDE.md、以及把 mcp/ 中每个 JSON 服务器配置转译为 .mcp.json(Claude)、config.toml(Codex)、settings.json(Gemini)、mcp.json(Cursor)。noriskillsets.dev 上的技能集经过有效性、清晰性和实现正确性审核。模板语法支持行内 {{claude-code …}} 与块级 {{#claude-code}}…{{else}}…{{/}} 形式,可用 nori-skillsets syntax 查看完整参考,未知标签与代码块保持原样,并提供 {{skills_dir}} 之类的路径占位符。
- 同时使用 Claude Code 与 Codex 的开发者,希望维护一份技能源文件,安装时自动生成两个智能体各自的格式。
- 在多个项目间切换不同工作流(如 TDD、代码评审、git 自动化)的工程师,用 switch 在技能集之间快速换挡。
- 想在团队内统一下发一套已验证智能体配置的技术负责人,借助私有注册表让成员安装完全相同的环境。
- 想试用以注册表中审核过的技能集为起点的新手,不必自己从零编写 AGENTS.md 与 SKILL.md。
- 把 MCP 服务器配置随技能一并分发的团队,由客户端转译为各智能体所需的不同配置文件。
- 在单个项目内按目录作用域隔离智能体配置的人,利用 init 在 cwd 下建立独立技能集。
如何安装或部署这个 Agent?
需要 Node.js 22 或更高版本、至少一个受支持的编码智能体 CLI,以及 Mac 或 Linux 系统。
npm install -g nori-skillsets安装后校验可用性:
nori-skillsets --help若使用团队私有注册表,需要联系 noriagentic.com 开通,README 未公开具体凭据配置方式。
如何使用这个 Agent?
在目标项目目录中初始化技能集目录并捕获现有配置:
nori-skillsets init从注册表下载并切换技能集:
nori-skillsets download senior-swe
nori-skillsets switch senior-swe选择要写入哪些智能体:
nori-skillsets config自定义技能集时,请在 ~/.nori/profiles/<名称>/ 下编辑,而不是直接改 .claude/ 等目录,因为切换会清空后者:
mkdir -p ~/.nori/profiles/my-skillset在 AGENTS.md 或 SKILL.md 中按目标智能体分支内容:
Track work with {{claude-code TaskCreate}}{{codex update_plan}}{{else your plan tool}} first.查看完整模板语法参考:
nori-skillsets syntax这个 Agent 有哪些优点和局限?
- 一份技能源可同时转译为 Claude Code、Cursor、Codex、Gemini CLI 等十余种智能体各自的目录与格式,避免为每个工具复制维护。
- 内置行内与块级条件模板语法,工具名差异(如 TaskCreate 与 update_plan)可在同一文件内按目标智能体分支。
- 切换到新技能集时会清理旧配置,切换过程可逆且不会遗留冲突文件。
- 技能集来自经过有效性、清晰性与实现正确性审核的 noriskillsets.dev 注册表,而非任意抓取的内容。
- 支持私有注册表,团队可封装被验证过的配置在组织内分发。
- 仅支持 Mac 与 Linux,Windows 用户无法直接使用。
- 切换会删除手动写入智能体目录(如 .claude/)的改动,自定义必须改到 ~/.nori/profiles/ 下,迁移成本需自行承担。
- 核心分发依赖 noriskillsets.dev 注册表,私有注册表还需联系厂商开通,存在供应商依赖。
- 要求 Node.js 22 及以上,旧版 Node 环境需先升级。
- README 未说明技能集审核标准的具体细则,也未给出私有注册表的凭据配置细节。
这个 Agent 与同类方案有什么区别?
与「为每个编码智能体各自维护一套 skill / 指令目录」的手工方式相比,Nori Skillsets 的差异在于用一份源文件加条件模板,在安装时转译为各智能体原生格式并进行切换。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Nori Skillsets 当前 | 38 · 缺口较多 | 命令行工具免费 | ★ 170 | 26 天前 | TypeScript | Codex · Claude Code |
| Puppetmaster | 68 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 471 | 5 天前 | Python | Codex · Claude Code |
| AWS Agent Toolkit | 58 · 缺口较多 | Agent 插件 / 技能免费 + 模型费 | ★ 3.3k | 今天 | Python | Codex · Claude Code |
| Caliber — AI 代理配置同步工具 | 58 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.3k | 1 个月前 | TypeScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 说明切换技能集时会清理各 agent 目录并写入新配置,属于对用户工作区的破坏性写入,但未提供确认提示、dry-run 或备份/回滚机制,仅提示手动修改应放在 ~/.nori/profiles 下,扣分。数据流方面仅笼统提到连接 noriskillsets.dev 下载,未说明上传/遥测/凭据处理;依赖清单包含 firebase、better-sqlite3、tar、undici 等较宽依赖面,未见审计或锁定策略(CI 甚至删除 package-lock.json),扣分。来源归属有作者与仓库信息,但发布者身份未经验证,仅给部分分。
README 与 package.json 存在不一致:README 要求 Node.js 22+,package.json engines 为 >=18;描述为 Claude Code 插件而实际支持多 agent;版本号 0.0.0 与 npm 徽章不符,扣分。依赖可用性方面有 CI 构建/测试流程,但 CI 删除 lockfile 后 npm install,可复现性弱。失败信息在可见文件中没有具体错误处理或诊断说明,仅 just doctor 检查 node/npm,扣分。
README 明确列出支持的多种编码 agent、多 agent 模板语法与私有团队注册表场景,受众与场景较清晰,给 2 分。但能力边界(哪些文件会被改写、清理范围、MCP 配置转换细节)仅概述,触发精度(命令与 agent 目录映射)缺少完整参考,环境适配仅声明 Mac/Linux,未覆盖 Windows,扣分。
README 结构清晰,含安装、使用、技能集结构、多 agent 编写说明,信息架构与安装说明较好,给 2 分;LICENSE 为完整 Apache-2.0,给 2 分。但命名稳定性存疑(bin 有 nori-skillsets/nori-skillset/sks 三个别名,包描述与 README 不一致),示例与 FAQ 较少,已知限制仅零散提及(手动修改会被删除、仅 Mac/Linux),版本号 0.0.0 且无 CHANGELOG,维护责任仅指向联系邮箱与 docs.md 中“Created and maintained by Nori”,扣分。
README 展示了 init/download/switch 的基本工作流,输出可用性有一定说明,但缺少实际命令输出示例、错误场景与验证方式;边际价值依赖外部注册表内容质量,仓库本身未证明;成本收益方面引入较多依赖与全局安装,收益描述偏营销,扣分。
README 中的“verified agent Skills”“reviewed for effectiveness”等声明没有可追溯的评审记录或链接到具体证据;测试文件主要验证 AGENTS.md 结构与 justfile 目标,未覆盖核心下载/切换逻辑,跨源佐证有限;事实与推断分离一般,扣分。
- 切换技能集会清理并覆盖各 agent 目录(如 .claude/、.cursor/),手动修改会丢失,使用前应备份工作区。
- 未提供确认提示、dry-run 或回滚机制,破坏性操作风险需自行评估。
- README 与 package.json 在 Node 版本、包描述、版本号上不一致,安装前需核对实际要求。
- 依赖面较宽(firebase、better-sqlite3、tar、undici 等),CI 删除 lockfile,供应链可复现性弱。
- 发布者身份未经验证,注册表内容“verified/reviewed”声明缺少可追溯证据。