v1.3.3 Release Notes
Released
v1.3.2 -> v1.3.3
Summary
Makes every approval prompt explain itself and offer clearer exits, with the same behavior across terminal, web and chat. Tightens the read-only fast path so only commands that truly cannot write or start other programs skip confirmation. The terminal UI no longer stalls or misrenders when a task ends or the window changes behind an open prompt.
翻譯
每個確認提示都會說明動作內容,並提供更清楚的退出選項,終端、網頁與聊天的行為一致。收緊唯讀快速通道,只有確實不會寫入或啟動其他程式的指令才免確認。開著提示時任務結束或視窗變動,終端介面不再卡住或錯位。
Changes
FEAT
- Explain
run_command/background_commandconfirmations in one sentence written by the dispatcher model, sent as a single stateless call only when a prompt is actually shown, and display it in the TUI, Web UI, Discord and Telegram (@pardnchiu) [cbaee9fc, 253efbaf] - Split stopping a task at a confirmation into Abort, which keeps the pending task for resume, and Cancel, which deletes it, in the TUI, Web UI, Discord and Telegram (@pardnchiu) [253efbaf]
- Let Discord and Telegram attach an optional reason when skipping a call, matching the TUI and Web UI (@pardnchiu) [253efbaf]
- Report the OS version and package manager on the system prompt's Host OS line (@pardnchiu) [86054ed1]
- Run read-only
run_commandcalls concurrently and checksh -c/bash -cscripts by their inner commands (@pardnchiu) [5d47f157] - Return MCP tool image content to the agent as data URLs alongside the text (@pardnchiu) [cbaee9fc]
翻譯
run_command/background_command跳確認時,由 dispatcher model 以單次、不帶紀錄的呼叫寫一句說明,只在實際跳出確認時產生,並顯示於 TUI、Web UI、Discord 與 Telegram- 確認時停止任務拆成 Abort(保留 pending 以便接續)與 Cancel(刪除 pending),TUI、Web UI、Discord 與 Telegram 皆適用
- Discord 與 Telegram 跳過呼叫時可附上選填理由,與 TUI、Web UI 一致
- system prompt 的 Host OS 行列出作業系統版本與套件管理器
- 唯讀的
run_command改為並行執行,sh -c/bash -c改以引號內的指令判定 - MCP 工具回傳的圖片改以 data URL 連同文字交給 agent
FIX
- Keep the TUI from staying in a running state forever when a task finishes while a popup is open (@pardnchiu) [253efbaf]
- Redraw the TUI header after terminal width changes settle, and re-render open popups on resize (@pardnchiu) [d8ed0f7d, 253efbaf]
- Stop a cancelled task from leaving an empty resumable pending entry behind (@pardnchiu) [253efbaf]
- Keep the Web UI confirmation card and show the error when an escalation approval is rejected as non-local, instead of hiding the card while the task waits (@pardnchiu) [253efbaf]
翻譯
- 彈窗開著時任務結束,TUI 不再一直停在執行中
- 終端寬度穩定後重繪 TUI header,開著的彈窗也會隨視窗大小重新渲染
- 取消任務後不再留下空的可接續 pending
- Web UI 的提權同意因非本機而被拒時,保留確認卡片並顯示錯誤,不再隱藏卡片讓任務空等
UPDATE
- Keep the system password prompt open for retry until verification succeeds, instead of declining the call on a wrong password (@pardnchiu) [253efbaf, a565ae3c]
- Offer only options that can succeed on escalation prompts: the TUI and Web UI drop the remember options, and Discord / Telegram drop Yes and point to the TUI or Web UI (@pardnchiu) [253efbaf]
- Ignore Esc on confirmation, password and
ask_userpopups instead of cancelling the task (@pardnchiu) [253efbaf] - Tell the agent a declined call was refused and to move on to the next step (@pardnchiu) [253efbaf]
- Relabel confirmation choices with short descriptions, show the explanation above the command, and hide the duplicate command line on escalation prompts (@pardnchiu) [253efbaf]
- Keep every
ask_useroption visible and clip the question and detail to the window height (@pardnchiu) [253efbaf] - Narrow the
blocked-commandguardrail to system wipes, disk formatting, fork bombs and escaping paths built from fetched content (@pardnchiu) [86054ed1] - Install system packages with the package manager named on the Host OS line in
run_commandguidance and the bundled extension-install skill (@pardnchiu) [86054ed1] - Describe every use of the dispatcher model in the TUI and Web UI model settings (@pardnchiu) [cbaee9fc]
翻譯
- 系統密碼輸入錯誤時保留輸入框重試,驗證成功才關閉,不再直接當成拒絕
- 提權確認只提供可行的選項:TUI 與 Web UI 拿掉免詢問選項,Discord/Telegram 拿掉 Yes 並引導至 TUI 或 Web UI
- 確認、密碼與
ask_user彈窗按 Esc 不再取消任務 - 拒絕呼叫時告知 agent 使用者已拒絕,請繼續下一步
- 確認選項改為簡短說明,說明置於指令上方,提權確認不再重複顯示指令行
ask_user的選項一律完整顯示,問題與描述依視窗高度截斷blocked-commandguardrail 收斂為系統清空、格式化磁碟、fork bomb 與由抓取內容組出的跳脫路徑run_command說明與內建 extension-install skill 改用 Host OS 行列出的套件管理器安裝系統套件- TUI 與 Web UI 的模型設定列出 dispatcher model 的所有用途
SECURITY
- Tighten read-only auto-approval: argument checks for commands that can set values or load plugins, an explicit allowlist of git global flags, rejection of git options that start external programs, exact-argv version queries, rejection of shell assignments and expansions, and removal of entries that write files or run code (@pardnchiu) [5d47f157]
翻譯
- 收緊唯讀自動放行:可設值或載入外掛的指令加上參數檢查,git 全域旗標改為明列清單,拒絕會啟動外部程式的 git 選項,版本查詢須完整比對 argv,拒絕 shell 賦值與展開,並移除會寫檔或執行程式的條目
Scope
internal/agents/exec/readonly/— FEAT, SECURITY (argv.go,shell.go)internal/agents/exec/explain/— FEAT (explain.go)internal/agents/exec/— FEAT, UPDATE, SECURITY (toolCall.go,systemInfo.go)internal/runtime/tui/— FEAT, FIX, UPDATE (multiple files)internal/runtime/ipc/— FEAT, UPDATE (client.go,frame.go,server.go,askUser.go)internal/runtime/— FEAT, UPDATE (listener.go,pending.go,cancelNotify.go)internal/runtime/chatbot/— FEAT, UPDATE (discord/pending.go,telegram/pending.go)internal/runtime/routes/handler/— FEAT, FIX (confirm.go)internal/runtime/mcp/— FEAT, REFACTOR (client.go,expose.go,server.go)internal/runtime/webapp/— REFACTOR (webapp.go,webapp_linux.go)internal/tools/— UPDATE, REFACTOR (runCommand.go,runCommandShell.go)internal/tools/interactive/— FIX (writeTodo.go)internal/agents/types/— FEAT (event.go)configs/— FEAT, UPDATE, SECURITYpage/— FEAT, FIX, UPDATEextensions/skills/— UPDATEREADME.md,doc/— DOCgo.mod,go.sum— CHORE
Generated by SKILL