(系列:《AI 維運實戰:我用 Hermes 把 Agent 變成企業同事的 30 天》)
(主題:將 AI 模型整合進實際系統與產品的工程實踐)
模型能回答問題,不代表它認識使用者。只靠單次對話時,我每次都要重講公司背景、回覆格式、資料來源與權限邊界。對話結束後,下一次又從零開始。
這種系統像臨時外包,不像同事。
我在 Hermes 裡真正需要的,不是讓模型記住所有對話,而是讓它跨 session 保留少量、穩定、會影響未來工作的資訊。因此我把記憶拆成 MEMORY.md 與 USER.md,並把工作流程另外放進 Skill。
────────────────────────────────
USER.md 記人,MEMORY.md 記共同經驗
這兩個檔案看起來都在提供上下文,但責任不同。
| 檔案 | 保存內容 | 不該保存 |
|---|---|---|
| USER.md | 身份、長期方向、回覆偏好、授權原則、資料隔離規則 | 單次任務進度、暫時錯誤、今天的待辦 |
| MEMORY.md | 已驗證的環境事實、長期決策、重複踩雷後形成的規則 | 整段聊天紀錄、一次性輸出、未確認推測 |
| Skill | 可重複執行的流程、工具順序、輸入輸出與驗證方式 | 某個人的一般偏好、短期狀態 |
例如「公司 Google Drive 必須使用公司帳號」會長期影響授權與資料隔離,適合放進 USER.md 或共通規則。「某個 CLI 的舊路徑曾造成 BrokenPipe,應改用目前可用路徑」是經過實測的環境經驗,適合進 MEMORY.md。
至於「今天已經讀到第 17 筆」只對當次工作有用。它應留在 session 或中間檔,不該變成永久記憶。
────────────────────────────────
記憶不是聊天備份
我早期最直覺的做法,是把越多資訊留下來越好。後來發現,記憶不是免費硬碟。
每次啟動工作時,長期記憶會占用上下文。字元預算有限,舊資訊越多,真正重要的規則就越不醒目。模型可能看到三個版本的偏好、兩條已失效的路徑,還有一堆已完成任務,最後只能猜哪一條才有效。
雜訊記憶常造成三種問題:
最危險的不是模型明確報錯,而是它引用過時記憶後仍產生一份很流暢的答案。文字看起來合理,執行方向卻已偏掉。
────────────────────────────────
我現在用三個問題決定要不要記
第一,三個月後還可能有用嗎?
如果只是今天的進度,就不進長期記憶。若是穩定偏好、固定資料來源或長期架構決策,才值得保留。
第二,它會改變未來的執行路徑嗎?
像「財務報告前必須讀實際 Sheet,不能沿用舊數字」會直接改變工具順序與驗證方式,值得記。某次報告算出的金額則不該記,因為明天就可能失效。
第三,它是事實、決策,還是推測?
只有已驗證事實與明確決策能寫成肯定句。尚未核准的制度要標成草案;不確定的根因應留在調查紀錄,不能升格成永久規則。
這三問讓記憶從「收藏資訊」變成「保存未來決策所需的最小狀態」。
────────────────────────────────
字元預算逼我做真正的知識整理
Hermes 載入的個人記憶有容量限制。當內容逐漸逼近預算,不能只刪掉最舊一段,也不能把全文硬塞進更大的提示詞。
我的整理方式是合併同類規則:
合併不是摘要得越短越好。關鍵識別碼、欄位口徑、授權邊界與驗證條件不能被壓掉。省下上下文,卻讓規則失去可執行性,反而更糟。
────────────────────────────────
Profile 隔離比「全部都記得」更重要
我的 Hermes 不只有一個用途。財務、工程、行銷、客服與私人工作各自有 Profile,也各自擁有 MEMORY.md 與 USER.md。
這個設計解決的不是文風問題,而是資料邊界。財務 Bot 需要知道收入欄位口徑,但行銷 Bot 沒有理由取得私人內容;私人 Profile 的習慣,也不能自動流入公司工作區。
因此,共通原則留在 General。部門角色、權限、資料源與排程留在各自 Profile。需要跨部門協作時,傳遞的是明確交接內容,不是把整份記憶互相複製。
如果所有 Bot 共用一個巨大記憶檔,短期看似方便,長期一定會遇到規則衝突、上下文膨脹與資料外洩風險。
────────────────────────────────
我如何驗證記憶真的有用
記憶檔存在,不等於系統真的記得。我用實際行為驗收:
真正的持久記憶,不是模型說「我記住了」,而是下一次工作時做出一致且可驗證的選擇。
────────────────────────────────
今天的結論
AI 像不像同事,關鍵不在它記得多少,而在它是否記得正確的事。
USER.md 定義合作對象與長期邊界。MEMORY.md 保存經驗與穩定決策。Skill 承接可重複流程。短期進度則留在 session 或工作文件。
好的記憶系統會主動遺忘雜訊、合併重複規則、淘汰過時資訊,並嚴格隔離不同工作區。這樣模型每次開始工作時,拿到的不是一座聊天垃圾場,而是一份精簡、可信、能改變行動的交接文件。
下一篇 D6:記憶讓 Agent 能延續工作,但主模型一旦故障,整個系統仍可能停擺。我會拆解 Primary/Fallback 設計,以及設定欄位演進造成的真實踩雷。