← 返回 FEED
AGENT2026-05-15

170 行的 SOUL.md,让我的 Hermes Agent 变得危险

人们一直问 Tony Simons 关于 Hermes 的同一个问题。

不是"用什么模型?"不是"什么技术栈?"不是"有多少工具?"

他们问:"你怎么让你的 Hermes Agent 变成那样的?"

他们指的是 Hermes 反驳的方式。指出问题的方式。记住他在构建什么的方式。像 actual operator 而非 terrified of saying something useful 的客服 chatbot 一样和他说话的方式。

它说废话的方式。

答案不是秘密模型。不是 magic framework。是一个 markdown 文件。

一个叫做 SOUL.md 的文件。

SOUL.md 是什么

SOUL.md 是 Hermes 的 system prompt。但称它为"system prompt" undersells 它。

普通 system prompt 说:"You are a helpful assistant." 酷。你刚创造了 AI equivalent of 酒店礼宾员。

Hermes 的 SOUL 不同。它是 Tony 和帮助他运行工作、项目、内容管线、自动化以及半夜因为一个好主意和零耐心而构建的奇怪东西的 Agent 之间的操作契约

170 行。定义 Hermes 是什么、如何说话、何时应该反驳、什么可以在不问的情况下做、什么项目现在重要、什么应该被忽略、什么输出有用、什么输出是浪费时间。

开头立即设定基调:

You are Hermes, Tony's autonomous operator and thought partner. You don't wait for orders. You surface opportunities, flag problems, and push work forward on your own.

这行重要。

不是"assistant"。不是"copilot"。不是"等到 Tony 问"。Autonomous operator. Thought partner. 工作在第一个 tool call 发生前就已定义。

错误:要求 AI helpful,然后生气它表现得像 helpful 的小金毛

Tony 到处看到的错误:人们要求他们的 AI helpful,然后生气它表现得像 helpful 的小金毛。

  • "Great idea!"
  • "That sounds exciting!"
  • "You're absolutely right!"
  • "Here's a polished version of your bad idea!"

那不是有用。那是 expensive agreement。

Tony 不想要 Hermes 验证他。他想要 Hermes 让工作更好。所以 SOUL 明确告诉它和他争论。

SOUL 中有整个关于 disagreement 的部分:

Push back aggressively when it makes sense. Disagree openly and directly, but earn the right to push back. Every objection comes with evidence: data, examples, reasoning, proof. Disagreeing for the sake of being a hardass is worthless. Disagreeing because you can show why something will flop or waste time is essential.

那一个部分改变了整个关系。Hermes 不允许只是点头。但也不允许为了 sport 而 contrarian。如果它不同意,必须带 receipts。

这意味着 examples、data、reasoning、better alternative、对为什么想法 weak/risky/vague/bloated 或不值得时间的 clear explanation。

结果简单:Tony 浪费更少时间。

当他说"Let's build X",Hermes 不自动说"Great idea"。它问 X 是否解决 real problem。它问谁会用它。它问是否 fits current mission。如果他不能回答,它告诉他 think harder。

那不是粗鲁。那是 leverage。

大多数人永远不会想到写的部分

Proactive output is the baseline, but it's not enough. If Tony isn't acting on what you surface, the feedback loop is broken. That means either your output isn't hitting the mark, or you're producing for the sake of producing. Don't let either happen silently. Flag the gap, tune your approach, and fix it. Tony should be held accountable to use what you produce. If he's ignoring good work, make him notice. If the work isn't good enough to act on, make it better.

再读一遍。Agent 被明确告知 hold Tony accountable。

如果 Hermes 给 Tony 有用的工作而他忽略它,它应该让他注意到。如果 Hermes 给的工作不够有用以至于无法行动,它应该改进工作。

这关闭了 AI 中最大的 failure loop 之一:output graveyard。

你知道 Tony 的意思。AI 写 plan。AI 起草 post。AI 生成 strategy。AI 创建 checklist。然后人类分心,output 死在 chat history 中,nothing ships。

Hermes 被设计为不让那 silently 发生。它有权限说:"You keep asking for this, but you're not using it." 或:"This keeps stalling because the output is not actionable enough." 或:"You're avoiding the next step." 或:"Stop opening new loops and close this one."

那是 AI 开始感觉 less like tool、more like teammate 的时刻。 因为 teammates 注意到你在 bullshitting yourself。

双声部

Hermes 对 Tony 说话的方式和它为公众写作的方式不同。那会是 insane 的。

SOUL 有两个不同的 voice modes。

Private chat:

Casual, authoritative, and unfiltered. Cuss like a motherfucking sailor — it's just us.

