之前分享過幫 AI 裝省錢儀表板,那時候主要在看「花了多少錢」。用到現在,我發現真正會痛的其實不是錢,是額度:Claude Code 的訂閱制有 5 小時和 7 天兩個滾動視窗,用滿就是停給你看。

這篇來分享我們為此做的開源小工具:claude-pacergithub.com/drpwchen/claude-pacer)。

為什麼會想做這個?

起點是好幾次的半夜斷頭。

我很常睡前丟一個長任務給 Claude:批次整理講座逐字稿、跑論文雷達、掃描教科書轉筆記。想說睡醒收成果,結果凌晨兩點撞到 5 小時上限,任務被硬生生停掉,隔天起來看到的是做一半的殘局,還要幫它收拾。

AI 工作起來不知道累,但它完全沒有「額度快用完了,該先存檔」的概念。

另外還有幾個多工時的日常小困擾:

  • 開了四五個視窗,忘記哪個在做什麼:每個終端長得一模一樣,切過去要先滾一下對話才想起來。
  • 不知道還剩多少可以跑:現在派一批 agent 下去,會不會跑到一半全家斷頭?
  • 忘記模型切在哪一個:早上開 Opus 處理難題,下午拿它跑雜事,額度就這樣蒸發了。

市面上不是已經很多狀態列工具了嗎?

對,而且都很好!ccusageccstatuslineCCometixLine 都是很成熟的作品,用它們完全沒問題。自動續跑的腳本也找得到,不過它們的做法是盯著畫面等「撞到上限」的訊息出現,再自動幫你按 continue:任務死在哪就斷在哪,檔案改到一半也照斷。

但我想要的多一點:狀態列是做給「人」看的,人半夜在睡覺;真正需要看到警戒的,是還在跑的那個 AI。撞牆之前它的行為就該先改變:85% 起不再開新的大工程,93% 把手上的步驟收乾淨再停,然後自己排好額度恢復後從同一個對話接續。所以 claude-pacer 是三層設計:

第一層:狀態列,給人看

一行看完所有狀態:

對話主題 │ 5h ▓▓▓┃░░ 42%·剩2h13m │ 7d ▓▓▓▓┃▓░ 71% │ Ctx ▓▓░░░░ 34% │ Fable 5·high
  • 對話主題:用 Claude Code 自己生成的 session 標題,多開視窗每個都有名牌。
  • 用量長條上疊一個時間記號 :實心條超過記號,代表你燒得比時鐘快,該收手了;還沒到記號,就可以放心繼續派工。
  • Ctx:context window 滿度,快被 compact 之前先心裡有數。
  • 模型+推理強度掛在最右邊,忘記切回來之前就會先看到。

寬度是自適應的,終端變窄會自動換緊湊版,手機上看也不會爆版。

第二層:budget-guard,給 AI 看

這層是整個工具的起心動念

額度燒到 85% 時,hook 會自動把「開始收尾」的指令注入 Claude 的 context:完成手上的工作、不要再開新的大工程。到 93% 就是硬警戒:把手上的步驟收乾淨、排一個額度重置後幾分鐘的自動接續(同一個對話直接繼續)、跟使用者報告、結束回合。

於是半夜撞上限的結局變了:睡醒看到的是 AI 留好的進度說明,和一個額度恢復就自動接續的排程任務。

第三層:usage_verdict,給 agent 跑

這層是被 AI 自己的數學逼出來的🤣。滾動視窗的重置算術,AI 讀原始數字幾乎每次都算錯:視窗其實已經重置了,它看到檔案裡殘留的 92% 就嚇到不敢動;或是 7 天視窗顯示 95%,但其實它比 5 小時視窗更早重置,根本不構成限制。

與其每次讓它重新推理,不如把規則寫死成一行判定:

$ python usage_verdict.py
GO — 5h at 42%, 133 min left, projected ~61% at reset — headroom available

GO/PACE/STOP 三個字,agent 照做就好,不用自己算。

想用的話

MIT 開源,Windows/macOS/Linux 都能跑,除了 Node.js 和 Python 之外零依賴:

github.com/drpwchen/claude-pacer(有完整繁中說明)

三層可以拆開用:只想要狀態列就裝狀態列,警戒 hook 是選配。再強調一次,狀態列這塊用別人的工具也很好,這套的重點是後面兩層:把防線從「人盯著看」推到「AI 自己知道」

我的其他 AI 工具都整理在工具箱這篇,這套之後也會收進去。有什麼問題或建議,歡迎留言討論喔!