Release notes

FEATURE

`remote-control` can now be registered as an OS background service, keeping connections alive across logouts and reboots

When connecting back to your workstation remotely while away, the biggest headache is losing the connection after logging out or rebooting.

The tool has added the remote-control start, remote-control status, and remote-control stop subcommands, allowing you to register the CLI as an operating system background service. Even if you log out of your account or restart the machine, the host remains reachable. Running remote-control start --name <label> lets you set a custom identification label in the instance list, while adding the --session flag restricts the service to your current login session.

# Register as an OS background service to stay reachable across reboots and logouts
agy remote-control start --name "office-mac"

# Scope strictly to the current login session
agy remote-control start --session

# Check service status and stop the service
agy remote-control status
agy remote-control stop
FEATURE

Half-page scrolling expands to more views with default keybindings, preventing accidental exits in read-only panels

Navigating lengthy responses or inspecting diffs in the terminal is now much smoother. Half-page scrolling has been improved across all scrollable views, including altscreen mode, the diff viewer, and various read-only detail panels. Pressing ctrl+d in read-only panels now strictly scrolls down half a page instead of accidentally triggering the exit confirmation prompt. Additionally, shift+up and shift+down have been introduced as customizable default keybindings for half-page navigation, mapping to navigation.half_page_up and navigation.half_page_down respectively.

{
  "navigation": {
    "half_page_up": "shift+up",
    "half_page_down": "shift+down"
  }
}
BUGFIX

Content safety filters now provide clear stop reasons, eliminating empty responses and pointless retries

When an input prompt or model-generated response triggers safety guardrails, the terminal no longer leaves you baffled with vague errors.

Previously, when prompts or generated content were blocked by content safety filters, the system often threw spurious no candidate found errors, ended the entire turn silently with an empty response, or repeatedly retried rejected input. The CLI now surfaces an explicit content-filter stop reason, letting you clearly see what triggered the safety review.

BUGFIX

`scratch/` drafts are now excluded from watchers, keeping artifact panels and checkpoints clean

When an agent drafts scratchpad code or intermediate computations, your workspace panels and version history will no longer be cluttered with temporary files. Previously, when an AI agent wrote temporary working files to the scratch/ directory, it accidentally triggered recursive filesystem watchers. As a result, intermediate computational files were treated as finished deliverables and flooded into the artifact review panel. Checkpoints were also polluted with noisy, irrelevant entries. This is now fixed, and scratch files no longer show up in the artifact panel or checkpoints.

BUGFIX

Global plugin MCP servers fix startup initialization, relaxing tool schema validation compatibility

Expanding external tools is now much more reliable for both server startup and tool schema validation. When using MCP extensions, bundled servers inside globally installed plugins previously failed to initialize at CLI startup and failed to update their running status when plugins were enabled or disabled. Additionally, when third-party tool input schemas omitted the additionalProperties setting, legacy schema validation rejected them as non-compliant and blocked tool invocation. Both issues have now been resolved: bundled servers in global plugins initialize as expected while syncing state changes, and third-party tools omitting that field pass validation normally.

BUGFIX

Bypassing disk customization discovery for non-command messages speeds up initial agent responses

When typing ordinary questions into the chat box, you will now see the AI begin responding much faster.

Previously, whenever a user sent a message—even one without any / slash command—the system still performed filesystem customization discovery walks. This redundant search wasted time on every turn, adding noticeable delay before the agent began answering. The system now performs disk searches only when a command is actually invoked, effectively reducing response startup latency.

BUGFIX

`cli.log` removes spurious error prefixes, clearing log clutter from background daemon output

When inspecting log files or troubleshooting system status, screens full of false alarms will no longer mislead your investigations. Viewing cli.log or running background daemon subcommands now presents clean output in both logs and the terminal. Previously, before the underlying library completed initialization, every logged line was forcefully prefixed with a spurious ERROR: logging before google.Init string. This painted normal runtime output as alarming error messages and severely derailed debugging efforts. That spurious prefix is now gone.

BUGFIX

Remote Control fixes macOS startup termination and legacy script leftovers, adding paid cloud project support

Operating the Remote Control background service across different platforms and account environments is now much better behaved.

When launched by the system service manager on macOS, the remote-control background service previously terminated shortly after startup; it now runs stably in the background. Running remote-control start and remote-control stop no longer leaves background services running from legacy installer scripts, ensuring clean service handoffs. Additionally, for users whose access comes from a paid Google Cloud project, the previously unavailable Remote Control setting has been fixed, allowing straightforward feature activation.

BUGFIX

Legacy conversations gain backward-compatible loading, preventing resume failures on unknown steps

When picking up past conversations from days ago or before an update, your chat history will no longer fail to load due to unrecognized formats. Previously, when resuming a conversation created in an older version, the system often failed with an unknown step type error because it could not recognize legacy step formats in the log, making the entire conversation unopenable. The loader parser now features improved backward compatibility for older formats, smoothly parsing legacy step types and fully restoring the conversation session.

Original changelog

Original changelog`remote-control` can now be registered as an OS background service, keeping connections alive across logouts and reboots
Added the `remote-control start`, `remote-control status`, and `remote-control stop` subcommands to run the CLI as a background service registered with your operating system's service manager so your machine stays reachable across logouts and reboots; `remote-control start --name <label>` sets a custom machine label in the Remote Control instance list, and `--session` scopes the service to your active login session.
Original changelogHalf-page scrolling expands to more views with default keybindings, preventing accidental exits in read-only panels
Improved half-page scrolling across all scrollable views — including altscreen mode, the diff viewer, and read-only detail panels where `ctrl+d` no longer triggers the exit prompt — and set `shift+up` and `shift+down` as customizable default keybindings for half-page navigation (`navigation.half_page_up` and `navigation.half_page_down`).
Original changelogContent safety filters now provide clear stop reasons, eliminating empty responses and pointless retries
Fixed prompts or model responses blocked by content safety filters failing with a spurious "no candidate found" error, ending silently with an empty turn, or repeatedly retrying the rejected input; the CLI now surfaces a clear content-filter stop reason.
Original changelog`scratch/` drafts are now excluded from watchers, keeping artifact panels and checkpoints clean
Fixed temporary working files written to the agent `scratch/` directory triggering recursive filesystem watchers and appearing as noisy entries in the artifact review panel and checkpoints.
Original changelogGlobal plugin MCP servers fix startup initialization, relaxing tool schema validation compatibility
Fixed MCP servers bundled inside globally installed plugins failing to initialize at CLI startup or failing to update their running status when plugins are enabled or disabled.
Fixed third-party MCP server tools failing schema validation when their input schemas omit `additionalProperties`.
Original changelogBypassing disk customization discovery for non-command messages speeds up initial agent responses
Fixed unnecessary filesystem customization discovery walks running on every user message even when no slash command is invoked, reducing latency before the agent begins responding.
Original changelog`cli.log` removes spurious error prefixes, clearing log clutter from background daemon output
Fixed every log line in `cli.log` and background daemon subcommand output being prefixed with a spurious `ERROR: logging before google.Init` message.
Original changelogRemote Control fixes macOS startup termination and legacy script leftovers, adding paid cloud project support
Fixed the macOS `remote-control` background service terminating shortly after startup when launched by the system service manager, `remote-control start` and `remote-control stop` leaving legacy installer-script background services running, and the Remote Control setting being unavailable when your access comes from a paid Google Cloud project.
Original changelogLegacy conversations gain backward-compatible loading, preventing resume failures on unknown steps
Fixed older conversations failing to load with an `unknown step type` error when resumed.