進階操作

如何比大多數人更善用 Hermes:架構、專案隔離與可擴展工作流程

針對 VPS 操作、記憶、漸進式技能、專案隔離、設定檔、委派與基於證據的工作流程的可擴展架構。

文章主視覺圖版如何比大多數人更善用 Hermes:架構、專案隔離與可擴展工作流程hx-article-16-hermes-best-practices正在載入視覺預覽…
以原始尺寸檢視

如何比大多數人更善用 Hermes:架構、專案隔離與可擴展工作流程

關於 VPS 部署、模型選擇、記憶、漸進式技能、設定檔、委派與真實自動化的最佳實踐指南。

大多數 Hermes 設定會變得混亂,原因是可以預測的:安裝、記憶、專案檔案、技能、憑證與自動化任務被允許累積,卻沒有一套架構。代理可能仍然會回應,但沒有人能解釋哪些檔案是權威的,或哪個設定檔擁有哪個工作流程。

一個可擴展的設定始於隔離與明確的結構。系統應讓人容易回答:Hermes 在哪裡執行?哪個模型處理這項任務?代理知道什麼?哪個技能是啟用的?專案檔案儲存在哪裡?什麼被排程了?誰核准結果?

根據可用性選擇本機或 VPS 部署

本機部署提供直接存取,適合實驗。當 Hermes 必須保持線上、接收 Telegram 訊息與持續執行 cron 任務時,VPS 是更好的選擇。

伺服器應使用金鑰式 SSH 存取、最新的套件、受限制的防火牆,以及在可能的情況下使用非公開的閘道。記錄安裝與設定過程,以便實例可以重建。

在新增工具之前,先驗證 Hermes 能在重新啟動後存活,並且備份能捕捉其重要狀態。

理解模型角色

主要模型處理主要的代理循環,但每個任務並不需要相同的模型。一個強大的推理模型可以處理規劃與綜合。較便宜的模型可以處理例行分類。專業工具可以在完全不需要模型的情況下處理搜尋或提取。

模型選擇會影響工具可靠性、成本與上下文容量。使用分配給技能的確切模型來測試重要的技能。在一個提供者上成功的工作流程,可能在切換後失敗。

將提供者憑證保存在儲存庫之外,並維護一個已知的備援方案。

學習操作指令

Hermes 提供了用於工作階段、模型、排程、技能與系統狀態的指令。使用已安裝版本的說明文件,而不是依賴舊的教學。

關鍵的習慣是檢查。在建立新的任務之前先列出任務。在假設背景之前先檢查活躍的工作階段。在比較輸出品質之前先檢查當前的模型。在工具失敗後閱讀日誌。

指令之所以有用,是因為它們暴露了狀態。操作者不應完全依賴於對話式的系統狀態聲明。

將記憶作為架構來設計

記憶應按用途劃分:

  • 身分描述代理的行為方式;
  • 使用者記憶儲存穩定的偏好與事實;
  • 專案記憶儲存決策與當前狀態;
  • 工作階段歷史記錄對話;
  • 技能儲存程序;
  • 成果儲存輸出與證據。

不要將所有資訊放在一個龐大的記憶檔案中。這會浪費上下文並產生衝突。持久的專案事實應歸屬於專案。全域使用者記憶應保持簡短。

定期審查記憶。過時的指令比遺漏的瑣事更危險,因為它們會以虛假的信心影響後續任務。

在技能中使用漸進式揭露

漸進式揭露意味著只向代理顯示當前任務所需的指令。頂層技能說明其適用時機,並在需要時指向更深層的參考資料或腳本。

這讓初始上下文保持精簡,並減少干擾。研究技能可能只在研究開始時載入來源評估規則,然後只在起草時載入特定的報告模板。

技能應重複使用腳本與模板,而不是嵌入大量文字區塊。它們應包含驗證步驟與清晰的失敗訊息。當另一個工作階段可以在沒有原始作者隱藏知識的情況下使用它時,該技能才算成功。

在檔案系統中隔離專案

每個專案應有自己的目錄,包含上下文、輸入、輸出與任務特定筆記。共享技能可以放在共同的位置,但專案資料不應混合。

