Complete Plugin and Agent Listings with Structured Output Support
When you have installed many extensions and want to inventory which tools and dedicated assistants are currently active all at once, the information is often incomplete.
Running agy plugin list now adds a --json flag to output structured data for easy programmatic parsing. The command no longer displays only manually imported packages, but completely lists all plugins installed from the marketplace along with their version numbers and enabled status. When typing /plugin in a chat to view plugin details, the agent list below previously omitted subagents declared at the root of agents.json. This issue is now fixed, and all loaded agents are fully displayed by name instead of only grabbing directory names.
FEATURE
Model Switching Omits Thinking Parameters and Automatically Filters Unauthorized Options
When switching chat models or tuning reasoning depth, users often got stuck due to missing parameters or selecting invalid options.
When specifying a model with --model or /model, you can now enter just the base model name without being required to add the --effort flag. The system automatically applies a default thinking effort (the server default, or otherwise medium or lowest in order) without throwing an error and halting. If logged in through a Google Cloud pay-as-you-go commercial account, the menu proactively hides third-party models that the project has no permission to access. In addition, an error where thinking budgets conflicted with thinking effort when using Application Default Credentials (ADC, a mechanism allowing local environments to directly obtain cloud authorization) has also been fixed.
FEATURE
Remote Control Settings Panel Opened for Adjustments with Instant Permission Deletion Sync
When checking terminal progress via a mobile browser while away, users often ran into dilemmas where preference options could not be changed or revoked rules remained in effect.
The settings panel for browser Remote Control (a feature allowing users to operate terminal sessions through a web interface) is now officially open. The window directly lists active items such as project and global permissions, queued messages, AI quotas, telemetry data, and artifact reviews. Starting via agy remote-control serve loads settings.json, and changes made on the web page are immediately written back to the local machine. Previously, "always allow" rules approved in the browser remained in effect even after being removed in the rule editor or on the /permissions tab. Rules are now stored exclusively in the shared config.json, becoming invalid immediately upon removal.
BUGFIX
Command Flag Errors No Longer Run Silently, Returning Explicit Warnings and Exit Codes
When launching tools from the command line, accidentally mistyping an agent name or combining contradictory flags could easily cause confusion because the system did not clearly intervene.
When specifying an agent using --agent with a misspelled name, the system previously fell back silently to the default agent. In headless mode (an execution mode without a visual terminal interface) combined with -p, encountering an unmatched name now exits directly with status code 1 and lists all available agents. Under the same condition in a standard interactive window, the system now displays an Agent Not Found warning before falling back to the default agent. When mixing --print with --prompt-interactive, the exit code after reporting the conflict has also been changed from 0 (which originally indicated success) to exit code 2.
BUGFIX
Model Request Failure Retry Intervals Shortened to Eliminate Idling During Unstable Connections
When connections to AI servers are unstable or requests fail repeatedly, the terminal previously often became unresponsive. During consecutive model request failures, the system previously waited up to 4 minutes between automatic retries, leaving the entire session stalled for extended periods. This issue has now been resolved, and the upper limit for wait intervals between automatic retries has been shortened to at most 30 seconds, reducing idle waiting time during connection abnormalities.
BUGFIX
Remote MCP Login Credentials Stabilized to Prevent Forced Logout on Transient Network Drops
When using remote plugins that require web authorization, the biggest frustration was being forcibly logged out over minor network fluctuations. When connecting to a remote MCP (Model Context Protocol, a protocol allowing AI to connect to external tools) server that uses OAuth authentication, the system previously cleared login credentials whenever it encountered brief network interruptions, timeouts, or server errors. Now credentials are cleared only when the authorization server definitively rejects authentication, so brief disconnections no longer require logging in again.
BUGFIX
Diff Command No Longer Falsely Reports No Changes When Repositories Enable Color Output
When attempting to review code modification progress during a conversation, the terminal sometimes displayed blank output even when modifications were present. When entering /diff to inspect changes in a Git, Mercurial, or Jujutsu repository, if version control was configured to force color output (such as color.ui = always), the system previously misinterpreted the output and displayed No uncommitted changes. This issue has now been resolved, so the command properly reads and displays all uncommitted file modifications even when color formatting is enabled in the environment.
BUGFIX
Conversation History Search Automatically Fallbacks on Timeout Without Freezing the List
When typing in the input box to reference an earlier conversation, slow searches often froze the cursor in place and prevented selection. When entering @conversation: in the terminal to search for past conversations, if the conversation lookup was slow, the menu previously stayed stuck on the Fetching matches for ... loading screen. This issue has now been resolved: after waiting more than 2 seconds, the menu automatically falls back to showing locally stored conversation history, eliminating the need to wait indefinitely.
BUGFIX
Incomplete Media Files Rejected Directly to Prevent Cascading Conversation Failures
When having an agent analyze media files in a project folder, an incompletely downloaded file could ruin the entire subsequent conversation. When an agent read a WebM media file that was incomplete or contained only header information, the system previously attached the file to the session, causing every subsequent conversation request to fail with an error. This issue has now been resolved: the system directly refuses to load such incomplete files and no longer brings corrupted attachments into the conversation, ensuring subsequent operations proceed normally.
Original changelog
Original changelogComplete Plugin and Agent Listings with Structured Output Support
Added a `--json` flag to `agy plugin list` for machine-readable output, and fixed the command showing only imported plugins: it now lists every installed plugin, including ones installed from a marketplace, with its version and whether it is enabled.
Fixed the `Agents:` row in `/plugin` plugin details leaving out subagents a plugin declares in its root `agents.json`; it now lists every loaded agent by name instead of by its `agents/` folder name.
Original changelogModel Switching Omits Thinking Parameters and Automatically Filters Unauthorized Options
Changed `--model` and `/model` to accept a base model name without `--effort`: instead of failing with an error asking for `--effort`, the CLI now picks the model's default thinking level (the server's default for that model, otherwise medium, otherwise the lowest available).
Improved the `/model` picker for Business sign-in with a Google Cloud project on pay-as-you-go: third-party models your project can't access are now hidden instead of failing when you send a message.
Fixed requests failing with `thinking_budget and thinking_level are not supported together` when signed in with Application Default Credentials and using a model that has a thinking level.
Original changelogRemote Control Settings Panel Opened for Adjustments with Instant Permission Deletion Sync
Improved Remote Control so the browser's Settings modal opens for CLI sessions and shows the settings the CLI actually uses (project and global permissions, queued messages, AI credits, telemetry, and artifact review) instead of a notice that settings can't be changed in the browser, and `agy remote-control serve` sessions now use your saved `settings.json` and save changes made in the browser back to it.
Fixed "Always allow" rules approved from a Remote Control browser session still applying after you removed them in the browser's rules editor or the shared tab of `/permissions`; these rules are now saved only to the shared `config.json`.
Original changelogCommand Flag Errors No Longer Run Silently, Returning Explicit Warnings and Exit Codes
Fixed `--agent` silently running the default agent when the name matches no agent: headless `-p` runs now exit with code 1 and list the available agents, and interactive sessions show an `Agent Not Found` warning before falling back to the default agent.
Fixed combining `--print` with `--prompt-interactive` exiting with status 0 after reporting the conflict; it now exits with status 2 like other print-mode usage errors.
Original changelogModel Request Failure Retry Intervals Shortened to Eliminate Idling During Unstable Connections
Fixed long stalls when model requests fail repeatedly: the agent now waits at most 30 seconds between automatic retries instead of up to 4 minutes.
Original changelogRemote MCP Login Credentials Stabilized to Prevent Forced Logout on Transient Network Drops
Fixed remote MCP servers that use OAuth signing you out after a temporary network failure, timeout, or server error; saved sign-ins are now cleared only when the server or its authorization server actually rejects them.
Original changelogDiff Command No Longer Falsely Reports No Changes When Repositories Enable Color Output
Fixed `/diff` showing `No uncommitted changes` in Git, Mercurial, and Jujutsu repositories configured to always color output, for example with `color.ui = always`.
Original changelogConversation History Search Automatically Fallbacks on Timeout Without Freezing the List
Fixed `@conversation:` suggestions getting stuck on `Fetching matches for ...` when conversation search is slow; after 2 seconds the list now falls back to your local conversations.
Original changelogIncomplete Media Files Rejected Directly to Prevent Cascading Conversation Failures
Fixed a conversation failing on every later request after the agent read a truncated or header-only WebM file; such files are now rejected when read instead of being attached.