讓 agent 改自己的 workspace,是我用 OpenClaw 以來最有效的決定
用 OpenClaw 好久了,一直在踩坑。最大的問題不是不會用,而是 workspace 越來越亂——skills 堆一堆、MEMORY.md 膨脹到幾千行、agent 每次都好像在從頭開始。
後來我換了一個思維:把 workspace 當作可以演化的 OS,不是靜態的 prompt 檔。
具體的改變是這樣的。我開始把根目錄拆得很乾淨:
workspace/
AGENTS.md # agent 的行為規則
SOUL.md # 人設和溝通風格
USER.md # 關於我自己的 context
MEMORY.md # 長期記憶索引(不是全文!)
HEARTBEAT.md # 定期 check 的 checklist
TOOLS.md # 環境專屬設定
memory/ # daily log + 分類檔
skills/ # 各 skill 各自的目錄
最關鍵的是 MEMORY.md 只當索引。裡面不放完整內容,只放「有哪些記憶、在哪個檔案、重點是什麼」。實際內容分到 memory/people/、memory/projects/、memory/decisions/ 這些子目錄。這樣就不會因為 context 越來越長而整個爛掉。
但真正讓整個系統活起來的,是我允許 agent 主動改進自己的環境。
以前我習慣把 workspace 當作「我設定好、agent 照跑」的東西。後來我改成:agent 踩到什麼坑、發現什麼更好的做法,直接讓它改 AGENTS.md 或寫進 MEMORY.md。結果系統開始自我優化,每隔幾週都比之前聰明一點。
Skill 的策略也是這樣想——不要貪多。我現在只維護 5 個高頻 skill:research 助理、文件整理、calendar 同步、email triage、Notion 推送。這五個每天都在用,磨得很順。那些一個月用一次的邊緣 skill,我寧可每次手動跑,不值得維護成本。
我的 caveat 是:這套架構在你知道自己需要什麼之前建起來,反而會 over-engineer。建議先用原始的 flat structure 跑個一兩個月,感受到哪裡痛再來拆。硬套結構只是換個方式亂。
作者:Jesse