06. 技能、记忆与上下文文件
如果说工具决定 Hermes "能不能做",那么技能、记忆和上下文文件决定它"会不会持续做对"。
本章目标
- 理解 skill、memory、context file 的边界
- 学会查找、安装和使用 skill
- 学会用
AGENTS.md和SOUL.md提升稳定性 - 理解 prompt caching 与上下文注入的约束
适用读者
- 想长期高效使用 Hermes 的所有用户
- 想把重复流程沉淀下来的进阶用户
- 开发者
前置条件
- 已理解 CLI 和工具系统
核心概念
Skill 是"怎么做"
Skill 是按需加载的流程知识。它更像一份可执行的说明书,而不是一条记忆条目。
适合做成 skill 的内容:
- 固定工作流
- 多步骤操作规范
- 领域知识流程
- 常见排错套路
Memory 是"是什么"
Memory 适合保存事实信息,例如:
- 你的偏好
- 环境事实
- 常用项目位置
- 团队约定
经验法则很简单:
- 可复用流程放 skill
- 长期事实放 memory
Context File 是"默认注入的背景"
Hermes 会自动读取某些上下文文件,例如:
AGENTS.mdSOUL.md- `.cursor/*
这些文件会直接影响每次会话的系统上下文,所以质量和长度都很重要。
操作步骤
查看和使用 skill
最常用的方式:
text
/skills
/skills search docker
/skills browse
技能安装后通常会直接变成 slash command,例如:
text
/plan 设计一个 REST API
/ascii-art Make a banner
CLI 外也可以:
bash
hermes skills list
hermes skills install official/research/arxiv
自己创建 skill
用户自定义 skill 放在:
text
~/.hermes/skills/
典型结构:
text
~/.hermes/skills/my-category/my-skill/
└── SKILL.md
如果 skill 还需要参考文件、模板或脚本,也可以加 references/、templates/、scripts/。
使用 memory
Memory 用于跨会话保存信息。你可以直接要求 Hermes 记住某个事实,例如:
text
记住:我们的 CI 用 GitHub Actions,主工作流文件是 deploy.yml。
写好 AGENTS.md
对于代码项目,AGENTS.md 非常重要。它适合写:
- 架构约定
- 测试方式
- 代码规范
- 禁止事项
- 特定目录行为
它不是 README 的替代,而是"给 agent 的项目说明书"。
区分 SOUL.md 和 AGENTS.md
SOUL.md:定义 Hermes 的长期人格和表达倾向AGENTS.md:定义当前项目或工作区的约束
一个偏"说话风格",一个偏"做事规则"。
常见场景
场景 1:重复做同一种工作流
如果某个任务总要 5 步以上,而且你会重复做,优先考虑做成 skill,而不是每次重写 prompt。
场景 2:希望 Hermes 一直遵守项目约定
优先写 AGENTS.md,而不是每次聊天都重新说一遍。
场景 3:希望 Hermes 长期记住偏好
例如"回答尽量简洁""默认用 pytest""某仓库路径固定在某位置",这些更适合进 memory。
常见问题与排错
为什么安装了 skill,当前会话却没看到
有些 skill 需要新会话才能稳定进入 prompt。必要时重开会话或 /reset。
为什么不建议把 AGENTS.md 写得特别长
因为它会被反复注入上下文,太长会拖慢会话、增加 token 消耗,并降低重点信息密度。
为什么 memory 改了但当前会话感觉没变
memory 是跨会话生效的长期上下文。很多情况下写入后要到下一个会话,系统提示里才会以稳定方式体现出来。
什么是 prompt cache 不该被打破
Hermes 很依赖稳定的系统提示前缀来命中缓存。频繁改系统提示、技能载入方式、上下文文件或模型,会降低缓存命中率,提高成本和延迟。
本章总结
工具解决"做事",skill、memory 和 context file 解决"长期稳定地做对"。高质量的长期使用,离不开这三者的正确分工。
下一步建议
继续看 MCP 与扩展能力,学习如何把 Hermes 接到外部系统。