繁體中文

新功能

提示框也能用 Vim 編輯

手離開鍵盤去摸方向鍵,常會把寫到一半的提示詞節奏打斷。現在可到 /settings 的 Editor Mode 開啟預設關閉的 Vim 編輯模式(Vim,把鍵盤操作分成不同模式的文字編輯方式)。提示框有 Normal、Insert、Visual、Visual Line 四種模式,狀態列會顯示目前模式。你能用 h、j、k、l 移動,或用 d、c、y 刪除、修改、複製。想保留 Vim 操作又要正常送出,可啟用 Editor Mode > Insert First:提示框從 Insert 模式開始,單按 Enter 送出,shift+enter 或 ctrl+j 換行;Normal 模式則用 ctrl+s 或 ctrl+enter。差異與產物詳情頁的留言框也支援,收合區塊會被當成一整格移動。像把游標操作換成熟悉的變速桿。

新功能

列印模式不再假裝指令已執行

要讓腳本讀取帳戶狀態,又不想真的開一段對話時,列印模式(print mode,輸出結果就結束的執行方式)現在能直接回答唯讀斜線指令。像 -p "/usage"、/quota、/credits、/model、/effort、/skills,會逐行輸出 Tab 分隔資料;加上 --output-format json 或 stream-json 則拿到結構化資料。過程不啟動 agent、不花額度,也不留下對話。反過來,/clear 這類只能互動使用的指令,現在會明說失敗並告訴你該改用哪個旗標或子指令;以前它會被當普通提示詞,模型可能回你「已清除」但什麼都沒清。這像自助櫃台:能查的資料會印收據,不能辦的業務則明確指向正確窗口。

新功能

外掛不會因更新自行停用

你已經啟用的外掛(plugin,替工具加功能的附加元件),不該因為作者發布新版本就突然消失。現在外掛是否啟用只看 config.json,首次安裝時才依外掛的 manifest(描述外掛資訊與預設值的檔案)寫入一次初始狀態。這表示日後外掛把預設改成 "disabled": true,不會反過來關掉你原本正在用的外掛;作者把預設從關改開,也不會讓每個人的設定在下一次更新時被搬動。像公寓住戶各自保管門鎖,建商第一次交屋會給預設鑰匙,往後更換大樓公告卻不會替你扭動家門的鎖。

新功能

程式碼看得全,錯誤也說清楚

在產物詳情看一行很長的程式碼,右邊被切掉時,最難受的是不知道漏了什麼。現在程式碼檔的長行會換行,不再直接裁在畫面右緣。模型遇到限流或過載後需要重試時,也改為照伺服器指定的等待時間,而非客戶端自行猜一段退避時間;像伺服器發來一張寫著等待時間的取號單,程式照單等完再重試。另一個常見的「執行失敗」也更有答案:缺少授權或 IAM role(雲端服務用來授予權限的角色)時,畫面會直接指出這是權限問題並附上疑難排解連結,不再混成一般執行失敗。

問題修復

嚴格權限模式不會被放行漏洞繞過

你把工作階段切到 request-review 或嚴格權限模式,就是要逐次審核;空殼的允許清單不該替所有指令蓋章。以前像 command(time)、只有註解,或空的 () 這種解析後沒有任何指令字的 allowlist(允許清單)項目,竟會匹配每一條指令並自動批准。現在它們一律不匹配,這兩種審核模式也不再自動放行指令。MCP(Model Context Protocol,讓 AI 連接外部工具的協定)伺服器啟動時,管理控制也不會因為驗證前的一次抓取被快取成「不適用」而跳過;內建的 Chrome DevTools MCP 伺服器則不會被管理控制整個擋掉。像郵局的空白地址不會自動把每封信送出,真正的分流規則仍會檢查目的地;允許的信件才送達。

問題修復

貼上、補全與工具進度都不再走樣

