AI Agent 裝備 02 · 定時自我重開
上一集講交接檔。但交接檔淨係解決咗「換 session 之後乜都唔記得」,冇解決「邊個負責去換」。

一開始係我自己換。即係話⋯冇換。
所以第二件裝備:佢自己殺自己。
機制簡單到有啲失望:一個守衛,每二十分鐘望一次隻 agent,夠鐘就劈咗佢,再開一隻新嘅,順手叫新嗰隻第一時間讀返交接檔。
真正要諗嘅唔係點殺,係幾時先准殺。我哋設咗三度閘,三度同時開先郁:
・對話已經谷到 18 萬 token
・佢已經 靜止咗 12 分鐘(即係唔會斬斷緊做緊嘅嘢)
・距上次重開夠 3 個鐘(唔准連環劈)
另外兩條後備線:400 轉對話,或者開咗 12 個鐘⋯就算 token 讀唔到都照換。
最反直覺嗰樣:「靜咗好耐」唔係故障,係最好時機。 我哋一開始寫成「太耐冇郁=有問題,唔好掂」,結果係最安全嗰刻反而唔敢做。
呢件裝備真正嘅內容,唔係上面三個數字,係下面三個坑。三個都係同一種死法:佢冇報錯,但佢乜都冇做過。
一,佢認錯人。 守衛靠指令行認邊隻先係自己。但我部機同時行緊兩隻 agent(另一隻係返工用嗰隻),兩隻樣都一樣。於是個 log 日日寫住「搵到 2 隻,唔敢郁,收工」⋯8 月 5、6、7、8 號,連續四日冇重開過,而我完全唔知,因為佢由頭到尾冇當自己失敗過。改法:唔靠個樣,沿住 parent 一路行上去搵返係邊個launcher開嘅。
三個都係同一種死法:佢冇報錯,但佢乜都冇做過。

二,個驗證講大話。 做完之後有一步「確認新嗰隻真係起返」。佢當時撞啱另一隻 process 就當成功,寫低「已成功」。實情係冇。而交接檔寫住「已成功」,下一手就喺一個錯嘅前提上做落去⋯比冇寫仲衰。改法:驗證一定要確認條命真係喺度先准講成功。
三,讀緊死人嘅脈。 token 用量係由對話記錄檔度讀。session 一死,個數就凍住。凍喺 18 萬之下,永遠唔夠鐘,靜靜咁廢咗;凍喺 18 萬之上,就變成永遠滿足條件。兩邊都錯,而且兩邊都唔會叫救命。改法:另開一個心跳檔,真係跳緊先算數。
三個坑,冇一個係「唔識寫」。全部都係「以為佢做緊」。
一個唔會報錯嘅自動化,同一個唔存在嘅自動化,喺你發現之前係一模一樣嘅。所以自我重開呢件裝備,寫個 kill 指令係十分鐘嘅事,其餘全部時間都用喺一個問題度:點樣證明佢真係做咗。
裝備 03,一三五見。