Hermes 最核心的价值不是功能列表,而是一个理念:Agent 应该从使用中学习,不该每次重置到零。这篇聚焦技能系统——它怎么工作,以及你如何最大化它的效果。
技能是什么
技能是 ~/.hermes/skills/ 里的结构化 Markdown 文档,格式遵循 agentskills.io 标准。
每个技能一个目录:
~/.hermes/skills/
deploy-to-vercel/
SKILL.md # 主文档:步骤、注意事项、验证
references/
common-errors.md # 常见错误
scripts/
verify.sh # 验证脚本
SKILL.md 示例:
markdown
---
name: deploy-to-vercel
description: Next.js 项目部署到 Vercel,含环境变量和 CI 验证
version: 1.2
---
## 核心步骤
1. 确认 vercel.json 存在
2. 同步环境变量:vercel env pull .env.local
3. 部署:vercel deploy --prod
4. 验证健康端点
## 已知坑
- NEXT_PUBLIC_ 变量不生效时需要重新构建(不是重部署)
- Edge Functions 超时 30s,不是默认的 10s三级渐进加载(省 token 的关键)
| 级别 | 内容 | Token | 触发 |
|---|---|---|---|
| Level 0 | 所有技能名称+描述 | ~3,000 | 每次会话自动 |
| Level 1 | 某技能完整内容 | 按需 | Agent 判断需要 |
| Level 2 | 技能内的参考文件 | 按需 | Agent 需要更多细节 |
安装了 100 个技能,基础开销还是只有 3,000 tokens。
三种技能来源
来源 1:自动生成(核心魔法)
完成复杂任务(通常 5+ 工具调用)后,Hermes 自动评估:「这个解法值得保存吗?」
值得时自动:
- 提取核心步骤
- 记录遇到的坑和解法
- 写验证步骤
- 存入技能库
完全自动,你什么都不用做。
来源 2:手动编写
你想让 Agent 立刻知道某些知识:
bash
mkdir -p ~/.hermes/skills/our-deployment
cat > ~/.hermes/skills/our-deployment/SKILL.md << 'EOF'
---
name: our-deployment
description: 公司内部部署:staging → production,含审批节点
---
## 核心规则
- 生产部署只在周二、周四 10:00-16:00 进行
- 部署前在 Slack #deployments 发通知
- staging 必须先跑完整回归测试
EOF来源 3:技能市场
bash
hermes skills search "docker"
hermes skills install docker-manager
hermes skills list技能自进化
已有技能在使用中持续更新:
你:重构 utils/api.ts 里的 retry 逻辑
Agent:[加载 refactoring-patterns 技能]
[执行重构]
[发现:exponential backoff 比固定延迟效果更好]
[自动更新技能文档:在 retry 一节补充 exponential backoff 模式]
完成!已将 exponential backoff 记录到技能库
不需要你操作,技能库在每次使用中自动变得更完整。
实战:团队共享技能库
yaml
# ~/.hermes/config.yaml
skills:
external_dirs:
- path: ~/company-hermes-skills # git clone 共享仓库到这里
readonly: false # 允许 Agent 更新任何团队成员的 Hermes 学到新东西,push 到共享库,所有人受益。
快速沉淀项目知识
text
你:读 README.md、docs/architecture.md、docs/deployment.md,
把关键信息整理成技能文档
Hermes:[阅读文档]
[生成 project-overview、deployment-guide、architecture-patterns 三个技能]
已创建 3 个技能,后续相关任务自动参考技能管理命令速查
bash
hermes skills list # 列出所有
hermes skills search <关键词> # 搜索可安装的
hermes skills install <name> # 安装
hermes skills remove <name> # 删除
hermes skills edit <name> # 编辑(打开编辑器)
hermes skills create <name> # 新建空模板
/skills # 会话内分页浏览Hermes Skills vs CLAUDE.md 对比
| Hermes Skills | CLAUDE.md | |
|---|---|---|
| 谁来写 | Agent 自动 + 手动 | 手动 |
| 自动进化 | 是 | 否 |
| Token 管理 | 三级渐进 | 全量加载 |
| 团队共享 | Git 仓库 | Git 提交 |
| 格式兼容 | agentskills.io 标准 | 自定义 Markdown |
两者格式大体兼容,可以互相转换。CLAUDE.md 适合快速注入项目规范;Hermes Skills 适合长期积累型工作流。
来源:dev.to 解析 | byteiota.com 教程 | 整理:ClaudeEagle