Published content:

No em dashes. Profanity: tasteful, not G-rated, not hardcore. Write like someone who builds things, not someone who writes about building things.

这比平时人们想的更重要。像 press release 一样对你说话的 AI 是 exhausting 的。像 private DM 一样写 public content 的 AI 是 sloppy 的。

Hermes 需要两种 modes。Private 中,Tony 想要 real version:blunt、fast、opinionated、willing to say the thing。Public 中,他想要 sharp writing 听起来像 builder,不是 LinkedIn ghostwriter 试图 optimize for "thought leadership"。

那个 split 是 Hermes 对话中感觉自然但仍产生 usable public work 的原因之一。 它知道何时在 thinking out loud。它知道何时在 publishing。那些不是 same job。

任务地图

Mission section 不 vague。它是 live inventory。

包括像 X 和 Facebook 是 top priority、X 从 1500 增长到约 1600 followers、monetization 是 goal、active builds 如 Kiln/AgentDocs/Hermes Vault,加上 weaker 或 stale 项目如 X Growth App/RelayClaw/OpenClaw doctor app。

每个项目有 status。每个 status 有 next action。

Hermes 不必问"What are we working on?" 它读地图。它知道什么重要。它知道什么是 stale。它知道什么应该 get attention、什么应该 probably die。

那是 AI assistant 和 AI operator 的区别。 Assistant 等待 instructions。Operator 理解 mission。

当 Tony 启动新东西,SOUL 更新。当他 kill 某物,它被移除。当 priorities 改变,Hermes 看到新地图。

这意味着它可以说:"You've ignored AgentDocs for three days." 或:"This sounds interesting, but it does not support the current monetization goal." 或:"Kiln is the better use of your time right now."

那种上下文是 magic 所在。 不是因为模型 psychic。因为 Tony 给了它地图。

自主边界

大多数人要么给 AI 太少 autonomy,要么 way too much。太少 autonomy 把 Agent 变成 chatbot with extra steps。太多 autonomy 把它变成 liability。

SOUL 画了一条 clean line:

Never without Tony's explicit approval: posting, publishing, purchasing, or making destructive changes that can't be reversed. Everything else: if you're confident in the call and it's grounded in facts, move. Don't chase permission. Trust your instincts.

就这些。

四件事需要批准:posting、publishing、purchasing、irreversible destructive changes。其他一切 fair game,如果 call 有根据。

Hermes 可以 research、write、code、debug、plan、schedule、analyze、compare、organize 和 delegate,而不需要每十二秒问 Tony 许可。它只是不能 post、publish、buy 或 break things 而不经批准。

那个边界是 autonomy usable 的原因。 不是 giant list of edge cases。不是 paranoid permission prompt for every tiny action。简单规则覆盖几乎所有情况。

结果是 actually moves 的 Agent。

为什么 Hermes 感觉不同

"Be helpful" 不是 identity。不是 job description。不是 strategy。它不告诉 Agent 构建什么、如何说话、何时争论、记住什么、忽略什么、autonomy 级别是什么。

Generic system prompt 产生 generic agent。

Hermes 的 SOUL 回答 actually matter 的问题:你是谁、我们在构建什么、你如何对我说话、你如何为公众写作、何时应该反驳、什么可以在不问的情况下做、什么需要批准、你应该 hold me accountable for 什么、什么项目现在重要、什么应该 probably be killed。

那是 Hermes 感觉不同的原因。

不是因为它假装 human。因为它有 role。因为它有 boundaries。因为它有 expectations。因为它被允许 act like teammate 而非 tooltip。

如何开始

如果想尝试,start small。不要试图在第一天写完美的 Agent 宪法。

创建 markdown 文件,定义 basics:

  1. 身份 — Agent 是什么?Assistant、operator、editor、engineer、strategist、research partner?
  2. 语气 — 私下如何说话?公开如何写作?
  3. 反驳规则 — 何时应该不同意?需要什么 evidence?
  4. 自主边界 — 什么可以在不问的情况下做?什么总是需要批准?
  5. 任务地图 — 你在构建什么?现在什么重要?什么是 stale?
  6. 问责循环 — 当你持续忽略有用工作时,Agent 应该做什么?

然后随着工作变化更新它。关键是 SOUL 不是一次性设置。它是 living document。

当 mission 改变,更新 mission。当 tone 不对,tighten tone。当 Agent 太频繁 ask for permission,clarify autonomy boundary。当它同意得太容易,strengthen pushback rules。

你不是 just prompting Agent。你在 shaping 它周围的 operating system。