一個簡單的結構可能包括:

  • context/ 用於簡報與限制條件;
  • inputs/ 用於來源材料;
  • work/ 用於中間檔案;
  • outputs/ 用於已核准的交付成果;
  • logs/ 用於執行記錄。

代理應明確接收專案路徑。檔案工具應盡可能限制在預期的工作區內。

隔離改善了安全性,並防止一個客戶的資訊出現在另一個客戶的輸出中。

設定檔是角色;委派是任務關係

設定檔定義了一個持久的操作身分,擁有自己的工具、模型與記憶。委派則將特定任務分配給另一個代理或子代理。

當角色重複出現時使用設定檔:研究員、開發者、客戶操作員或財務分析師。當一個有範圍限制的任務可以獨立完成並回傳給協調代理時,使用委派。

不要為每個小任務建立永久的設定檔。不要委派高度依賴不斷變化的共享背景的工作。選擇能讓擁有權最清晰的機制。

圍繞證據建立工作流程

一個真正的工作流程始於觸發,終於可驗證的成果。以股票研究代理為例:

  1. 每日排程啟動工作流程。
  2. 代理載入投資組合與研究政策。
  3. Firecrawl 或其他提取工具收集核准的公開來源。
  4. 代理將新資訊與先前的筆記進行比較。
  5. 它撰寫一份包含引用的結構化報告。
  6. Kanban 卡片記錄完成或阻礙因素。
  7. 報告被送達供人員審查。

代理不應僅僅因為產出了研究報告就執行交易。分析與財務動作需要分開的權限與風險控制。

結合 Kanban 與 Cron 任務

Cron 任務建立重複的工作,而 Kanban 暴露狀態。排程可以在執行開始時建立或更新一張卡片。當成果準備好時,卡片移動到等待核准;只有在接受後才移動到完成。

失敗的執行應建立一個可見的受阻狀態,並附上錯誤與日誌位置。對於一個永遠線上的系統來說,無聲的失敗是不可接受的。

這個模式適用於每日報告、內容研究、系統監控與客戶交付成果。

狹義地整合工具

Firecrawl 與類似工具可以收集網路內容以供研究之用。給代理一個定義的來源清單、爬取限制與儲存位置。遵守 robots 規則、服務條款與著作權。

每個整合都應有明確的目的。不要僅僅因為工具可用就安裝它們。更多的工具會增加上下文、憑證、更新與可能的失敗模式。

在啟用動作功能之前,先測試一個唯讀功能。在專案日誌中記錄確切的錯誤。

操作者檢查清單

在認為設定成熟之前,請確認:

  • Hermes 能重新啟動並保持可連線。
  • 備份可以還原。
  • 機密資料在儲存庫之外。
  • 全域記憶簡短且經過審查。
  • 專案使用不同的目錄。
  • 技能漸進式載入資訊。
  • 設定檔具有不同的角色與權限。
  • 委派的任務有輸出合約。
  • Cron 任務有時區、限制與傳送路徑。
  • Kanban 或其他儀表板能顯示失敗與核准。
  • 重要的輸出包含證據與引用。
  • 高風險操作仍受人類控制。

更好的使用意味著更少的隱藏複雜性

最好的 Hermes 操作者不是擁有最多代理或整合的人。而是能夠檢查系統、解釋每個工作流程、從失敗中恢復,並知道哪些資訊影響了輸出的人。

架構創造了這種清晰度。記憶與程序分離。專案被隔離。技能漸進式地揭露資訊。設定檔定義持久的角色。委派保持有範圍限制。排程產生可見的證據。

透過這些實踐,Hermes 可以在研究、客戶、營運與自動化之間擴展,而不會變成一個無法維護的提示詞與憑證集合。

動手實作:隔離研究設定檔與專案工作區

**成果:**具名設定檔會從一個明確的專案目錄開始,並且只在該工作區產出含引用的報告。

**時間:**15–25 分鐘。

**風險:**中。設定檔會分隔 Hermes 狀態,但 terminal.cwd 只是起始目錄,不會強制建立檔案系統沙箱。

開始之前

使用已設定的預設設定檔與非敏感研究問題。--clone 會複製目前設定檔的設定、.envSOUL.md 與技能,因此要先確認這些憑證是否適合新的角色。

把資訊放在範圍最窄、仍足以使用的記憶層:

