技能有了圖示,終端機清單仍排得整齊
打開 /skills 尋找常用技能時,現在能先看見每個 skill(可重複使用的工作說明)自己宣告的 emoji 圖示。圖示寫在 SKILL.md 檔案開頭的 metadata.icon;它會出現在 /skills 目錄清單、查看細節的標題,以及輸入斜線指令時跳出的自動完成選單。
終端機也會正確計算 emoji 這類多位元字元占多少寬度,因此圖示出現後,各欄文字不會歪成一團。
發布日期:2026-08-25
打開 /skills 尋找常用技能時,現在能先看見每個 skill(可重複使用的工作說明)自己宣告的 emoji 圖示。圖示寫在 SKILL.md 檔案開頭的 metadata.icon;它會出現在 /skills 目錄清單、查看細節的標題,以及輸入斜線指令時跳出的自動完成選單。
終端機也會正確計算 emoji 這類多位元字元占多少寬度,因此圖示出現後,各欄文字不會歪成一團。
在提示裡打 @ 想指定一個檔案位置,卻只記得它放在哪個空資料夾嗎?路徑自動完成現在會把空目錄也一起建立索引,不再只看搜尋結果裡已有檔案的地方。這也涵蓋只有資料夾、尚未放進內容的工作區結構;你可以在完成清單中找到它,再繼續往下走,不必先在裡面建立一個檔案來讓搜尋看見它。
只是想讓工具在工作區根目錄讀檔或列出檔案,卻一直跳出批准詢問,會把檢查工作切得零碎。預設的 review mode(檢視模式,只檢查內容)現在會自動授予工作區範圍的讀取權限,因此這兩種動作不用重複確認。
界線沒有因此放寬:要修改檔案,或要接觸工作區以外的位置,仍會照常要求確認。
在含有 submodule(嵌在專案裡、各自有版本紀錄的子專案)的 Git 儲存庫查看狀態時,等待往往不是你改了什麼,而是工具又把子模組的工作樹一路遞迴掃過。現在 Git 檢查會跳過這種遞迴掃描,以免狀態顯示延遲;子模組指向的提交版本若更新,仍會持續追蹤。
把 CLI 放進自動流程時,-p 或 --print 的列印模式若遇到無害的工具錯誤或權限拒絕,過去會把整次執行當成失敗,並回傳非零的結束碼。現在即使用 --output-format json 或 stream-json,也只會在 cascade-level failure(錯誤一路傳到整體流程)時回傳失敗結束碼,行為會和互動工作階段一致。
這讓不開互動介面的執行結果,不再被局部狀況誤判。
自己維護 settings.json 時,最怕某個新設定值或語法寫錯,程式一開就把原本的內容覆寫掉。現在啟動時若遇到無法辨識的設定值或語法錯誤,CLI 會保留磁碟上既有的設定檔,不再存回一份被截斷的版本。
你可以回頭修正那個項目,不必先從殘缺檔案救回其他設定。
沒有特別指定 agent configuration(代理的設定資料)時,輸入 /skills、/plugins、/agents 或 /hooks 卻被告知找不到自訂項目,容易誤以為內建內容不見了。現在這些列出指令會先掛載內建自訂項目,再顯示清單,因此沒有明確的代理設定也能看見它們。
這改的是清單檢視,不是要求你先建立一份代理設定。
主提示區正在串流顯示中日韓草稿時,字與字之間偶爾被插進不該有的空格,讀起來就像句子被拆散。這次會在更新逐字稿的邊界整理空白字元,避免 CJK(中文、日文與韓文)文字被多塞空格。它處理的是更新交界,不是把你的草稿內容重新改寫。
修正針對的是主提示區的串流更新,讓草稿依原本的字距呈現。
一輪對話已經結束,畫面上的 spinner(表示處理中的轉圈動畫)本該停下,卻仍在背景持續跳動。這個迴圈現在會在回合完成後停止,因此 CLI 閒置時不再因為它產生不必要的 CPU 喚醒。尤其你暫時不輸入下一個要求時,背景不會再為這個已結束的回合空轉。
你不必做任何設定;修正的是完成回合後仍持續運作的背景動畫。
When you open /skills to find a familiar skill (a reusable set of work instructions), each one can now show the emoji icon it declares. The icon lives in metadata.icon at the top of its SKILL.md file. It appears in the /skills catalog, detail headers, and slash-command autocomplete popups.
The terminal also calculates the display width of multi-byte Unicode characters correctly, keeping the columns aligned after icons arrive.
Typing @ to name a file path but remembering only its empty folder used to leave you stranded. Path autocomplete now indexes empty directories too, instead of seeing only places where search results already contain files. This includes workspace structures made up solely of folders with no contents yet, so you can find the directory in the completion list and keep navigating.
Repeated approval prompts can break up a simple inspection when a tool only needs to read or list files under the workspace root. Default review mode (a mode for examining content) now automatically grants workspace-scoped read access, so those two actions no longer need repeated confirmation.
The boundary remains: changing files or accessing anything outside the workspace still asks for confirmation.
In a Git repository with submodules (nested projects that keep their own version history), a status check can spend its time recursively scanning each submodule worktree. Repository inspection now skips that sweep to remove status latency, while still tracking updates to the commit pointer each submodule uses.
When you put the CLI into an automated flow, print mode with -p or --print used to mark the whole run as failed and return a non-zero exit code for benign tool errors or permission denials. That is now fixed for --output-format json and stream-json too. A non-interactive run reports failure only for a cascade-level failure (one that reaches the overall run), matching an interactive session.
Local trouble no longer mislabels the whole result.
If you maintain settings.json yourself, an unrecognized setting value or syntax mistake should not make startup overwrite what was already there. On encountering either one, the CLI now preserves the existing file on disk instead of saving a truncated version.
You can return to fix that entry without first rescuing the rest of your settings from a damaged file.
Without an explicit agent configuration (the data that configures an agent), /skills, /plugins, /agents, and /hooks could say no customizations were found, making built-in content seem absent. Their listing views now mount built-in customizations before showing the list, so they appear even with no agent configuration specified.
This changes the listing view; it does not require you to create an agent config.
While a CJK draft (Chinese, Japanese, or Korean text) streams into the main prompt, stray spaces could appear between characters and make the sentence look pulled apart. Streaming transcript updates now normalize whitespace at their boundaries, preventing those unwanted inserts.
The fix applies to streaming updates in the main prompt and keeps the draft at its intended spacing.
After a conversation turn had already finished, the spinner (the rotating animation that signals processing) could keep ticking in the background. That loop now stops when the turn completes, so an idle CLI no longer causes unnecessary CPU wakeups from it.
No setting is required; the fix is for the background animation that kept running after completion.
Added skill icon and visual branding support across the CLI, displaying emoji icons declared under `metadata.icon` in `SKILL.md` frontmatter across the `/skills` catalog list view, detail inspection headers, and slash command autocompletion popups, with proper multi-byte Unicode display width calculation to maintain terminal layout alignment.Improved `@` file path autocompletion by indexing empty directories alongside files in ripgrep search results, allowing unpopulated and directory-only workspace structures to be discovered and traversed during path completion.Improved permission management by automatically granting workspace-scoped read access under the default review mode, eliminating repetitive approval prompts for reading or listing files within the workspace root while strictly maintaining confirmation prompts for file modifications and external access.Improved Git repository inspection performance by skipping recursive submodule worktree scans while continuing to track commit pointer updates to eliminate status latency in repositories with submodules.Fixed print mode (`-p`/`--print`, including `--output-format json` and `stream-json`) treating benign tool execution errors and permission denials as fatal run failures with non-zero exit codes, ensuring headless exit codes reflect only cascade-level failures and match interactive session behavior.Fixed the CLI overwriting and discarding unparsed configuration in `settings.json` when encountering an unrecognized setting value or syntax error on startup, preserving the existing configuration file on disk instead of saving a truncated version.Fixed `/skills`, `/plugins`, `/agents`, and `/hooks` commands reporting that no customizations were found when invoked without an explicit agent configuration by mounting built-in customizations in listing views.Fixed CJK draft jitter in the main prompt by normalizing boundary whitespace in streaming transcript updates, preventing unwanted spaces from being inserted characters.Fixed the conversation spinner animation loop continuing to tick indefinitely in the background after turns completed, eliminating unnecessary CPU wakeups while the CLI is idle.