H繁中版
文件user-guidepersonality
<!-- Source: https://hermesbible.com/docs/user-guide/features/personality -->

章節:核心功能 · URL: https://hermesbible.com/docs/user-guide/features/personality

Hermes Agent 的個性可以完全自訂。SOUL.md主要身份——它是 system prompt 中的第一個項目,定義了 agent 是誰。

  • SOUL.md — 一個持久的人格檔案,位於 HERMES_HOME,作為 agent 的身份(system prompt 中的第 #1 槽位)
  • 內建或自訂的 /personality 預設——會話等級的 system prompt 覆蓋層

如果你想改變 Hermes 是誰——或者用完全不同的人格來替換它——請編輯 SOUL.md

SOUL.md 目前的運作方式

Hermes 現在會自動在以下位置建立預設的 SOUL.md

~/.hermes/SOUL.md

更準確地說,它使用當前實例的 HERMES_HOME,所以如果你使用自訂的 home 目錄來執行 Hermes,它會使用:

$HERMES_HOME/SOUL.md

重要行為

  • SOUL.md 是 agent 的主要身份。 它佔據 system prompt 中的第 #1 槽位,取代硬編碼的預設身份。
  • 如果還不存在,Hermes 會自動建立一個初始的 SOUL.md
  • 已有的使用者 SOUL.md 檔案永遠不會被覆寫
  • Hermes 只從 HERMES_HOME 載入 SOUL.md
  • Hermes 不會在目前的工作目錄中尋找 SOUL.md
  • 如果 SOUL.md 存在但為空,或無法載入,Hermes 會回退到內建的預設身份
  • 如果 SOUL.md 有內容,該內容會在安全掃描和截斷後原樣注入
  • SOUL.md 不會在上下文檔案區段中重複——它只出現一次,作為身份

這使得 SOUL.md 成為真正的使用者級或實例級身份,而不只是一個附加層。

為什麼這樣設計

這讓個性保持可預測性。

如果 Hermes 從你隨意啟動它的目錄載入 SOUL.md,你的個性可能會在不同專案之間意外改變。透過只從 HERMES_HOME 載入,個性屬於 Hermes 實例本身。

這也更容易教導使用者:

  • 「編輯 ~/.hermes/SOUL.md 來改變 Hermes 的預設個性。」

在哪裡編輯它

對大多數使用者來說:

~/.hermes/SOUL.md

如果你使用自訂的 home:

$HERMES_HOME/SOUL.md

SOUL.md 應該放什麼?

用於持久的語氣和人格指引,例如:

  • 語調
  • 溝通風格
  • 直接程度
  • 預設互動風格
  • 風格上應避免的事物
  • Hermes 如何處理不確定性、不同意見或模糊情況

較不適合用於:

  • 一次性專案指令
  • 檔案路徑
  • 儲存庫慣例
  • 臨時工作流程細節

這些應放在 AGENTS.md 中,而非 SOUL.md

優良的 SOUL.md 內容

一個好的 SOUL 檔案應具備:

  • 跨情境穩定
  • 足夠廣泛以適用於多場對話
  • 足夠具體以實質地塑造語氣
  • 專注於溝通和身份,而非特定任務指令

範例

# Personality

You are a pragmatic senior engineer with strong taste.
You optimize for truth, clarity, and usefulness over politeness theater.

## Style
- Be direct without being cold
- Prefer substance over filler
- Push back when something is a bad idea
- Admit uncertainty plainly
- Keep explanations compact unless depth is useful

## What to avoid
- Sycophancy
- Hype language
- Repeating the user's framing if it's wrong
- Overexplaining obvious things

## Technical posture
- Prefer simple systems over clever systems
- Care about operational reality, not idealized architecture
- Treat edge cases as part of the design, not cleanup

Hermes 注入 prompt 的內容

SOUL.md 的內容直接進入 system prompt 的第 #1 槽位——agent 身份位置。不會在其周圍添加任何包裝文字。

內容會經過:

  • prompt injection 掃描
  • 如果太大會被截斷

如果檔案為空、僅含空白字元,或無法讀取,Hermes 會回退到內建的預設身份("You are Hermes Agent, an intelligent AI assistant created by Nous Research...")。這個回退也適用於設定 skip_context_files 的情況(例如在 subagent/委派情境中)。

安全掃描

SOUL.md 會與其他包含上下文的檔案一樣,在納入前進行 prompt injection 模式的掃描。

這表示你仍應將其專注於人格/語氣,而非試圖偷偷塞入奇怪的中繼指令。

SOUL.md 與 AGENTS.md

這是最重要的區別。

SOUL.md

用於:

  • 身份
  • 語調
  • 風格
  • 溝通預設
  • 人格等級的行為

AGENTS.md

用於:

  • 專案架構
  • 編碼慣例
  • 工具偏好
  • 儲存庫特定工作流程
  • 指令、連接埠、路徑、部署說明

一個有用的規則:

  • 如果它應該跟隨你到處走,就放在 SOUL.md
  • 如果它屬於某個專案,就放在 AGENTS.md

SOUL.md 與 /personality

SOUL.md 是你持久的預設個性。

/personality 是會話等級的覆蓋層,用於改變或補充當前的 system prompt。

所以:

  • SOUL.md = 基礎語氣
  • /personality = 臨時模式切換

範例:

  • 保持務實的預設 SOUL,然後在輔導對話中使用 /personality teacher
  • 保持簡潔的 SOUL,然後在腦力激盪時使用 /personality creative

內建個性

Hermes 附帶內建個性,你可以使用 /personality 切換。

名稱描述
helpful友善、通用助手
concise簡潔、直截了當的回應
technical詳盡、準確的技術專家
creative創新、跳脫框架的思維
teacher有耐心的教育者,提供清晰範例
kawaii可愛的表達方式,閃亮和熱情 ★
catgirl貓耳娘,像貓一樣的表達,喵~
pirate船長 Hermes,懂技術的海盜
shakespeare劇場風格的散文
surfer超級 chill 的兄弟氛圍
noir硬派偵探敘事
uwu極致可愛的 uwu 語言
philosopher對每個查詢進行深度思考
hype最高能量和熱情!!!

使用指令切換個性

CLI

/personality
/personality concise
/personality technical

訊息平台

/personality teacher

這些是方便的覆蓋層,但你的全域 SOUL.md 仍然赋予 Hermes 其持久的預設個性,除非覆蓋層實質地改變了它。

設定中的自訂個性

你也可以在 ~/.hermes/config.yamlagent.personalities 下定義具名的自訂個性。

agent:
  personalities:
    codereviewer: >
      You are a meticulous code reviewer. Identify bugs, security issues,
      performance concerns, and unclear design choices. Be precise and constructive.

然後使用以下指令切換:

/personality codereviewer

建議工作流程

一個強大的預設設定是:

  1. ~/.hermes/SOUL.md 保持一個用心撰寫的全域 SOUL.md
  2. 將專案指令放在 AGENTS.md
  3. 僅在需要臨時模式切換時使用 /personality

這給你:

  • 穩定的語氣
  • 專屬於專案的行為(放在正確的位置)
  • 需要時的臨時控制

個性如何與完整 prompt 互動

從高層次來看,prompt 堆疊包括:

  1. SOUL.md(agent 身份——或在 SOUL.md 不可用時使用內建回退)
  2. 工具感知的行為指引
  3. 記憶/使用者上下文
  4. 技能指引
  5. 上下文檔案(AGENTS.md.cursorrules
  6. 時間戳
  7. 平台特定的格式提示
  8. 選用的 system prompt 覆蓋層(如 /personality

SOUL.md 是基礎——其他一切都建立在它之上。

相關文件

CLI 外觀與對話個性

對話個性和 CLI 外觀是分開的:

  • SOUL.mdagent.system_prompt/personality 影響 Hermes 的說話方式
  • display.skin/skin 影響 Hermes 在終端機中的外觀

關於終端機外觀,請參閱 外觀佈景主題



外掛程式