層級 適合放入 只有在以下情況才升級 不要放入
靜態設定檔記憶(USER.md / MEMORY.md 應影響此設定檔大多數工作階段的穩定偏好、環境事實與慣例。 事實已驗證、跨工作階段仍有用,而且短到可以人工審查。 秘密、暫時任務狀態、原始對話逐字稿與專案雜訊。
每日或專案筆記 專案 context/logs/outputs/ 下的一般 Markdown;這些檔案由使用者管理,不會自動注入為內建記憶。 決策或狀態屬於此專案、需要來源追溯,或會隨工作變動。 無來源主張,以及憑證或關鍵備份的唯一副本。
外部記憶提供者 需要跨多個工作階段檢索、超出內建檔案容量的已審查知識;同時只能啟用一個提供者,且它是內建記憶的附加層。 回憶效益足以承擔提供者的成本、保留與隱私邊界,而且已測試更正或刪除流程。 未篩選的敏感資料傾倒,以及只應留在單一專案的事實。

採用簡單的升級規則:先把證據記在專案內;只有當它證明長期有效且可廣泛重用時,才升級到靜態或外部記憶;來源變更時要刪除或更正。

mkdir -p "$HOME/hermes-projects/source-grounded-research/context"
mkdir -p "$HOME/hermes-projects/source-grounded-research/inputs"
mkdir -p "$HOME/hermes-projects/source-grounded-research/outputs"
mkdir -p "$HOME/hermes-projects/source-grounded-research/logs"

cat > "$HOME/hermes-projects/source-grounded-research/context/brief.md" <<'EOF'
# 研究簡報
問題:Hermes 新手操作者最先應測試哪些 Cron 控制項?
必要輸出:outputs/report.md
證據規則:每一項操作主張都引用 Hermes 官方文件 URL。
邊界:不要發佈、傳送訊息或修改這個專案以外的檔案。
EOF

動手完成

建立研究用設定檔、綁定其預設工作目錄,並在該設定檔下執行一個有明確邊界的非互動任務。

hermes profile create research-lab \
  --clone \
  --description "讀取核准來源並撰寫含引用的研究成果。"

hermes -p research-lab config set terminal.cwd "$HOME/hermes-projects/source-grounded-research"

hermes profile show research-lab
hermes -p research-lab doctor

hermes -p research-lab chat -q "讀取 context/brief.md 並完成要求。只建立 outputs/report.md。包含「來源」與「不確定事項」段落。如果官方來源無法支持主張,停止並回報阻礙。"

驗證成功

檢查設定檔內容與實際成果,不要只依賴代理程式的完成訊息。

hermes -p research-lab config show | rg -n "terminal|cwd"
test -s "$HOME/hermes-projects/source-grounded-research/outputs/report.md"
rg -n "來源|不確定事項|https://hermes-agent.nousresearch.com/docs/" "$HOME/hermes-projects/source-grounded-research/outputs/report.md"

成功條件是:research-lab 顯示正確的 cwd,而且報告留在 outputs 並包含官方引用。

發生問題時

  • 如果建立設定檔時顯示名稱已存在,使用 hermes profile show research-lab 檢查,不要直接刪除。
  • 如果工具從其他位置開始,使用絕對路徑再次設定 terminal.cwd,並開始新的工作階段。
  • 如果報告缺少引用,收緊完成提示詞,並把目前成果視為失敗草稿。
  • 如果需要強制檔案隔離,請改用具有沙箱隔離的終端機後端或容器;設定檔與 cwd 本身不是安全控制。

安全、隱私與成本

設定檔會分隔設定、工作階段、記憶、技能、Cron 任務與閘道器狀態,但本機後端仍沿用同一個作業系統使用者的檔案權限。不要把設定檔當成租戶隔離。只複製該角色需要的憑證、讓不同客戶專案使用不同目錄、先採用唯讀來源,並在排程工作流程前檢查該設定檔的模型與工具成本。

官方參考


來源影片: How to use Hermes Agent better than 99% of people,Nemanja Mirkovic。根據完整逐字稿改編重組;已移除推廣內容。

提及的概念

本文的知識庫鄰近領域。

實作工作流程

把本文概念轉成可執行步驟。