这次更新不是"多写了 18 个提示词",而是把中文教育 Agent 的能力层,从内容清单推进到更完整的 Skill Pack:可安装、可路由、可诊断、可迁移,也更适合真实产品集成。
前段时间我发布 Hermes Edu Skills 时,公开 Skill 数量还是 170 个。
那一版主要解决的是"有没有"的问题:把教材同步、备考复习、错题复盘、每日练习、阅读写作、亲子陪学、老师工具等中文教育场景,整理成可以被 Agent 读取和调用的 SKILL.md。
到了新版本,公开 Skill 数量更新到了 188 个。
表面上看,这是从 170 到 188,多了 18 个 Skill;但从工程视角看,这次更新的重点不是堆数量,而是一次能力层升级:
- 补齐学前启蒙场景;
- 重构产品级分类模型;
- 增强 CLI 安装、诊断、修复和导出能力;
- 提升 Hermes Agent 对本地 Skill 的可见性和可用性;
- 让这套 Skill Pack 更适合被 OpenClaw、Codex、Cursor、Claude Code 等不同 Agent 工具复用。
为什么我没有继续做 Prompt 合集?
很多 AI 教育 Demo 的起点都是一句提示词:
text
你是一名优秀老师,请给孩子讲解这道题。
这句话当然有用,但它不够工程化。
真实的教育 Agent 需要面对的是多维度任务:
- 年级不同;
- 教材版本不同;
- 学习阶段不同;
- 目标可能是预习、同步巩固、错题复盘、考试冲刺;
- 用户可能是学生、家长、老师、教研人员;
- 同一个"讲题",还可能涉及概念讲解、步骤引导、错因分析、变式训练和复习计划。
如果每次都让用户在 Prompt 里临时描述这些信息,Agent 的输出就会很不稳定。
所以 Hermes Edu Skills 的思路不是"写更多万能提示词",而是把教育任务拆成一个个结构化 Skill,让 Agent 根据场景加载对应能力。
从 170 到 188,新增的不只是数量
旧版本的 170 个 Skill 已经覆盖了很多中小学学习场景,但我在使用和整理过程中发现一个明显缺口:学前启蒙和幼小衔接。
教育 AI 如果只从小学、初中、高中开始做,会天然漏掉很多家庭刚需场景:
- 识字启蒙;
- 拼音启蒙;
- 数感建立;
- 绘本共读;
- 控笔与书写准备;
- 专注力训练;
- 情绪表达;
- 入学准备;
- 亲子每日启蒙。
这些任务不是传统意义上的"讲题",但非常适合被 Skill 化。因为它们有明确的触发场景、年龄段、互动方式、输出边界和家长执行动作。
所以在 188 个 Skill 的版本里,我把 preschool 做成了一级分类,而不是把它零散塞进家庭教育或每日练习里。
新的分类模型更接近产品视角:
| 分类 | 说明 |
|---|---|
preschool |
学前启蒙、幼小衔接、亲子共学 |
textbook-sync |
教材同步、单元学习、课堂巩固 |
daily-practice |
每日练习、短时巩固、主动回忆 |
reading-writing |
阅读理解、写作表达、语言输出 |
exam-prep |
期末、中考、高考、考研、考证等备考 |
learning-assistant |
学习计划、错题复盘、苏格拉底式辅导 |
family-education |
家庭陪学、家校沟通、作业习惯 |
teacher-tools |
老师备课、作业生成、班级学情分析 |
这个分类变化很重要。
因为一个教育 Agent 项目不是只靠"有哪些 Skill"来运转,还要靠"能不能被正确发现、正确安装、正确路由、正确维护"。
Skill 的核心价值:把教育流程沉淀下来
以错题复盘为例。
普通 Prompt 往往会直接回答:
text
这道题的正确答案是......
但真正的错题复盘至少应该有几个步骤:
- 识别题目对应的知识点;
- 对比学生原答案和正确答案;
- 判断错因是概念错误、审题错误、计算错误,还是方法迁移失败;
- 给出可理解的订正说明;
- 生成同类巩固建议;
- 决定是否加入后续复习计划。
这就是 Skill 和 Prompt 的差别。
Prompt 更像一次性指令,Skill 更像可复用的任务协议。它可以告诉 Agent:什么时候该用、该收集哪些信息、缺少信息时如何默认、输出应该包含哪些部分、哪些行为不应该做。
在教育场景里,这种稳定性比"模型说得很漂亮"更重要。
这次更新里,我更关注 CLI 和可运维性
188 个 Skill 只是可见结果,背后更关键的是 CLI 工程能力。
现在我希望一个用户不是 clone 仓库后手动找目录,而是可以直接:
bash
npx --yes hermes-edu-skills install
安装后,再通过诊断命令检查本地 Hermes 是否能看到这套 Skill Pack:
bash
npx --yes hermes-edu-skills doctor
如果本地配置、目录、Hermes 可见性或 Windows 命令入口有问题,可以尝试:
bash
npx --yes hermes-edu-skills fix
npx --yes hermes-edu-skills repair
更新、验证和卸载也做成了独立命令:
bash
npx --yes hermes-edu-skills update
npx --yes hermes-edu-skills verify
npx --yes hermes-edu-skills uninstall
这类命令看起来不如"新增 Skill"显眼,但对开源项目非常重要。
因为只要用户安装失败、Hermes 看不到 Skill、CLI 启动不了,再好的 Skill 内容都无法进入真实使用链路。
我这次在 0.18.x 系列里做了不少安装生命周期相关的增强,本质上都是为了减少用户从"看到项目"到"真正跑起来"之间的摩擦。
自然语言路由:让用户不用记 slug
188 个 Skill 带来的另一个问题是:用户不可能记住每个 Skill 的英文 slug。
所以项目里加入了面向自然语言问题的匹配能力。
比如用户可以先搜索:
bash
npx hermes-edu-skills search 学习计划
也可以直接让系统匹配:
bash
npx hermes-edu-skills match "孩子数学错题总是同一类,怎么复盘?"
我的目标不是让用户背命令,而是让 Agent 能够先理解教育意图,再从 Skill Pack 中选择合适的能力。
这也是教育 Agent 和普通聊天机器人的差别:
普通聊天机器人是"你问什么,我答什么";教育 Agent 应该是"我知道这属于什么学习任务,并调用对应工作流"。
多工具导出:不要把教育 Skill 锁死在一个 Agent 里
Hermes Edu Skills 最初是围绕 Hermes Agent 做的,但我不希望它只能服务一个运行时。
所以项目支持导出到多个 Agent 或 AI 工具环境:
bash
npx hermes-edu-skills install openclaw
npx hermes-edu-skills install codex
npx hermes-edu-skills install claude
npx hermes-edu-skills install cursor --workspace /path/to/project
npx hermes-edu-skills export generic --target ./dist/agent-skills
这里的设计原则是:
skills/保持 Hermes 原生格式;- 每个 Skill 都有独立的
SKILL.md; agent-pack负责按不同目标工具复制、扁平化或生成规则文件;- 通用导出产物保留
AGENT_SKILL_PACK.json,方便其它 Agent 接入。
我认为这是开源教育 Skill Pack 很重要的一点。
教育场景能力不应该被绑定在某一个工具里。只要 Skill 的结构足够清晰,它就应该能被迁移、被改造、被集成进不同产品。
当前项目结构
从工程角度看,现在的 Hermes Edu Skills 更像一个"教育能力包",而不是单纯的文档仓库。
可以把它理解成几层:
text
hermes-edu-skills/
├── skills/ # 188 个公开 Skill 的主体
│ ├── preschool/
│ ├── textbook-sync/
│ ├── daily-practice/
│ ├── reading-writing/
│ ├── exam-prep/
│ ├── learning-assistant/
│ ├── family-education/
│ └── teacher-tools/
├── catalog.json # Skill 元数据目录
├── .well-known/skills/index.json # Skill 索引
├── scripts/agent-pack.mjs # 安装、导出、诊断、修复逻辑
├── README.md
├── README.en.md
├── CHANGELOG.md
└── package.json
其中最关键的是 SKILL.md 和 catalog.json。
SKILL.md 负责让 Agent 知道"怎么执行这个任务";
catalog.json 负责让工具知道"有哪些 Skill、属于什么分类、如何安装和匹配"。
这两个东西结合起来,才让 Skill Pack 具备可发现、可安装、可路由和可迁移的能力。
这次升级给我的一个启发
做教育 AI,不能只追求"模型回答得像老师"。
真正难的是把教育任务拆清楚:
- 哪些任务适合学生直接用;
- 哪些任务适合家长陪学;
- 哪些任务适合老师备课;
- 哪些任务需要先问清年级和教材;
- 哪些任务缺少信息时可以安全默认;
- 哪些场景不应该让 AI 越界替孩子完成作业。
从 170 到 188,我越来越明确一个判断:
教育 Agent 的核心不是一个万能大 Prompt,而是一套可维护的任务能力层。
这个能力层既要懂教育场景,也要符合软件工程的基本要求:目录清晰、命令稳定、版本可追踪、故障可诊断、迁移可执行。
后续计划
接下来我会继续沿着三个方向迭代 Hermes Edu Skills:
第一,继续提升 Skill 的质量,而不是盲目堆数量。
尤其是错题复盘、学习计划、阅读写作、考试复习、老师工具这些高频场景,需要持续打磨触发条件、默认策略和输出结构。
第二,增强路由能力。
让自然语言问题能更准确地命中对应 Skill,同时让用户看得见"为什么匹配这个 Skill"。
第三,推动更多开发者、老师和教研人员共建。
中文教育场景太复杂,一个人不可能覆盖所有教材、地区、考试体系和家庭情况。开源的意义,就是把这些经验变成可以讨论、可以改进、可以复用的公共能力。
项目地址
项目名:zhongweiv/hermes-edu-skills
如果你正在做 AI 家教、学习助手、错题本、教研工具、教师效率工具,或者只是想让自己的 Agent 更懂中文教育场景,欢迎去 GitHub 看看。
如果觉得这个项目有价值,也欢迎点一个 Star。
这次从 170 到 188,只是一个阶段版本。
我更希望它最终变成一个中文教育 Agent 的公共 Skill 基础设施。