v1.3.8 Release Notes
Released
v1.3.7 -> v1.3.8
Summary
Background work becomes independent jobs that carry their own goal and next step, so the starting task finishes normally and the job either feeds its reports back or continues on its own. Tool calls, confirmations and questions now come from one backend formatter shared by the terminal, web and chat channels.
翻譯
背景工作改為帶有自身目標與下一步的獨立 job,發起的任務照常結束,job 視情況把報告交回或自行接續。工具呼叫、確認與提問改由單一後端格式化,終端、網頁與聊天頻道共用。
Changes
FEAT
- Run background legs as independent jobs:
background_subagentsandbackground_commandtakeobjectiveandnext, legs started in the same turn form one group stored undersessions/<sid>/background/, and the parent task ends normally instead of staying pending; while the parent is open each report is injected into its loop, while it is paused or waiting onask_userreports wait for its resume, and once it has ended the group runsobjective+next+ all reports as its own task when every leg finishes, pointing to the parent throughchat_history(@pardnchiu) [87b931c2] - Show
N background task(s) runningabove the TUI input, refreshed every second, and open a cancel menu on ESC when the input is empty and nothing runs in the foreground: pick one leg orAll, confirm, and the daemon cancels it over the newbackground_cancelIPC frame, dropping its late result (@pardnchiu) [87b931c2]
翻譯
- 背景 leg 改為獨立 job:
background_subagents與background_command新增objective、next,同一回合開的 leg 自成一組,存於sessions/<sid>/background/,母任務照常結束而不再維持 pending;母任務執行中時報告插入其迴圈,暫停或等待ask_user時報告等它恢復,已結束時待整組完成,以objective+next+所有報告另開一輪,並經chat_history指向母任務 - TUI 輸入框上方顯示
N background task(s) running(每秒更新);輸入框為空且無前景任務時按 ESC 開啟取消選單,可選單一 leg 或All,確認後由 daemon 經新的background_cancelIPC frame 取消,並丟棄晚到的結果
FIX
- Answer
reasoning_guide(subagent_dispatch)inside a session that cannot dispatch with a short "run every lookup yourself" note instead of the full dispatch rules, so research legs stop searching forsubagentsthey cannot call (@pardnchiu) [87b931c2]
翻譯
- 在無法分派的 session 呼叫
reasoning_guide(subagent_dispatch)時,只回「所有查詢自行執行」的短說明而非完整分派規則,研究 leg 不再反覆尋找無法呼叫的subagents
UPDATE
- Format tool-call and thinking lines in the backend:
/v1/logevents carrytraceandtool_display, the web UI renders them as given, and the TUI, web UI, API stream and chat channels share one tool-call format such asAPI(Weather)orRun(rm /etc/hosts)(@pardnchiu) [9c73742a] - Clip each argument value of a displayed tool call to 256 characters instead of cutting the whole line, and drop the remaining line truncation in the web UI, API stream and chat channels (@pardnchiu) [9c73742a]
- Build permission prompts from one formatter for the TUI, web UI, Telegram and Discord:
Run X?/Run X outside the allow list?, restricted paths as⚠ path, and the notesystem password required; Telegram and Discord messages are sized to each platform limit counted in UTF-16 units (@pardnchiu) [9c73742a] - Format
ask_userquestions from one source: chat channels send the question, detail andquestion n/mon separate lines with progress shown only for multiple questions, the web UI card shows progress, and the tool-call line readsAsk(<first line of the first question's detail, or its question>)capped at 128 characters (@pardnchiu) [9c73742a] - Call
public_api_list(category)directly when the request clearly fits a category, return the category list in the not-found error, and show the category in tool-call events asAPI(<category>)(@pardnchiu) [705756e9]
翻譯
- 工具呼叫與思考行改由後端格式化:
/v1/log事件附trace與tool_display,網頁直接顯示;TUI、網頁、API 串流與聊天頻道共用同一種工具呼叫格式,例如API(Weather)、Run(rm /etc/hosts) - 顯示的工具呼叫改為逐一截斷每個參數值至 256 字元,不再截整行;網頁、API 串流與聊天頻道其餘的整行截斷一併移除
- 權限確認由單一格式化產生,供 TUI、網頁、Telegram 與 Discord 共用:
Run X?/Run X outside the allow list?、受限路徑以⚠ path列出、說明為system password required;Telegram 與 Discord 依各平台上限以 UTF-16 計算長度 ask_user提問格式統一:聊天頻道把問題、說明與question n/m分行送出,只有多題時顯示進度;網頁卡片顯示進度;工具呼叫行為Ask(<第一題 detail 的第一行,沒有 detail 則用 question>),最多 128 字元- 需求明確對應分類時直接呼叫
public_api_list(category),找不到分類時錯誤附上分類清單,工具呼叫事件顯示為API(<category>)
REMOVE
- Remove the "waiting for background tasks" mode: the TUI status line and ESC cancel of the whole parent, the web UI waiting state driven by
EventPending(subagents)and pending entries withbackground > 0, the[Active]lock in TUI/pending, thebackgroundfield of the pending list API, and follow-up input into a background-pending task over IPCrunframes (@pardnchiu) [87b931c2]
翻譯
- 移除「等待背景任務」模式:TUI 狀態列與 ESC 取消整個母任務、網頁依
EventPending(subagents)與background > 0進入的等待狀態、TUI/pending的[Active]鎖、pending 清單 API 的background欄位,以及經 IPCrunframe 接續背景 pending 任務的後續輸入
Scope
internal/tools/interactive/— FEAT, REMOVE (background.go,backgroundStart.go,backgroundCancel.go,askUser.go)internal/app/— FEAT (deliverBackground.go)internal/agents/exec/— FEAT, REMOVE (execute.go,steerWait.go,toolCall.go)internal/tools/— FEAT, FIX, UPDATE (runCommand.go,runCommandBackground.go,guide.go,subagent/,types/,external/publicAPIList.go)internal/runtime/tui/— FEAT, UPDATE, REMOVE (multiple files)internal/runtime/ipc/— FEAT, REMOVE (frame.go,client.go,server.go)internal/utils/— UPDATE (toolFormat.go,permissionFormat.go,askUserFormat.go,event.go,utils.go)internal/runtime/— UPDATE (listener.go,chatbot/discord/,chatbot/telegram/,routes/handler/)page/src/js/— UPDATE, REMOVE (multiple files)configs/prompts/guide/— UPDATE (subagent_dispatch.md,tool_generate.md)README.md,doc/— DOC
Generated by SKILL