使用 Codex CLI 時,偶爾會遇到:
Selected model is at capacity. Please try a different model.
如果當下不在電腦前,可能直到回來才發現 Codex 早已中斷,真的會很浪費時間。
解決方案:capacity-tmuxer
這是一個利用 tmux + Bash 實作的 Codex CLI 自動恢復工具。
運作方式:
- 每 15 秒檢查 tmux 中的 Codex 畫面。
- 偵測到容量不足錯誤時,確認 Codex 已閒置、輸入框為空。
- 自動輸入
continue並按 Enter。 - 如果仍然失敗,採用指數退避,等待 30、60、120 秒,最長 15 分鐘後重試。
1. 安裝
# 安裝 tmux
brew install tmux
# 建立安裝資料夾
mkdir -p "$HOME/.local/src"
# 從 GitHub 下載原始碼
git clone https://github.com/dearlordylord/selected-model-is-at-capacity-tmuxer.git \
"$HOME/.local/src/capacity-tmuxer"
# 固定版本(已通過安全檢查)
git -C "$HOME/.local/src/capacity-tmuxer" checkout --detach \
1692c6de44e654d6a6358f4db191190bc8529a992. 在 tmux 中啟動 Codex
cd 你的專案路徑
tmux new -s codex-work
codexCtrl+B → D:離開 tmux,但 Codex 繼續執行。tmux attach -t codex-work:回到 Codex。
3. 開另一個終端機,啟動監控
WATCH_SESSIONS=codex-work \
GUARD_COMPOSER=1 \
POLL=15 \
nohup bash "$HOME/.local/src/capacity-tmuxer/bin/capacity-tmuxer" \
>> "$HOME/capacity-tmuxer.log" 2>&1 < /dev/null &
echo $! > "$HOME/.capacity-tmuxer.pid"查看自動重試紀錄:
tail -f ~/capacity-tmuxer.log停止自動重試監控:
kill "$(cat ~/.capacity-tmuxer.pid)"