這篇 Hermes Agent 進階教學要解決一個常見落差:裝好 AI Agent,不等於有一套會累積的工作系統。差別在於它能否記住長期背景、重用固定流程、準時自行啟動,並拿出可檢查的證據。
這篇 Hermes Agent 進階教學會帶你把四層接起來,完成「每週會議整理」工作流:讀取筆記、抽出決策與待辦、檢查結果,再由 Cron 定時執行。同一骨架也能換成研究摘要或例行監控。
如果你還不熟悉 Hermes 的定位、模型與 Claude Code/Codex 的差別,先讀〈Hermes Agent 是什麼〉;這篇直接實作。截至 2026 年 7 月 28 日,最新已發布版本是 Hermes Agent v0.19.0(v2026.7.20);官方 main 仍持續更新,版本與查核日要一起看。
Hermes Agent 進階教學先說結論:把 4 層接成閉環
Hermes 工作系統 = Memory(記住)+ Skills(照做)+ Cron(準時做)+ Check(做完再驗)
- Memory 是名片。只放每次工作都要知道的偏好、環境與規則,不放整份逐字稿。
- Skills 是 SOP。把輸入、步驟、輸出格式、例外與驗收標準寫成可重複程序。
- Cron 是鬧鐘。在指定時間開一個全新工作階段,載入技能並執行自足的任務說明。
- Check 是交件條件。明確寫出「什麼才算完成」及「用什麼證據確認」,不是一句「請仔細檢查」。

這個拆法與〈AI Agent Harness 是什麼〉的核心一致:模型只是大腦,真正決定結果穩不穩的是外圍的狀態、工具、迴圈與回饋。想先用最小偽代碼理解它,可以搭配〈動手搭一個最小 AI Agent Harness〉。
如果你想先理解更廣義的長期養成架構,〈個人 AI Agent 怎麼養〉已經談過記憶整理、回饋迴圈與技能膨脹;這篇只處理 Hermes 裡的具體設定、測試與故障恢復。
Hermes Agent 進階教學實作前:這篇會做出什麼?
完成後,你會得到一個名為 weekly-meeting-digest 的技能,以及一個每週五 17:30 執行的排程。它會處理 ~/hermes-work/meetings/ 內最近七天的 Markdown 筆記,將結果寫入 ~/hermes-work/reports/,並產出三個固定區塊:
- 已確認決策:只收錄筆記明確寫出的結論。
- 行動項目:列出工作、負責人、期限;原文沒寫就標「未指定」,不自行補猜。
- 待釐清事項:把矛盾、缺資料與沒有答案的問題留在檯面上。
你需要一台能安裝 Hermes 的 macOS、Linux、WSL2 或 Windows 電腦,並先完成模型設定。排程要準時執行,機器必須開著,而且 Gateway 服務必須運作;關機中的筆電不會憑空醒來跑任務。若你只想先測流程,可以先手動執行,不急著接 Telegram。
步驟 1:安裝或更新 Hermes,先讓基本對話穩定
官方目前提供 macOS Apple Silicon、Windows 10/11 與 Linux 桌面版;這篇採 CLI/TUI,因為每一步都能複製、重跑與查錯。全新安裝時,macOS、Linux、WSL2 與 Android Termux 可使用官方安裝器:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Windows PowerShell 則使用:
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
已經裝過的人先更新,再跑健康檢查與新版 TUI:
hermes update
hermes doctor
hermes --tui
第一次使用還要跑 hermes setup 選模型與授權工具。先在普通對話中完成一個讀檔、寫檔的小任務,再往下加記憶與排程;官方快速入門也採取「先確認基礎聊天,再逐層加功能」的順序。完整平台差異可查閱官方安裝文件。
步驟 2:用 Memory 記原則,不要拿它當資料倉庫
Hermes 的持久記憶不是無限對話紀錄。官方的記憶文件把它拆成兩份:MEMORY.md 用來記環境、專案慣例與工作教訓,上限 2,200 字元;USER.md 用來記你的角色、偏好與溝通方式,上限 1,375 字元。兩者都放在 ~/.hermes/memories/。
最重要的邊界是:記憶在每個工作階段開始時才注入,形成固定快照。你在這一輪新增的內容會立即寫入磁碟,但要到下一個新工作階段才會成為提示的一部分。另外,容量滿時系統不會偷偷壓縮;寫入會先失敗,再要求代理在同一輪合併或刪掉舊項目。
教學階段先打開寫入審核,避免 Hermes 把一次性的猜測當成長期偏好:
/memory approval on
接著貼上這段,讓它記住這套工作流真正需要的長期規則:
請把以下規則存成長期記憶:
1. 我的工作時區是 Asia/Taipei。
2. 會議摘要使用繁體中文,先寫決策,再寫行動項目。
3. 原始筆記沒有負責人或期限時,一律標示「未指定」,不要推測。
4. 工作目錄是 ~/hermes-work。
若寫入被暫存,用下面三步審核:
/memory pending
/memory approve <id>
/new memory-check
在新工作階段問「我的會議摘要規則是什麼?」若它能正確重述,才算 Memory 這層通過。逐字稿、長報告與臨時路徑不要塞進 Memory;它們應留在檔案或可搜尋的歷史工作階段裡。

