本頁譯自英文文件。指令、識別名稱與範例保持原樣。執行環境 7.24.4 · SDK 2.6.7。 英文原文
穩定性
狀態:有效
範圍:目前狀態
上次審閱:2026-07-18
負責人:ax-code runtime
AX Code 如何在長時間互動工作階段與無頭執行中保持可靠。
分層
| 層 | 已強化的部分 | 關鍵模組 |
|---|---|---|
| TUI 生命週期 | 暫停/恢復、當機後還原終端機、離開工作階段時修剪記憶體 | ADR-047;cli/tui/util/* |
| 行程故障 | 忽略中止/取消/破管;真正的崩潰仍會結束 | util/harmless-interrupt、TUI 崩潰處理常式、CLI 啟動 hooks |
| 逾時 | 工具/LSP/MCP 的界限,且沒有未處理的 unhandledRejection | util/timeout.withTimeout |
| 串流 | 閒置看門狗、可復原的重新連線 | session/llm-impl 閒置看門狗;resilient-stream |
| 權限 | 重複送出閂鎖與回覆逾時 | permission-submit-latch、權限提示 |
| 儲存庫 wiki | 路徑侷限、資訊清單最後寫入的原子性、受保護內容、寫入前驗證 | packages/ax-wiki;src/wiki/* |
支援的 TUI 路徑
支援的執行環境堆疊為:
- 執行環境:內嵌的 Node
- 介面:AX Code TUI + Solid(主要預設)
- 繪製:Zig(正式環境);原生程式庫完整隨附在儲存庫內
(隨附於獨立的 ax-tui 框架內,由其
vendor/manifest.json以雜湊釘選)— 安裝或執行時都不涉及上游@opentui/*npm 套件 - Yoga 不是可選模式;AX Code TUI 的原生繪製器仍是預設
取消與崩潰
| 訊號 | 預期行為 |
|---|---|
使用者中止/Esc/工具取消(AbortError) |
若未處理則以警告記錄;不要結束 TUI |
shell 關閉時的破管(EPIPE) |
視為無害並忽略 |
| 未捕捉的應用程式例外 | 重設終端機,以非零狀態結束 |
| 串流閒置過久 | 由串流閒置看門狗中止此回合(可設定) |
以 AX_CODE_STREAM_IDLE_TIMEOUT_MS 覆寫串流閒置逾時(0 會停用)。
權限提示
權限回覆具有下列性質:
- 已閂鎖 — 每個請求 id 同時只有一個進行中的回覆
- 重新武裝,當下一個排入佇列的請求成為作用中時
- 逾時 — 20 秒後逾時,避免懸置的伺服器永遠卡住「允許」