后如何恢復(fù):用 /queue 查看并重新發(fā)送離線隊列)
CodeWhale 斷網(wǎng)后如何恢復(fù)用 /queue 查看并重新發(fā)送離線隊列【免費下載鏈接】CodewhaleOpen-source coding agent for your terminal, built in Rust and on a journey of continuous community improvement. Issues and PRs welcome.項目地址: https://gitcode.com/GitHub_Trending/de/CodewhaleCodewhale 是一個運行在終端里的開源編碼代理。當(dāng) TUI 會話斷網(wǎng)或進(jìn)入降級/離線狀態(tài)時你輸入的新提示不會丟失而是被排入離線隊列并持續(xù)寫到磁盤。這篇文章說明如何在斷網(wǎng)恢復(fù)后用/queue命令查看隊列內(nèi)容、逐條重新發(fā)送并確認(rèn)隊列文件被正常清除。適用環(huán)境是本地 Codewhale CLI/TUI 會話依據(jù)來自項目運維手冊 docs/OPERATIONS_RUNBOOK.md 的 “Incident: Network Outage / Offline Behavior” 一節(jié)。斷網(wǎng)期間會發(fā)生什么根據(jù) docs/OPERATIONS_RUNBOOK.md 對離線場景的預(yù)期行為描述離線模式激活期間新提示詞會被排隊queued而不是直接發(fā)送失敗隊列狀態(tài)會持久化到~/.codewhale/sessions/checkpoints/offline_queue.json隊列的每次編輯/queue ...都會持續(xù)落盤因此草稿和已排隊提示在重啟后仍然存在見 docs/ARCHITECTURE.md 的 Crash Recovery Offline Queue 一節(jié)。這意味著恢復(fù)操作的目標(biāo)很明確確認(rèn)隊列里到底排了什么然后把它重新發(fā)出去最后確認(rèn)持久化文件隨之清空。第一步用 /queue list 查看離線隊列在 Codewhale TUI 的輸入框中直接輸入/queue listTUI 會以Queued messages ({count}):的標(biāo)題列出已排隊的消息如果沒有任何條目顯示No queued messages。/queue支持的子命令為list、send n、edit n、drop n、clearn是隊列條目的編號從 1 開始。在另一個終端中用運維手冊 “Quick Triage” 一節(jié)給出的方式確認(rèn)持久化文件確實存在、時間戳在更新ls ~/.codewhale/sessions/checkpoints隊列文件存在且隨排隊/編輯動作刷新說明隊列狀態(tài)沒有丟可以進(jìn)入下一步。第二步恢復(fù)連接運維手冊給恢復(fù)動作定的順序是先恢復(fù)連通性再重發(fā)隊列見 docs/OPERATIONS_RUNBOOK.md。如果懷疑不是本機(jī)網(wǎng)絡(luò)問題而是端點本身不可達(dá)可以參考手冊 “Turn Hangs or Stream Stops” 一節(jié)中的連通性檢查命令以 DeepSeek 端點為例curl -sS https://api.deepseek.com/beta/models -H Authorization: Bearer $DEEPSEEK_API_KEY其中$DEEPSEEK_API_KEY是環(huán)境中已配置的 API key 變量名來自文檔原文該命令只是驗證端點可達(dá)不會修改任何本地狀態(tài)。第三步重新發(fā)送隊列條目連通性恢復(fù)后按隊列編號逐條重發(fā)。運維手冊給出的主路徑是輸入/queue edit n打開第n條排隊消息的編輯然后按 Enter 發(fā)送或者通過正常輸入流程把這條提示重新發(fā)出去。TUI 在隊列提示中還會給出這兩條命令的用法提示/queue send n立即發(fā)送第n條/queue drop n刪除第n條。如果整批排隊內(nèi)容都不需要了用/queue clear清空隊列。驗證恢復(fù)完成按運維手冊的檢查項確認(rèn)兩件事再執(zhí)行一次/queue list確認(rèn)隊列已空顯示No queued messages隊列清空后持久化的隊列文件應(yīng)當(dāng)被清除。再次執(zhí)行l(wèi)s ~/.codewhale/sessions/checkpoints確認(rèn)offline_queue.json已不在。兩個條件都滿足說明離線隊列已完整重發(fā)并被正常回收。殘留舊隊列文件時的清理如果隊列已經(jīng)清空、但 checkpoints 目錄里仍留著舊的offline_queue.json例如舊版本遺留可以用 setup 的--clean標(biāo)志處理見 docs/CONFIGURATION.mdcodewhale setup --clean它會先列出~/.codewhale/sessions/checkpoints/latest.json和offline_queue.json若存在加上--force才會實際刪除匹配文件。該操作只針對可再生的檢查點文件不會觸碰真實會話歷史或任務(wù)隊列。副作用是刪除 checkpoints 目錄中的檢查點文件因此只應(yīng)在確認(rèn)隊列已重發(fā)完畢、且你接受放棄這些檢查點后使用。對于舊版~/.deepseek/sessions/checkpoints/下的文件不會自動掃描需要一次性清理時設(shè)置CODEWHALE_HOME~/.deepseek再執(zhí)行。如果重發(fā)時連接仍然失敗或斷網(wǎng)伴隨流式輸出中斷等其他癥狀回到 docs/OPERATIONS_RUNBOOK.md 中的 “Turn Hangs or Stream Stops” 與 “Crash Recovery Needed” 兩節(jié)繼續(xù)排查。【免費下載鏈接】CodewhaleOpen-source coding agent for your terminal, built in Rust and on a journey of continuous community improvement. Issues and PRs welcome.項目地址: https://gitcode.com/GitHub_Trending/de/Codewhale創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考