Release notes

BUGFIX

A dedicated code search command, plus fixes for garbled formatting and intrusive errors

You can now quickly dig through your entire project's code using the new /codesearch (or /cs) command. It interprets your queries as regular expressions (regex, an advanced syntax for pattern matching) by default, but you can use -F for strictly literal matches and filter specific files using f: globs. Visually, the interface has grown smarter: it now draws a clear indicator line to show exactly where earlier conversation history was squeezed down (context-compaction, the feature that folds old memories to save space); extra padding spaces around inline code have been stripped away; and shell commands containing dollar signs will no longer be mistaken for math formulas. Also, when an eligibility error occurs, the message and verification URL now sit politely inline in your input loop, rather than pushing your whole screen upwards. It's like getting a new bookshelf that comes with a powerful cataloging system to pinpoint any book, neatly tucks annoying notification slips into the pages, and smooths out the awkward gaps between the books.

PERF

Startup and discovery speeds skyrocket, cutting out redundant file reads

You no longer have to stare at a stalling screen while Antigravity (Google's terminal AI assistant) warms up. Previously, during bring-up, the CLI would completely block your interactive startup while it laboriously scanned your file system to discover skills (settings providing extra capabilities); it now loads them asynchronously (letting the main interface start instantly while loading happens in the background), drastically cutting down startup latency. Moreover, when the system hunts for customizations like skills, rules, agents, or hooks, it now consolidates these directory walks and caches (temporarily saving results for instant reuse) its filesystem lookups, eliminating redundant I/O reads. It also fixed a minor hiccup where customization rules were loaded twice if the directory was reached via a symlink (a file pointing to another location). It's like driving your car: instead of a full-body security sweep every time you turn the key, you can just start the engine and go, and your GPS remembers the routes so it doesn't have to recalculate at every intersection.

FEATURE

No more CPU spikes on huge chats, and mouse copying works smoothly

Your computer will no longer choke on massive conversations when using no-flickering mode (a display mode that prevents the terminal screen from flashing on every update). Previously, as the chat grew, every single screen refresh would rebuild the conversation index (the internal map of the chat) larger and larger, causing high CPU usage and unbounded rendering costs. This index rebuild is now idempotent (meaning it converges to a stable state no matter how many times it runs), keeping system load stable. Row math in this mode was also corrected so the status line stays neatly inside your viewport, and dismissing an artifact (a standalone document preview generated by the system) detail view will no longer leave ghost comments on the screen. Even better, it now supports copy-on-select: dragging to highlight text and simply releasing the mouse instantly copies the clean text (stripped of ANSI terminal color codes) to your clipboard, hiding the virtual scrollbar so it doesn't interfere. It's like working on a mile-long scroll — previously, your assistant would recount the entire scroll every time you added a stroke; now, they only process what's needed. And when you want to trace a section, circling it instantly gives you a clean photocopy, while the scroll handles tuck themselves away.

BUGFIX

Tighter permissions for headless runs, and no more login loops on Linux

When running tasks in the background, the system no longer makes unauthorized decisions. Previously in headless runs (modes without a terminal window, like -p), tools requiring permission either hung or auto-approved; the CLI now soft-denies them and prints a stderr notice showing the allow-rule needed to permit them. In "always-proceed" mode, outside-of-workspace file writes are no longer incorrectly auto-approved. Linux users are saved from login loops caused by slow OS keyring reads; the CLI now bypasses the keyring if no D-Bus session bus is present, skips it for an hour after a timeout, and extends timeout windows. Like sending a robot to a warehouse: encountering a locked door, it reports the key it needs; if the guard is slow, it waits longer instead of triggering alarms.

BUGFIX

Timeout limits on runaway servers save conversations from sudden death

When you ask the AI to invoke an external tool, it will no longer get dragged down by unresponsive servers. Previously, if your MCP (Model Context Protocol, a standard connecting AI to external tools) server simply never responded, the agent would freeze like a statue and hang indefinitely; the system now actively bounds connection attempts, tool-listing requests, and per-tool-call attempts with strict timeouts, allowing it to gracefully give up and move on. Furthermore, certain tool calls used to catastrophically break the conversation by corrupting the history (the underlying memory of the chat), which blocked all further responses and killed the session instantly; this fatal bug has been fully squashed. It's like sending an assistant to fetch a document — they used to stand there forever if the room was empty and lose their walkie-talkie; now you've given them a strict timeout rule, so they come back if nobody answers, and keep their radio perfectly safe.

Original changelog

Original changelogA dedicated code search command, plus fixes for garbled formatting and intrusive errors
Added a `/codesearch` command (aliases `/cs` and `/search`) to interactively search code across your workspace, interpreting queries as regex by default with `-F`/`--literal` for exact matching and `f:`/`file:` globs to include or exclude paths.
Added an indicator at each context-compaction boundary so you can see where earlier compaction happened.
Improved eligibility error handling by showing errors with a verification URL inline in the input loop instead of stacking them above the screen.
Removed the padding spaces around inline code for tighter rendering.
Fixed code-block corruption where `$..$` math expansion desynced from the Markdown parser and mangled fenced shell snippets such as `git fetch "$GIT_REMOTE"` by detecting fenced code blocks line-by-line.
Original changelogStartup and discovery speeds skyrocket, cutting out redundant file reads
Improved interactive startup latency by loading skills asynchronously so the CLI no longer blocks on a synchronous, filesystem-heavy skill-discovery pass during bring-up.
Improved customization loading latency for skills, rules, agents, and hooks by consolidating directory walks and caching filesystem lookups to cut redundant I/O during discovery.
Fixed customization rules being loaded twice when a rules directory is reachable through a symlink.
Original changelogNo more CPU spikes on huge chats, and mouse copying works smoothly
Added copy-on-select in no-flickering mode so dragging highlights text and releasing the mouse copies the ANSI-stripped selection to the clipboard, and hides the virtual scrollbar so it no longer interferes with copying multi-line output.
Fixed high CPU and unbounded render cost on large conversations in no-flickering mode by making index rebuilds idempotent so the conversation index converges instead of growing on every rebuild.
Fixed lingering artifact comments after dismissing the artifact detail view and corrected no-flickering-mode row math so the status line renders correctly within the viewport.
Original changelogTighter permissions for headless runs, and no more login loops on Linux
Fixed headless (`-p`) runs hanging or silently auto-approving tools that require a permission confirmation, so the CLI now soft-denies such tools and prints a stderr notice naming the allow-rule needed to permit them.
Fixed outside-of-workspace file writes being incorrectly auto-approved in always-proceed mode.
Fixed repeated sign-in prompts on Linux caused by the OS keyring: the CLI now bypasses the keyring when no D-Bus session bus is present (headless hosts and containers), skips it for an hour after a timeout, and uses longer keyring timeouts so a slow-but-successful credential read is no longer cut short and forced into a fresh login.
Original changelogTimeout limits on runaway servers save conversations from sudden death
Fixed MCP servers hanging the agent indefinitely when a server never responds by bounding connection, tool-listing, and per-tool-call attempts with timeouts.
Fixed conversations breaking after certain tool calls, which previously corrupted the conversation history and blocked all further responses.