步驟 3:用 Skills 把一次成功,變成下次照做
Memory 告訴 Hermes「你偏好什麼」,Skill 才告訴它「這件事要怎麼做」。所有技能位於 ~/.hermes/skills/,需要時才載入完整內容,避免每次對話都帶著整本 SOP。官方的 Skills 文件也提供 /learn:它能從本機資料夾、網址、剛走過的流程或你貼上的規則建立技能。想更深入理解「資源如何變成可測試技能」,可延伸閱讀〈Resource2Skill:把資料轉成 Skill〉。
先開啟技能寫入審核:
/skills approval on
再把下面整段交給 /learn。這裡刻意把「輸入、輸出、禁止事項、驗收」全部寫明,因為可重複性來自契約,不是來自一句「整理得專業一點」。
/learn 建立名為 weekly-meeting-digest 的技能。
用途:
讀取工作目錄 meetings/ 內指定期間的 Markdown 會議筆記,
把結果寫入 reports/YYYY-MM-DD-weekly-meeting-digest.md。
輸出順序:
1. 已確認決策
2. 行動項目(事項、負責人、期限、來源檔名)
3. 待釐清事項
規則:
- 只使用來源筆記中明確存在的資訊。
- 沒有負責人或期限就寫「未指定」,不得推測。
- 每一項決策與待辦都要標示來源檔名。
- 沒有內容的區塊仍要保留,並寫「本期無」。
- 報告以週起始日作為唯一鍵;若相同來源清單已處理,回傳既有報告,不重複建立。
- 若同一週的來源內容改變,另建帶 updated-HHMM 的修訂版,不覆寫舊報告。
完成前檢查:
- 所有來源檔案都成功讀取。
- 每個行動項目都有事項、負責人、期限、來源四欄。
- 報告檔案存在且不是空檔。
- 最後回報輸入檔數、決策數、行動項目數、輸出路徑與是否為重複執行。
建立後不要立刻信任它。若畫面直接顯示 inline approval,就當場讀完;若寫入被暫存,先看差異再批准:
/skills pending
/skills diff <id>
/skills approve <id>
/skills list
確認清單裡出現 weekly-meeting-digest,再建立兩個資料夾:
mkdir -p ~/hermes-work/meetings ~/hermes-work/reports
先手動放入一份測試筆記,例如寫明「決定 8 月 3 日上線;Terry 在 8 月 1 日前完成首頁檢查;定價仍待討論」,再執行:
/weekly-meeting-digest 請整理 ~/hermes-work/meetings/ 內最近七天的筆記,
並依技能規格把報告存到 ~/hermes-work/reports/。
正確結果應有一項已確認決策、一項含負責人與期限的行動項目,以及「定價」這個待釐清事項。若它把定價寫成決策,先修技能,再談排程;自動化只會放大既有流程的品質。
步驟 4:用 Cron 讓流程準時發生
Cron 不是「延續現在這段聊天」。官方排程文件明確寫出:每次執行都會開一個全新的隔離工作階段,必要時才把指定技能載入。因此排程提示必須自足,不能寫「照剛才說的做」。
先安裝 Gateway 為背景服務,再確認排程器狀態:
hermes gateway install
hermes gateway start
hermes gateway status
hermes cron status
接著先確認排程時區。Memory 裡的時區只會影響代理理解,不會改變排程器;Cron 使用 ~/.hermes/config.yaml 的 timezone,未設定時才沿用伺服器本機時區。台灣使用者可加入:
timezone: "Asia/Taipei"
設定後執行 hermes gateway restart。Cron 表達式 30 17 * * 5 代表每週五 17:30:
hermes cron create "30 17 * * 5" \
"讀取 meetings/ 內最近七天的 Markdown 筆記,使用 weekly-meeting-digest 的規格產生週報。若沒有新筆記,回報『本期無新會議筆記』,不要重用舊內容。" \
--skill weekly-meeting-digest \
--workdir "$HOME/hermes-work" \
--name "weekly-meeting-digest"
先不要等到週五。用名稱手動觸發,接著看最近執行紀錄:
hermes cron list
hermes cron run weekly-meeting-digest
hermes cron runs --limit 20
Gateway 的排程器每 60 秒檢查一次工作,所以手動觸發後不一定立刻出現結果。若要把最終回覆送到 Telegram,先用 hermes gateway setup 完成頻道設定,再用 hermes cron edit weekly-meeting-digest --deliver telegram 修改目的地。沒有設定訊息平台時,CLI 建立的工作預設把輸出留在本機。

