OpenClaw 翻車實錄 | 10 分鐘設定安全防護指南 | 防止 Indirect Prompt Injection !

OpenClaw 翻車實錄 | 10 分鐘設定安全防護指南 | 防止 Indirect Prompt Injection !

減少 Compacted History

由 4 個方向落手。根據 OpenClaw 文件,COMPACTED HISTORY 係因為 session 接近 model context window,系統就會自動將舊對話摘要化,保留最近訊息繼續跑。

  • 同一個 session 傾好耐
  • 經常 read 大檔案/貼長內容
  • 有好多工具輸出

就好容易觸發 compaction。

最有效減少出現的方法:

1. 少啲喺同一個 session 累積太多嘢

最簡單直接。

做法:

  • 一個大主題開一個新 session
  • 任務做完就 /new
  • 唔好乜都塞入同一條長命對話

適合你:

  • debug 一單野開一個 session
  • 寫文、做 config、查資料,各自分開

2. 減少大段工具輸出同長文灌入 context

文件講得好清楚,工具結果、讀檔內容、附件都會計入 context。

所以盡量:

  • 唔好一次 read 成個超大檔
  • 用較細 offset / limit 分段睇
  • command output 太長時,只攞重點
  • 唔好成段 log / transcript 原封不動貼入對話

即係:

  • 要睇 log:先 grep 關鍵字
  • 要睇 code:先讀 relevant block
  • 要分析文章:先摘要,再深挖局部

3. 用 /compact 主動壓縮,而唔係等佢爆

文件建議可以手動做 compaction,而且可以加指示。

例如:

  • /compact Focus on API design decisions
  • /compact 保留而家 debug 到嘅根因、已試過嘅方法同未解決問題

咁好處係:

  • 你控制摘要重點
  • 唔會等到 context 太滿先被動壓
  • 壓完之後 session 仲可以繼續,但重點較穩

如果你知自己開始傾長咗,主動 compact 其實幾好用。

4. 把重要規則移出對話,寫入持久檔

文件區分得好清:

  • context = 今次 run 送畀 model 睇嘅內容
  • memory / files = 可以落地保存,之後再載入

即係話,重要但長期有效嘅嘢,唔好淨係留喺聊天紀錄。

你可以放去:

  • MEMORY.md
  • 專案說明檔
  • 任務 notes
  • checklist / spec

咁之後就算 compact 咗,我都仲可以由檔案重新抓返重點,而唔使靠長對話尾巴硬撐。

5. 如你成日用好多工具輸出,可以考慮 pruning

OpenClaw 文件有提:

  • compaction = 摘要舊對話
  • pruning = 修剪舊 tool results

如果你個問題主要係工具輸出太大,pruning 會比單純 compaction 更對症。文件甚至直接講:如果 compact 得太頻密,試下開 session pruning。

6. 檢查 workspace 注入檔案有冇太大

文件講每次 run 都會注入:

  • AGENTS.md
  • SOUL.md
  • TOOLS.md
  • IDENTITY.md
  • USER.md
  • HEARTBEAT.md

如果其中某啲檔好大,會長期食 context。尤其 TOOLS.mdMEMORY.md 類型如果日積月累變肥,context 壓力會大。

你可以做:

  • 保持呢啲檔精簡
  • 長資料搬去專門 notes
  • 只保留真正會每次都用到嘅內容喺 injected files

7. 如果你想從根本改善,要改 config

文件提到 compaction 相關設定喺:
agents.defaults.compaction

而且如果 compaction 太頻繁,文件明講可能係:

  • model context window 細
  • tool output 太大
  • 應考慮 session pruning

如果你想,我可以幫你再查你本機 config,睇下有冇:

  • pruning 可開
  • compaction keepRecentTokens 可調
  • notifyUser 可開
  • 甚至有冇其他 session/context 設定可以優化

我嘅實際建議排序係:

  1. 分 session
  2. 減少長輸出進 context
  3. 主動 /compact,加明確 focus
  4. 重要資訊寫入檔案
  5. 再研究 pruning / config

Categories: Agentic, 教學