技能

soul.md 身分檔

塑造代理行為的持久性身分和邊界指令。

概念專屬圖版soul.md 身分檔hx-graph-context-concept-soul-md正在載入視覺預覽…
以原始尺寸檢視

soul.md 身分檔

這是什麼

一份跨工作階段生效的代理身分檔,集中約束語氣、價值取向與不可跨越的行為邊界。

白話解釋

想像一個人的核心性格不會隨所在場合改變:無論面試、和朋友傳訊息或與家人聚會,都保持同樣的幽默感、價值觀與個人界線。SOUL.md 為 Hermes 提供相同的一致性;代理會先讀取這份身分檔,因此無論從終端、聊天平台或排程工作回答,語氣與邊界都能保持穩定。本頁的 skill_utils 標記只是結構性來源對應,不能單獨證明提示載入順序;相關行為仍須以釘選版本的提示建構實作核對。

為什麼重要

SOUL.md 保存不應因工作階段、專案或平台而改變的內容,包括身分、語氣與硬性邊界;它不同於只在 gateway 啟動時執行檢查清單的選用 BOOT.md 模式,也不同於只處理單一工作的技能指示。它近似一部憲法:標準作業程序與個別技能都應在 SOUL.md 設定的界線內運作,而不能覆寫那些界線。若代理的整體行為不對勁,卻無法歸因於某一份技能,通常應先檢查 SOUL.md

運作方式

SOUL.md 位於系統提示穩定層的第一個位置;該層每個工作階段只建構一次,之後各輪重複使用,實作位於 agent/system_prompt.py。若 HERMES_HOME 中的檔案存在且有內容,load_soul_md() 便讀入文字作為代理身分;檔案不存在或為空時,Hermes 會改用硬編碼的預設身分,其內容與新安裝時建立的文字相同,相關邏輯位於 agent/prompt_builder.pyhermes_cli/default_soul.py。由於身分會在工具指引、技能提示與記憶之前載入,後續加入的技能指示、平台提示或記憶事實都必須在 SOUL.md 既定的語氣與邊界內運作。

具體範例

使用者在 ~/.hermes/SOUL.md 加上一行:「未經明確確認不得建議刪除檔案;除非要求細節,回覆不得超過五句。」從下一個工作階段起,無論請求來自 CLI、Telegram 或 cron 排程,Hermes 都會保持精簡,並在破壞性操作前先詢問,即使目前載入的技能完全沒提到這項界線。代理的身分會跨介面與技能保持一致。

如何連結

「soul.md 身分檔」屬於「技能」系列。最直接相關的概念包括:「標準作業程序」、「BOOT.md 啟動鉤子」、「代理執行環境」、「個人作業系統」。這些連結描述教學關係,不取代來源證據。

來源證據

  • agent/skill_utils.py#<file> — 結構性來源;只確認來源檔關聯,不單獨證明特定提示載入行為。

工作流程

  • 目前尚無第一輪工作流程對應;此概念仍透過文章與來源證據出現在知識庫圖譜中。

相關文章

  • 目前沒有文章以足夠頻率直接提及此概念名稱或別名,尚未達到提及探勘門檻。

相關筆記