步驟 5:Check 才是這套系統最容易漏掉的一層
很多介紹會把 Hermes 說成「每次輸出前都會自動驗證」。這句話太寬。Hermes 在 coding 與持久目標流程裡確實有較完整的證據式驗證,例如專案測試與 /goal 的 completion contract;但截至 v0.19.0,這不代表所有研究、摘要與商務內容都會自動查真偽。
所以這篇把 Check 當成你要設計的「完成契約」。上面的技能不是叫模型籠統地重讀一次,而是要求四個可觀察結果:來源全數讀取、欄位齊全、檔案存在且非空、回報計數與路徑。這和〈當 AI 開始打造 AI〉談到的原則相同:自我改進若沒有外部評估,只是把自己的判斷再餵回自己。
任務較長時,可以用 /goal draft 先把目標轉成結構化完成契約,再檢查範圍、限制與驗證方式:
/goal draft 整理本週所有會議筆記,
輸出決策、行動項目與待釐清事項;
每一項都要能回指來源檔名,
且 reports/ 下的報告必須存在、非空。
這仍不是絕對保證:判定器可能誤判,來源本身也可能寫錯。但它把「看起來完成」改成「有證據才能完成」,已經大幅降低代理提早收工的機率。想進一步理解 verifier、狀態與煞車的設計,可讀〈Loop Engineering:怎麼讓 Agent 迴圈可靠收斂〉。
Memory、Skills、Cron 到底怎麼分?用一個判斷題就夠
- 「每次任務都需要知道,而且短期不會變嗎?」是,就放 Memory。例如時區、語言、禁用規則。
- 「這是一套可以重跑的方法嗎?」是,就做成 Skill。例如輸入格式、步驟、例外處理、驗收清單。
- 「它只是在回答何時啟動嗎?」是,就交給 Cron。排程提示仍要帶齊時間範圍、輸入位置與無資料時的行為。
- 「它是在證明結果可交付嗎?」是,就寫成 Check。例如檔案存在、測試通過、筆數一致、每項可回指來源。
一個常見反例是把「每週五整理 meetings 資料夾」整句塞進 Memory。它混合了時間、流程與路徑,之後很難獨立修改。分層後,你可以只改排程時間,不碰技能;只改摘要格式,不碰長期偏好。這正是可維護性。
長期維護:Journey 是學習視圖,不是完整稽核紀錄
Hermes 的 /journey(CLI 為 hermes journey)用圖形呈現目前的 MEMORY/USER 片段,以及部分已建立或使用過的技能。它不是完整事件日誌:不含 Cron 節點,也不保留每一次記憶修改。排程仍要用 hermes cron list、status 與 runs 查。
/journey
hermes curator status
hermes curator run --dry-run
Curator 預設每七天、且閒置兩小時後才評估;預設只做確定性的閒置整理,LLM 合併技能的功能是關閉的。它不會自動刪除,而是把符合條件的項目移到可還原的 .archive。一個容易踩的坑是:使用者在前景用 /learn 建立的技能通常屬於「unmanaged」,不在 Curator 生命週期內,也不能直接 pin;Hub 安裝技能同樣不受 Curator 修改。先用 status 看管理範圍,再用 --dry-run 預覽,別把網路文章的「每個技能都先 pin」當成通則。
實作最常卡住的 7 個地方
- 記憶沒生效:它到新工作階段才注入;開
/new再測。 - Cron 不懂「剛才」:每次都是新工作階段;提示要寫齊期間、路徑、無資料行為並附技能。
- 手動成功、自動失敗:查
hermes cron status、Gateway,以及--workdir是否為存在的絕對路徑。 - 摘要亂補資料:把「缺值寫未指定」與「每項回指來源」列為驗收規則。
- 換模型後停止:未釘選模型的工作會記住建立時的預設;全域模型改變後會失敗關閉,避免意外換用另一個付費模型。
- 重啟後看到 unknown:中斷嘗試不會自動重跑;先用週起始日與來源清單做重複防護,再手動觸發。
- 權限太大:在專用目錄測試並限制範圍。檔案護欄不是安全邊界;真正隔離要靠 Docker 或遠端沙箱,詳見官方安全文件。
如果你的主要目標其實是寫程式,而不是常駐排程,可以先看〈Claude Code vs Codex 客觀比較〉;Hermes 比較像長期編排層,編碼代理則更擅長直接在專案裡改檔、測試與提交。
常見問題(FAQ)
Q1:完全不會寫程式,也能照這篇做嗎?
可以,但仍要貼幾行終端機指令。macOS Apple Silicon、Windows 10/11 與 Linux 可先用桌面版;出錯先跑 hermes doctor,一次只加一層功能。
Q2:Memory 會保存我的所有對話嗎?
不會。MEMORY.md 與 USER.md 是精簡長期摘要;完整對話另存在資料庫,可用 session search 搜尋。Memory 是隨身卡片,不是硬碟。
Q3:為什麼剛寫入的 Memory,Hermes 還說不知道?
因為本輪使用的是開場快照。寫入已落盤,但提示要等下一個工作階段才重建;開 /new 後再驗證。
Q4:用 /learn 建立的 Skill 一定正確嗎?
不一定。/learn 依材料與指示撰寫技能;先開寫入審核、看 diff,再用小型測試資料驗收。
Q5:Cron 排程時,Hermes 會記得目前的聊天內容嗎?
不會帶入目前聊天歷史。它會載入持久記憶與附加技能,所以排程提示必須單獨看也完整。
Q6:電腦關機後,Cron 還會執行嗎?
不會。Gateway 與主機都必須在線;24/7 工作可放到專用主機或 VPS,並限制權限。
Q7:Hermes 真的會自動驗證所有輸出嗎?
不會驗證所有類型的輸出。Coding 與 goal 流程有較強證據檢查;摘要、研究仍要把完成條件寫進 Skill 或 completion contract。
Q8:Curator 會刪掉我常用的 Skill 嗎?
預設不會自動刪除。受管理技能先進可還原封存區;前景 /learn 技能通常不受管理。先看 curator status,再跑 --dry-run。
下一步:先自動化一件每週真的會做的事
不要從「打造萬能助理」開始。挑一件你每週都會重複、輸入與完成條件都清楚的工作:把三條長期偏好放進 Memory,把流程做成一個 Skill,先手動跑過兩次,再交給 Cron。當你能從執行紀錄回答「讀了哪些資料、做了哪些判斷、結果放在哪裡」,第一個可靠的 Hermes 工作閉環就完成了。
想繼續把這套方法延伸到其他 AI 工具,可到 AlphaLab AI 專區閱讀更多實作教學,或從〈Claude 怎麼省 token〉學會先縮小上下文、再讓代理工作。要系統化練習,也可以查看 AlphaLab 的線上課程。
