说实话,我之前一直在纠结一个问题:agent 能记住上下文、能跑工具、能帮我干活,但“经验”这东西怎么沉淀?
每次开新会话,之前踩过的坑、摸索出来的流程、反复验证过的最佳实践,如果不手动整理,就全丢了。
Hermes 的 skills 系统本来就是为了解决这个问题。但说实话,手写一个 SKILL.md,格式要对、描述要精简、步骤要清楚——门槛还是在那。
直到官方发布了 /learn 功能。
/learn 是什么?
/learn 的逻辑特别简单:你告诉它“学什么”,它自己去找素材、自己提炼、自己写成标准格式的 skill 文件。
不需要你先整理好文档,不需要你手动编辑 Markdown,不需要你懂 SKILL.md 的格式规范。
你只需要描述你想让它学的东西。
它能学什么
我实际用下来,/learn 的输入非常自由:
学一个本地项目目录
/learn ~/projects/acme-sdk中的REST客户端,重点关注认证和分页功能
它会自己用 read_file、search_files 去翻那个目录,找到和 auth + pagination 相关的代码和文档,然后提炼成一个 skill。
学一个在线文档页面
/learn https://docs.example.com/api/quickstart
它自己去抓网页内容,提取关键信息,生成 skill。
学你刚走完的流程
/learn 我刚刚如何部署了预生产服务器
这个才是我最常用的。你跟 Hermes 聊了半天,折腾完一个流程——比如部署了一套 CI、配好了一个 MCP server、修好了一个诡异的 bug。然后你丢一句 /learn 我刚才是怎么实现的,它就把刚才的整个过程提炼成一个可复用的 skill。
下次再遇到同样的事,直接 /skill-name 就行了。
学你粘贴的笔记或描述的流程
/learn filing an expense: open the portal, New > Expense, attach the receipt, submit
你甚至可以口述一个流程,它都能帮你结构化。
为什么我觉得这个功能值钱
大多数人用 agent 的方式是:每次开新会话,从头描述需求,从头跑流程。
用了几个月之后,你积累了大量“用过一次的经验”,但下次遇到同样的问题,你还得重新想、重新描述、重新踩坑。
/learn 解决的是“经验的复利”问题。
你折腾一次,学一次,以后每次都能直接调用。agent 不会变笨,但如果没有 skills,它每次都是“失忆状态”开始。
Skills 就是它的长期记忆中,关于“怎么做事”的那部分。
它和其他功能的关系
Hermes 的记忆系统其实分三层:
- MEMORY.md / USER.md——记“你是谁”、“你喜欢什么”、“你的环境是什么样”
- Session search——记“我们之前聊过什么”,可以跨会话回溯
- Skills——记“怎么做事”,是可执行的程序性记忆
/learn 是第三层的快捷入口。以前你要手写 SKILL.md,现在一句话就能生成。
而且生成的 skill 是标准格式,支持渐进式加载(先看名字和描述,需要的时候再读全文),所以即使你攒了几十个 skill,也不会把每次对话的 token 预算撑爆。
怎么用
在 Hermes 的任何界面——CLI、飞书、Telegram、TUI、Dashboard——直接输入:
/learn <你想让它学的东西>
就这么简单。
Dashboard 的 Skills 页面还有一个“Learn a skill”按钮,打开之后有目录输入框、URL 输入框和自由文本框,填完就跑。
生成之后呢
/learn 生成的 skill 会保存到 ~/.hermes/skills/ 目录下(如果是 profile 模式则在 profile 的 skills 目录下),文件名就是 skill 的名字。
之后在任何会话里,输入 /skill-name 就能加载它。比如你用 /learn 学了一个叫“deploy-staging”的 skill,以后直接 /deploy-staging 就能调用。
你也可以用 hermes skills list 看所有已安装的 skill,用 /skill <name> 显式加载某个 skill。
几个实际场景
场景一:刚折腾完一套部署流程
你花了一个下午,配好了 Docker + Nginx + SSL,中间踩了三四个坑。以前这些经验就散落在聊天记录里了。现在:
/learn 我如何使用 Docker、Nginx 和 SSL 设置生产部署
下次有人问“怎么部署”,直接把这个 skill 分享出去。
场景二:发现了一个好用的第三方库的用法
你在项目里用了一个新库,翻了半天文档才搞明白怎么用。现在:
/learn https://some-library-docs.com/guide, focus on authentication and error handling
以后在任何项目里用到这个库,skill 直接告诉你怎么接。
场景三:团队内部流程
你把公司的报销流程、发布流程、代码审查流程口述一遍,/learn 就能帮你变成一个可执行的 skill。新同事来了直接用,不用每次手把手教。
总结
agent 的价值不是它有多聪明,而是它能积累多少。
/learn 让“积累”这件事从“手动整理文档”变成了“一句话搞定”。
你折腾的每一次,都不会白费。