# v1.3.1 Release Notes

> v1.3.0 -> v1.3.1

## Summary

Brings a configurable decision model into the agent loop, using fast typed judgments to route requests and to trim what reaches the model, from web content to accumulated context. Long-running commands move to a dedicated background tool, and its output checks no longer lose data when a check fails.

<details>
<summary>翻譯</summary>

將可設定的 decision model 引入 agent 流程，以快速的型別化判斷分派請求，並精簡送進模型的內容，從網頁資料到累積的對話脈絡。長時間指令改由專用的背景工具執行，輸出檢查失敗時不再遺失資料。

</details>

## Changes

### FEAT

- Replace the TypeSafe beta dispatcher with a configurable decision model (TypeSafe or OpenRouter) chosen in TUI and Web settings and used by dispatch and output watch; the decision dispatcher toggle now requires a decision model (@pardnchiu) [7d673696, e8fe894c, ecd6f3df, 1097aca3]
- Filter web search results and fetched pages with the decision model: unrelated results are dropped, page noise is removed before caching, and unrelated pages are withheld (@pardnchiu) [a01fe87d, ecd6f3df, 1097aca3]
- Add a tool-gap hint that points to the tool-building guide and relevance filtering of the skill list to the turn context (@pardnchiu) [b42859de, ecd6f3df, 1097aca3]
- Drop noise exchanges and outdated key decisions and past discussions with the decision model before merging the session summary (@pardnchiu) [b42859de, ecd6f3df, 1097aca3]
- Prune tool steps the request no longer needs with the decision model when the context overflows, before oldest-first trimming (@pardnchiu) [5654056f, 1097aca3]
- Add a dedicated background command tool for long jobs, watchers and interval checks; the command tool now runs in the foreground only, and the background tool is hidden without a decision model (@pardnchiu) [4ad6d59f]
- Add TypeSafe API key setup to TUI and Web; saving the key skips model selection and the model is picked in decision settings (@pardnchiu) [d529f43a]
- Show model and switch lines with the reasoning level in the Web reasoning trace, live and in history; completed turns drop them on reload (@pardnchiu) [e8fe894c, 0112a7e4]

<details>
<summary>翻譯</summary>

- 以可設定的 decision model（TypeSafe 或 OpenRouter）取代 TypeSafe beta dispatcher，可在 TUI 與 Web 設定中選擇，供分派與輸出監看使用；decision dispatcher 開關改為需先設定 decision model
- 以 decision model 過濾網頁搜尋結果與抓取的頁面：移除不相關的結果，存快取前去除頁面噪音，不相關的頁面不交給模型
- turn context 新增指向建工具指南的工具缺口提示，並依相關性過濾 skill 清單
- 合併 session summary 前，以 decision model 移除噪音對話與過時的 key decisions、past discussions
- context 超限時，先以 decision model 移除需求已用不到的工具步驟，再依最舊優先刪減
- 新增專用的背景指令工具，處理長時間工作、watcher 與定時檢查；原指令工具只在前景執行，沒有 decision model 時隱藏背景工具
- TUI 與 Web 新增 TypeSafe API key 設定；存完 key 不進入選模型，改在 decision 設定中選擇
- Web reasoning trace 顯示帶 reasoning 等級的模型與切換行，即時與歷史紀錄皆適用；完成的那一輪重新整理後不顯示

</details>

### UPDATE

- Record only standing rules as key decisions in the summary prompt, with agreed and rejected markers in the configured output language (@pardnchiu) [b42859de]
- Treat the configured reply language as the default and switch when the request or a skill asks for another language (@pardnchiu) [ecd6f3df]
- Warm model context limits in the background and label to-do progress as Plan (@pardnchiu) [8c520902]
- Time out watch checks at 3 seconds, keep unsent output for the next check, and report the accumulated output when checks stop (@pardnchiu) [7d673696, 0112a7e4]
- Guide page fetching to check a site's llms.txt first and prefer its listed markdown pages (@pardnchiu) [0112a7e4]

<details>
<summary>翻譯</summary>

- summary prompt 只把之後都適用的規則記為 key decisions，並以設定的輸出語言標示同意與否
- 設定的回覆語言改為預設值，請求或 skill 指定其他語言時切換
- 在背景預熱模型 context 上限，待辦進度標示為 Plan
- 監看檢查逾時改為 3 秒，未送出的輸出保留到下一輪，停止監看時回報累積的輸出
- 抓取網頁的指引改為先查看網站的 llms.txt，優先抓其列出的 markdown 頁面

</details>

### REFACTOR

- Centralize decision model readiness, request preparation and batching in the decision package (@pardnchiu) [ecd6f3df, 1097aca3]

<details>
<summary>翻譯</summary>

- 將 decision model 的就緒檢查、需求前處理與分批集中到 decision package

</details>

## Scope

- `internal/agents/decision/` — FEAT, REFACTOR
- `internal/agents/exec/` — FEAT, UPDATE, REFACTOR (multiple files)
- `internal/tools/` — FEAT, UPDATE (multiple files)
- `internal/runtime/tui/`, `internal/runtime/routes/` — FEAT (multiple files)
- `internal/session/` — FEAT (`config/config.go`, `log/format.go`, `log/replay.go`)
- `internal/filesystem/` — UPDATE (`replyLang.go`)
- `internal/utils/` — FEAT, UPDATE (`event.go`, `utils.go`)
- `page/src/js/`, `page/index.html` — FEAT (multiple files)
- `configs/` — FEAT, UPDATE (multiple files)
- `go.mod`, `go.sum` — CHORE

---

Generated by [SKILL](https://github.com/pardnchiu/skill-version-generate)