把一大段文字貼進斜線指令當參數時,指令收到的不能只是 [Pasted text #N] 這張標籤。現在它會收到真正貼上的內容。送出自動補全的斜線指令後,歷史紀錄也會保存實際執行的完整指令名稱;按上箭頭叫出時,不再只重播你原先打到一半的前綴。別名則必須完整相符才會自動執行,打到一半只會留在提示框讓你繼續。另一頭,長時間執行的 MCP(Model Context Protocol,讓 AI 連接外部工具的協定)工具呼叫重新會回報進度,任務日誌檔也會建立。像寄件單不再只把「附檔第幾份」交給收件人,寄出的內容、收據與配送追蹤都對得上。

問題修復

列印模式不誤開問卷,也不再亂報額度歸零

用列印模式跑自動化時,過程中本來關掉的回饋問卷,不會再被非同步設定更新偷偷打開。額度查詢偶爾收到空白回應時,也不會立刻被當成餘額是零而跳出「Out of credits」。這就像查帳的傳真少了一頁,現在會承認資料沒到,而非武斷宣告帳戶歸零。還有一個容易誤導的選項被收起來:以 Google Cloud 專案或 application default credentials(應用程式預設憑證,雲端程式自動取得的登入證明)登入的帳戶,不再看到不適用的「Use AI Credits」設定。畫面只保留你真的能用的開關,少掉一個按了也不會生效的按鈕。

English

FEATURE

Vim editing comes to the prompt

If arrow keys keep breaking your flow while writing a prompt, open /settings, choose Editor Mode, and turn on the off-by-default Vim editing mode. Vim splits keyboard editing into modes: the prompt now has Normal, Insert, Visual, and Visual Line modes, with a status-line badge. Move with h/j/k/l, or delete, change, and copy with d, c, and y. To keep Vim editing while submitting normally, enable Editor Mode > Insert First: the prompt starts in Insert mode, bare Enter submits, and shift+enter or ctrl+j adds a line. In Normal mode, use ctrl+s or ctrl+enter to submit. Comment boxes in diff and artifact-detail views get the same treatment; a collapsed block moves as one unit. It is like shifting into a familiar gearbox before steering through text.

FEATURE

Print mode stops pretending a command ran

When a script needs account status but not a conversation, print mode can now answer read-only slash commands directly. -p "/usage", /quota, /credits, /model, /effort, and /skills emit one tab-separated record per line, or structured data with --output-format json or stream-json. No agent turn starts, no quota is spent, and no conversation is left behind. The reverse is now honest too: interactive-only commands such as /clear fail and name the flag or subcommand to use instead. Before, /clear could become ordinary prompt text and the model might claim the context was cleared when nothing happened. It is like a self-service counter that prints available records and points unavailable services to the right desk.

FEATURE

Plugins keep their enabled state through updates

An enabled plugin should not vanish just because its author ships an update. Plugin enablement now lives only in config.json; the plugin manifest, the file describing a plugin and its defaults, is used once to seed the initial state. If a later release changes its default to "disabled": true, it cannot turn off a plugin you already use. Nor can a default change from off to on move every user's preference at the next update. It is like each apartment keeping its own door lock: the builder supplies a default key at move-in, but later notices from the building do not turn your lock.

FEATURE

Code stays visible and errors say what is wrong

A long line of code clipped at the right edge is frustrating because you cannot tell what you missed. Artifact detail now wraps long lines in code files instead of cutting them off. When a rate limit or overload calls for a model retry, the client also waits for the delay supplied by the server rather than guessing its own backoff. It is like a server sending a wait-time ticket, and the client retrying only after that time elapses. Another vague failure now gets a name too. Missing a license or IAM role, a role that cloud services use to grant permissions, is shown as a permission failure with a link for troubleshooting, not disguised as a generic run failure.

BUGFIX

Strict permission mode cannot be bypassed by bad allowlists

If you choose request-review or strict permission mode, you expect each command to stay reviewable; an empty-looking allowlist entry should not stamp every command approved. Entries such as command(time), a comment alone, or empty () tokenize to zero command words, yet once matched everything and silently approved it. They now match nothing, and commands are no longer auto-approved in either review mode. Administrative controls for MCP servers, a protocol that lets AI connect to external tools, also survive startup: a pre-authentication fetch can no longer cache “not applicable” for five minutes and let every server through. The built-in Chrome DevTools MCP server is no longer blocked outright by those controls. It is like a blank address at a post office: it does not automatically send every letter; the real sorting rules still check the destination, and only permitted mail is delivered.

BUGFIX

Pastes, autocomplete, and tool progress stay intact

When you paste a large block as an argument to a slash command, the command needs the text, not merely the [Pasted text #N] label. It now receives the actual pasted content. After you submit an autocompleted slash command, history stores the complete command name that actually ran, so up-arrow recall does not replay only the prefix you first typed. An alias also needs an exact match before it auto-executes; a partial alias stays in the prompt for you to finish. On the other end, long-running MCP tool calls, where AI connects to external tools through a protocol, report progress again and initialize a task log. It is like a shipment that now carries the real attachment, its receipt, and live tracking rather than an attachment-number sticker.

BUGFIX

Print mode stays quiet and credit checks stop crying zero

When automation runs in print mode, a feedback survey that was turned off no longer springs back on because settings refresh asynchronously. And if a credit lookup receives an empty response, it no longer treats that absence as a zero balance and shouts “Out of credits.” It is like an account fax missing a page: the app now recognizes missing information rather than declaring the account empty. One misleading switch is also gone. Accounts signed in through a Google Cloud project or application default credentials, login proof a cloud application obtains automatically, no longer see the inapplicable “Use AI Credits” setting. The screen keeps switches you can actually use, not a button that cannot take effect.

原始 CHANGELOG

Original changelog提示框也能用 Vim 編輯
Added a Vim editing mode, off by default and switched on from `/settings` under `Editor Mode`, bringing modal editing to the prompt with Normal, Insert, Visual and Visual Line modes, a mode badge in the status line and a Vim tab in `/help`, and covering the `h`/`j`/`k`/`l`, `w`/`b`/`e` and `W`/`B`/`E` motions, the `0`/`^`/`$`/`gg`/`G` boundaries, the `f`/`F`/`t`/`T` character searches with their `;` and `,` repeats, the `i`/`a`/`I`/`A` insert entries, the `d`/`c`/`y` operators alongside `x`, `D` and `C` filling the unnamed register for `p`, and the `iw`/`aw`/`iW`/`aW`/`ip`/`ap` text objects.
Added Vim-aware submission so a prompt can be sent without leaving modal editing, through an `Editor Mode > Insert First` toggle that opens the prompt in Insert mode where a bare `Enter` submits and a modified key such as `shift+enter` or `ctrl+j` inserts a newline, `ctrl+s` and `ctrl+enter` keys that submit from Normal mode, an `Enter` binding available as `vim.insert.submit`, and the full set of `vim.*` scopes in `keybindings.json` for remapping any of it.
Added Vim editing to the comment editors in the diff and artifact-detail views, whose footer hints follow the active mode rather than showing one fixed set of bindings, and made a collapsed block behave as a single unit under Vim motions.
Original changelog列印模式不再假裝指令已執行
Added non-interactive answers for the read-only slash commands in print mode, so `-p "/usage"`, `/quota`, `/credits`, `/model`, `/effort` and `/skills` emit one tab-separated record per line — or a structured payload under `--output-format json` and `stream-json` — without starting an agent turn, spending quota, or leaving a conversation behind.
Added an explicit refusal for the remaining interactive-only slash commands in print mode, which previously fell through as literal prompt text and let the model answer as though the command had run, so `-p "/clear"` reported the context cleared while nothing was cleared; each now fails with the flag or subcommand that replaces it.
Original changelog外掛不會因更新自行停用
Improved plugin enable and disable so `config.json` is the only place enablement lives, seeded once from each plugin's manifest, which stops a plugin that later ships `"disabled": true` from switching itself off under someone who was already running it and stops a shipped-default change from moving every user on the next release.
Original changelog程式碼看得全,錯誤也說清楚
Improved the artifact detail view by wrapping long lines in code files instead of clipping them at the right edge.
Improved model retries by honoring the server-supplied retry delay instead of the client's own backoff, so a retry after a rate limit or an overload waits exactly as long as the server asks.
Improved model-loading errors so a permission failure such as a missing license or a missing IAM role is shown as itself, with a troubleshooting link, instead of a generic failure during the run.
Original changelog嚴格權限模式不會被放行漏洞繞過
Fixed an allowlist entry that tokenizes to zero command words — `command(time)`, a comment-only entry, or an empty compound such as `()` — matching every command and silently auto-approving anything the agent ran; such an entry now matches nothing.
Fixed commands being auto-approved while the session was in request-review or strict permission mode.
Fixed admin controls being skipped for MCP servers at startup, where a fetch made before authentication cached "admin controls not applicable" and allowed every server for the next five minutes, and fixed the built-in Chrome DevTools MCP server being blocked outright by admin controls.
Original changelog貼上、補全與工具進度都不再走樣
Fixed MCP progress callbacks being dropped and the task log file not being initialized, so long-running MCP tool calls report progress again.
Fixed a slash command receiving the collapsed `[Pasted text #N]` placeholder instead of the pasted content when its argument was pasted into the prompt.
Fixed the prompt saving the typed prefix rather than the completed command name to history when an autocompleted slash command was submitted, so up-arrow recall replays what actually ran, and made an alias require an exact match before auto-executing so a partial alias fills the prompt instead of running a command you did not finish typing.
Original changelog列印模式不誤開問卷,也不再亂報額度歸零
Fixed an asynchronous settings refresh re-enabling the feedback survey partway through a print-mode run that had switched it off.
Fixed spurious "Out of credits" errors, where an empty credits response was read as a balance of zero.
Fixed the "Use AI Credits" setting being offered to accounts signed in through a Google Cloud project or application default credentials, where it does not apply.