v1.3.0 Release Notes
Released
v1.2.3 -> v1.3.0
Summary
Long-running work can now leave the turn: commands and research legs run in the background, watch live output or streams against a plain-language condition, and resume the task with their results while the conversation continues. The terminal client gains direct shell input and work-directory control, and the agent recovers from context overflows and rejected reasoning levels instead of stopping.
翻譯
長時間的工作可以離開當輪:指令與研究 leg 改在背景執行,可依自然語言條件監看輸出或即時串流,完成後帶著結果接回任務,期間對話仍可繼續。終端介面新增直接執行 shell 與切換工作目錄,agent 遇到 context 超限或 reasoning level 被拒時會自動調整重試,不再中斷。
Changes
FEAT
- Add background mode to run_command and subagents (TUI only): the turn continues at once, each finished task resumes the original task with its report, follow-up messages join that task, and resumes claim the task before running so they never overlap a follow-up or a manual resume (@pardnchiu) [7460960a, d0d76874, 18d27e0a, 64e82943, ae4583e0]
- Add interval checks for background commands and the run_websocket tool: buffered output or stream messages are judged against a prompt of literal thresholds each interval (at least 15 seconds), and a confident match that is not a repeat of the last report resumes the task, followed by a 60-second cooldown, while the source keeps running; a websocket with no message or pong for two intervals (at least 60 seconds) reconnects and keeps alive with pings (@pardnchiu) [641da525, ae4583e0, 6b712bc3, a89a1b75]
- Add a sandbox option to run_command that runs outside the sandbox only after the user's system password is verified (@pardnchiu) [f6e0ac17]
- Learn each model's real context limit from overflow errors and trim then retry, and retry rejected reasoning levels with the adjacent level (@pardnchiu) [34289151]
- Add
!prefix shell execution in the TUI with styled input and reported results (@pardnchiu) [72414dca] - Let users set the work directory from the TUI (@pardnchiu) [03208b41]
- Show the pending task count in the TUI status bar (@pardnchiu) [cfe47810]
- Fold per-turn replies in the web chat, hide settled background turns, and recycle stale pinned subagent panels (@pardnchiu) [8718f707, 1f90a4fe]
翻譯
- run_command 與 subagents 新增背景模式(僅 TUI):當輪立即繼續,每個背景任務完成後帶著報告接回原任務,期間的後續輸入併入該任務;resume 執行前先取得任務執行權,不會與後續輸入或手動恢復同時執行
- 背景指令新增 interval 檢查,並新增 run_websocket 工具:每個 interval(至少 15 秒)依寫明絕對門檻的 prompt 判斷累積的輸出或串流訊息,信心足夠且非重複上次回報的符合才接回任務,之後冷卻 60 秒,來源持續執行;websocket 超過兩個 interval(至少 60 秒)沒有任何訊息或 pong 即重連,並以 ping 保活
- run_command 新增 sandbox 參數,驗證系統密碼後才於沙箱外執行
- 從超限錯誤學習模型實際 context 上限並裁剪重試;reasoning level 被拒時改用相鄰等級重試
- TUI 新增
!前綴直接執行 shell,含輸入樣式與結果回報 - TUI 可設定工作目錄
- TUI 狀態列顯示待處理任務數
- Web 對話依輪次摺疊回覆、隱藏已結束的背景輪次,並回收過舊的釘選 subagent 面板
FIX
- Fix subagent session collisions and PWA resize flicker (@pardnchiu) [e2a9d314]
- Clear stale todo lists on pause, cancel and finish, and keep todos when a task stays pending (@pardnchiu) [b194db20]
翻譯
- 修正 subagent session 衝突與 PWA 調整尺寸時的閃爍
- 暫停、取消與完成時清除過期的 todo 清單,任務保留 pending 時保存 todo
UPDATE
- Normalize allow-rule arguments to absolute paths, let
**/match zero directories, and reject empty edit_file, run_command and http_request arguments (@pardnchiu) [fe7e3361] - Show the model on footer hover in the web chat and drop it from the TUI footer, show system-use and list-mode tool calls, and label reasoning_guide, find_tools and write_result calls (@pardnchiu) [8fcd87df]
- Hide injected shell command results from chat history and live user input (@pardnchiu) [fa448508]
- Move TUI status notices to debug logs and run sandboxed commands through the shared sandbox runner (@pardnchiu) [64e82943]
- Re-render on resize only when the width crosses the layout breakpoint (@pardnchiu) [d1ebfd0b]
- Reword background and subagent fan-out guidance around independently searched source classes (@pardnchiu) [44e7fca0]
- Hardcode the context window for DeepSeek flash models (@pardnchiu) [e2a9d314]
翻譯
- allow 規則參數正規化為絕對路徑、
**/可匹配零層目錄,並拒絕空的 edit_file、run_command、http_request 參數 - Web 對話改為 hover footer 時顯示模型,TUI footer 不再顯示模型;顯示 system-use 與 list 模式的工具呼叫,並為 reasoning_guide、find_tools、write_result 加上標籤
- 注入的 shell 指令結果不再出現在對話紀錄與即時使用者輸入
- TUI 狀態提示改記到 debug log,沙箱指令改走共用的 sandbox runner
- 只有寬度跨過版面斷點時才重新渲染
- 背景與 subagent 分派指引改以獨立搜尋的來源類別為依據
- 寫死 DeepSeek flash 模型的 context window
REFACTOR
- Start a new task instead of reusing the last one when the task hash differs, so new messages are not inserted into the old task (@pardnchiu) [8e88653a]
翻譯
- task hash 不同時建立新任務而非沿用上一個,避免新訊息插入舊任務
REMOVE
- Remove the agent cd tool; the work directory is set from the TUI instead (@pardnchiu) [03208b41]
翻譯
- 移除 agent 的 cd 工具,改由 TUI 設定工作目錄
STYLE
- Move TUI block spacing from top to bottom blank lines (@pardnchiu) [f1b17e21]
翻譯
- TUI 區塊間距由上方空行改為下方空行
CHORE
- Bump go-llm-router to v0.9.6 and go-pkg to v0.13.17 (@pardnchiu) [03208b41, 18d27e0a, 64e82943]
翻譯
- 升級 go-llm-router 至 v0.9.6、go-pkg 至 v0.13.17
Scope
internal/tools/— FEAT, UPDATE, REMOVE (runCommand.go,runCommandBackground.go,runWebsocket.go,watchOutput.go,tools.go)internal/tools/interactive/— FEAT (background.go,backgroundCancel.go,backgroundStart.go,askUser.go,online.go)internal/tools/subagent/— FEAT, UPDATE (multiple files)internal/app/— FEAT (deliverBackground.go)internal/agents/exec/— FEAT, UPDATE, REFACTOR, FIX (multiple files)internal/utils/— UPDATE (event.go,utils.go)internal/runtime/tui/— FEAT, UPDATE, STYLE (multiple files)internal/runtime/ipc/,internal/runtime/routes/— FEAT, UPDATE (multiple files)page/src/js/,page/src/sass/— FEAT, FIX, UPDATE (multiple files)configs/— FEAT, UPDATE (multiple files)doc/— DOC (optimization.md,optimization.zh.md)go.mod,go.sum— CHORE
Generated by SKILL