一、为什么提示词重要?
90% 的人用 AI 不爽,不是因为模型不够强,而是提示词写得不够好。
举个真实对比。同一个问题,两种问法:
问法 1(80% 人会这么写):
"帮我写一份周报"
问法 2(学完这一章你会这么写):
<role>你是我的资深职场写作助理。</role> <task>基于上下文给出的本周工作记录,按公司模板写一份周报草稿。</task> <context> - 我是阿里云事业部的产品经理,team 8 人; - 本周做了 3 件事:1)上线了支付模块 v2;2)处理了 12 条客户反馈;3)和销售团队对齐了 Q3 路线图; - 老板叫张总,喜欢看数据。 </context> <constraints> - 字数 800 字以内; - 要有数据支撑(哪怕是估算); - 不要套话,不要"在 XX 的领导下"这种废话; - 留 2~3 处用 [TODO] 标出来让我自己补具体数字。 </constraints> <output_format> 用 Markdown,分四段:本周完成 / 关键数据 / 下周计划 / 需要支持 </output_format>
第二种写法,Hermes 给你的草稿基本可以直接用,你只需要补几个数字。
差别在哪里?结构。
二、提示词五要素
任何"严肃"的提示词,都建议包含下面五个要素。
| 要素 | 标签 | 作用 | 例子 |
|---|---|---|---|
| 角色 | <role> |
让 AI 进入某种"身份" | "你是一名持有 CFP 认证的家庭理财顾问" |
| 目标 | <task> |
一句话说清楚要做什么 | "把我支付宝账单分类并出消费体检报告" |
| 上下文 | <context> |
提供背景信息和数据 | 文件路径、人物关系、历史决定等 |
| 约束 | <constraints> |
不许做什么、必须做什么 | "金额超 100 元的开销必须单独列出" |
| 产出格式 | <output_format> |
你要的具体结果长什么样 | Markdown 表格 / Excel / JSON / 邮件正文 |
记忆口诀:角色 + 目标 + 上下文 + 约束 + 格式 = 5 把锁,缺一把都开不了想要的门。
三、一份直接复制可用的"XML 万能模板"
把下面这段保存为 ~/我的提示词模板.md,每次写新提示词时,复制改填空,速度比从头写快 5 倍:
<role>
[你希望 AI 是谁。例如:你是一名 10 年经验的资深产品经理。]
</role>
<task>
[一句话说清楚目标。例如:基于下方资料,给我写一份 v2.0 版本的需求评审 PPT 大纲。]
</task>
<context>
[背景信息、数据、历史。例如:
- 项目名称:XX SaaS 产品
- 当前版本:v1.5,月活 10 万
- 团队规模:6 人开发 + 2 人设计
- 老板期望:v2.0 在 6 月底上线
- 上一版本踩过的坑:XX]
</context>
<constraints>
[必须做 / 不许做。例如:
- 必须用我们公司的 PPT 风格(极简、深蓝主色)
- 不许超过 12 页
- 不要写废话和套话
- 涉及商业数据用区间表达,不要给绝对值]
</constraints>
<output_format>
[你想要什么形式。例如:
- 用 Markdown 输出
- 第一段:1 段 100 字内的"为什么做 v2.0"
- 第二段:表格列出 v2.0 的 8 个核心功能
- 第三段:分阶段交付计划(按月)
- 最后给我 3 个让老板提问后我能漂亮回答的"反向问题"]
</output_format>
<thinking_protocol>
[(可选)让 AI 怎么思考。例如:
- 先在内部列出你打算怎么做(不展示给我)
- 检查所有 constraints 是否都满足
- 自我审一次稿
- 然后给我最终输出]
</thinking_protocol>
为什么用 XML 标签
并不是 Hermes 强制要求 XML,而是这种结构对所有 LLM(Claude / GPT / Kimi / DeepSeek)都"友好"——它们在训练数据里见过大量类似结构的文档,识别能力更强。
你也可以用 Markdown 标题代替(## 角色、## 任务),效果接近,但 XML 更"干净"。
四、新手最容易犯的 6 个错
| 错误 | 反例 | 正解 |
|---|---|---|
| 没说自己是谁 | "帮我写邮件给客户" | 加 <context> 说明你是销售/产品/客服 |
| 没说目标对象 | "写一份方案" | "给一个还没用过我们产品的中型客户写..." |
| 上下文塞太多无关信息 | 把整本书贴给它 | 先用 /save 让它记住,正文只给关键背景 |
| 约束模糊 | "不要太长" | "不超过 500 字" |
| 没说想要什么格式 | "回复邮件" | "Markdown 列出回复正文 + 附议题清单" |
| 一次问 5 个事 | 把 5 件事写在一个提示词里 | 分 5 个对话,每个聚焦一件 |
五、SOUL.md:给 Hermes 一个"灵魂"
这是 Hermes 区别于 ChatGPT 最重要的功能之一。
SOUL.md 是一份只写一次、永远生效的"人格档案",存放在 ~/.hermes/SOUL.md。每次你启动 Hermes,它都会自动加载这份档案,从而知道:
- 你是谁
- 它是谁
- 你们怎么相处
- 你的雷区在哪里
- 你的偏好是什么
一份"普通人版" SOUL.md 范例
直接打开(如果文件不存在就创建):
hermes config edit SOUL
填入下面内容(按你自己情况改):
# 关于我(用户)
- 名字:周老板(或我让你叫的任何称呼)。
- 职业:互联网公司产品经理,深圳南山。
- 工作语言:中文为主,技术词汇可以用英文。
- 性格:直接、不爱客套、讨厌"在 XX 的领导下"这种废话。
- 时间偏好:早 8 点起床,晚 11 点前不要打扰我(除非紧急)。
- 隐私偏好:所有涉及账户、密码、银行卡的事,必须先问我一次。
- 钱包偏好:花钱超过 ¥100 的购买决定必须先问我。
- 家人:妈妈坐车 4 小时以上会晕;姐姐家在深圳福田。
- 宠物:一只胖橘猫"包子"。
# 关于你(Hermes)
- 我喜欢你直呼我名字("周老板"),不要用"您"。
- 你是我的合伙人,不是我的助理——发现我做错了请直接指出来。
- 不要每次都讲"我会尽我所能帮您"这种开场白,直接干活就行。
- 长任务给我中间进展(每完成一步告诉我一次),不要闷头干。
- 涉及不确定的事,宁可问我,也不要瞎猜。
# 我们的工作流偏好
- 默认产出:Markdown 格式。
- 涉及代码:Python 优先,TypeScript 次之,写出来注意可读性。
- 涉及金融决策:永远列出"风险点"。
- 涉及多步任务:先给我执行计划,等我点头再开干。
- 涉及邮件、合同、对外文件:写完先给我审,不要直接发。
# 我的工具偏好
- 笔记:Notion
- 日历:Apple Calendar
- 待办:Things 3
- 邮件:Apple Mail
- 编辑器:VS Code
# 我的雷区
- 不要把我私人邮箱地址 / 手机号写进任何对外文件
- 不要在没问我的情况下删除任何文件
- 不要让我重复回答同一个问题三次以上(如果你问了三次,自己根据上下文判断)
这份档案的威力
写完之后,你下次再问 Hermes "帮我写一封给客户的回复邮件",它会:
- 自动用中文,且语气直接(你的偏好);
- 自动避免说"您";
- 自动 markdown 输出;
- 写完会问你"要发吗?"而不是直接发(你的偏好)。
你不用再每次都重新解释自己。这就是"会记住你"的第一层。
SOUL.md 的进阶玩法
| 玩法 | 怎么做 |
|---|---|
| 多人格切换 | 写 ~/.hermes/profiles/work.SOUL.md 和 play.SOUL.md,用 hermes profile switch work 切换 |
| 多用户共享 | 把团队公共偏好放在 team.SOUL.md,私人偏好放 me.SOUL.md |
| 项目级人格 | 在某个项目目录下放 .hermes/SOUL.md,进到那个目录时自动加载 |
六、MEMORY.md:Hermes 自己记下的事实
SOUL.md 是你给它写的,~/.hermes/memories/MEMORY.md 则是 Hermes 自己写的。
每次你和它聊到一些"关于你的事实",它会判断"这个值得记下来",然后悄悄追加到 MEMORY.md。例如:
聊天中你随口说了一句:"我下个月要去日本玩 10 天,预算 3 万。"
Hermes 后台自动记入 MEMORY.md:
[2026-04-19] 用户计划于 2026-05 月去日本旅行 10 天,预算 3 万元人民币。
下次任何涉及"日本""5 月"的话题,Hermes 都会主动提起这件事。
你能怎么和 MEMORY.md 互动
# 看看 Hermes 都记住了你些什么
hermes memory list
# 查找某个关键词相关的记忆
hermes memory search "日本"
# 手动让它记一件事
hermes memory add "我对花生过敏"
# 删除某条错误记忆
hermes memory delete <memory-id>
# 整体导出(备份)
hermes memory export ~/backup/memory.json
或者在交互模式里:
> /save 这件事很重要:周三下午 3 点要交需求文档
[Hermes] 已记下。
别让记忆"被污染"
记忆有一个常见坑:你随口说错的话也会被记下来。
例如你开玩笑说"我每年挣一个亿",Hermes 真的会记下来,下次涉及理财就会按"亿"的预算给你建议——尴尬且危险。
防治办法:
- 每月一次
hermes memory list,扫一眼有没有奇怪条目; - 在
SOUL.md里写明"开玩笑的话不要记"; - 重要的事用
/save显式让它记,不要靠它"自己悟"。
七、USER.md:你的"长期偏好画像"
USER.md 介于 SOUL.md 和 MEMORY.md 之间——它是 Hermes 基于和你的长期对话自动生成的画像。
你可以让它生成:
hermes memory user-profile generate
它会输出一份类似下面的文档:
# 用户画像(自动生成 2026-04-19)
## 基本风格
- 沟通:直接、不绕弯子、偏数据
- 决策:结果导向、低风险偏好
- 阅读:偏短文 + 列表,不喜欢长段落
## 工作上下文
- 行业:SaaS / 产品经理
- 常用工具:Notion、VS Code、Slack
- 最近 30 天高频话题:支付模块 v2、客户反馈、Q3 OKR
## 个人偏好
- 周末作息晚(凌晨 1 点睡)
- 喜欢日料、泰餐
- 关注的人:Naval、张一鸣、Paul Graham
这份画像每两周自动更新一次,你也可以手动 review、修改、导出。
八、上下文压缩:让 Hermes 不"健忘"
随着你和 Hermes 聊得越来越多,单次会话的内容会变得很长。LLM 都有"上下文窗口"限制(一次能看的字数),到了上限就会"忘"。
Hermes 用了两层办法解决这个问题:
8.1 自动压缩
当对话长度达到模型上下文窗口的 50% 时,Hermes 会后台自动总结前面,把详细的对话压缩成一段摘要,保留关键信息。
你不需要做任何事,但可以在配置里调整阈值:
memory:
context_compression:
threshold: 0.5 # 50% 时启动压缩
target: 0.3 # 压缩后控制在 30% 以内
8.2 记忆唤起
当你提到一个老话题时,Hermes 会自动从持久记忆里"翻出来"相关内容,注入到当前上下文。
例如你今天聊"出差去上海",Hermes 会自动想起"上次去上海你住的那家虹桥喜来登",并主动提起来。
这个能力的命令是:
> /memory recall 上海
[Hermes] 找到 4 条相关记忆:
1. [2026-01] 上次出差住虹桥喜来登,你说服务很好但早餐一般;
2. [2025-11] 上海的客户 ACME 老板姓陈;
...
九、实战:让 Hermes 学会"用我喜欢的方式给我写周报"
我们把这一章的所有概念串起来,做一个完整例子。
第一步:在 SOUL.md 里写偏好(一次性)
# 周报偏好
写周报时请按以下规则:
- 公司模板有 4 段:本周完成 / 关键数据 / 下周计划 / 需要支持
- 每段最多 5 条要点
- 每条要点配 1~2 个数字
- 不要用"全力以赴""赋能""抓手"这类词
- 写完最后一段后,给我列 3 个"老板可能会问的问题"和我准备的回答
第二步:第一次让它写
> 帮我写本周周报。本周做了:1) 支付模块 v2 上线;2) 处理 12 条客户反馈;3) 和销售对齐 Q3。
Hermes 会按你 SOUL 里的规则写。完成后会问你:"要保存为 Skill 吗?"——你说"要"。
第三步:从此之后
下次只要说"写周报",Hermes 会:
- 加载
weekly-reportSkill; - 自动从你过去一周的 Git 提交、Slack、邮件里找素材;
- 按你 SOUL 里的偏好写好;
- 顺带列出"老板可能问的问题"。
整个过程从你说出"写周报"到拿到草稿,不超过 90 秒。
本章一图回顾
┌─────────────────────────────────────────────────┐
│ Hermes 的"理解能力"由三件事决定: │
├─────────────────────────────────────────────────┤
│ 1. 提示词(短期一次性的指令) │
│ → 用五要素 XML 模板 │
│ │
│ 2. SOUL.md(长期的人格设定) │
│ → 你写一次,永远生效 │
│ │
│ 3. MEMORY.md / USER.md(自动累积的事实) │
│ → Hermes 自己边聊边记 │
│ → 你定期 review │
└─────────────────────────────────────────────────┘
提示词 = 子弹 SOUL = 枪膛 MEMORY = 弹匣
下章预告
提示词解决了"你怎么和 Hermes 说话",但 Hermes 真正去"做事"靠的是它的工具和技能。 第五章 工具、技能与记忆系统 会带你看清:
- Hermes 自带的 47 个内置工具是什么
- 怎么启用/禁用某些工具
- MCP 服务器:怎么把 Hermes 接到 GitHub、Postgres、Slack
- Skill 是什么、怎么自己写一个
- 三层记忆系统的真实存储结构