Agent Zero Release Notes
Highlights
This release introduces a redesigned first-run onboarding experience, separates Desktop and Office into focused plugins, adds host browser routing through the A0 CLI connector, and delivers significant prompt and tool contract improvements informed by cross-provider evidence sweeps.
New Features
- Guided first-run onboarding — A new wizard walks users through Cloud vs. Local provider selection, account connection, model picking, and a ready state, replacing the previous manual setup flow.
- Ollama Cloud provider — Available as an OpenAI-compatible chat provider with hosted API base and model listing.
- Nebius Token Factory provider — Registered as an OpenAI-compatible provider, available in onboarding and model config.
- Host Browser (Bring Your Own Browser) — Route browser actions through the A0 CLI connector to a local Chrome/Chromium instance with remote-debugging support, including profile mode selection (existing profile or clean Agent profile).
- Browser runtime selection exposed to CLI — A protected connector endpoint allows the A0 CLI to switch between Docker browser and Bring Your Own Browser mode.
- Persistent browser history screenshots — Each Browser tool call saves a static JPEG to chat history for immutable transcript previews.
- ZIP download toast feedback — Immediate grouped progress toasts for backup and file-browser ZIP downloads with error replacement.
- API chat lifetime and cleanup —
lifetime_hoursis validated and persisted per chat; a background job loop removes expired API chats automatically. - Connector model overrides in Web UI — Custom per-chat model overrides now render in the model switcher instead of a generic "Custom" label, with live refresh on changes.
chats-header-controlsextension hook — Plugins can inject controls into the chats list header via the establishedx-extensionpattern.
Architecture & Plugin Changes
- Desktop split into
_desktopplugin — Xpra/Xfce lifecycle,/desktoproute, Desktop state, session APIs, surface registration, and the linux-desktop skill now live in_desktop. - Office reduced to document ownership —
_officefocuses on document artifacts, Markdown sessions, LibreOffice-compatible file actions, and persistence. Binary document editing routes through explicit Desktop requests. - Shared surfaces frontend service — Browser and Desktop register docked or floating live UI through a dedicated surfaces layer, preserving active viewers across canvas/modal switches.
- Office and Desktop state moved under plugin storage — Retired
/usr/_officeand/usr/_desktoptrees migrate into/usr/plugins/<plugin>at startup. - Serialized runtime package preparation — Office and Desktop apt operations share an in-process retry guard to handle transient apt locks gracefully.
- Desktop install progress — The Desktop frontend shows a neutral install message during runtime preparation instead of a misleading missing-dependencies error.
Tool & Prompt Improvements
- Normalized tool action contracts — Multi-action tools standardized around
tool_args.actionwhile maintaining backward compatibility with older dialects. - Renamed skills to task-oriented names — Office skills become Writer, Calc, Impress; high-impact skills get task-oriented names; plugin-owned skills move into their owning plugin folders.
- Reduced default prompt pressure — Browser and scheduler prompts compacted into skill-backed manifests, skill catalog descriptions shortened, noisy framework knowledge pruned.
- A0 connector remote skills split by affordance — Separate text-editor and code-execution remote skills replace the combined CLI remote workflow skill; computer-use remote scoped to desktop control and skill-gated as beta.
- Browser tool ergonomics — Selector-based reference actions, coordinate click fallbacks, focused-field typing, string key chords, and smarter content helper snapshots that ignore framework event wrappers.
- Document artifact stabilization — File creation is opt-in through
document_artifact, file cards appear only in final responses, and Desktop canvas sessions refresh after saved edits.
Security Fixes
- Path-containment bypass in
/api/image_getresolved — Requested images are now resolved against the Agent Zero base directory with symlink-aware validation. SVG/SVGZ responses includenosniffand sandboxed CSP headers.
Bug Fixes
- Blocking history compression edge cases — Stalled automatic compression no longer spins forever; large single-line histories (85k+ characters) split by verified token budget.
- Canvas attachment for browser and documents — Browser canvas attaches to active Docker sessions with initial snapshots; Markdown documents open through the right-canvas Desktop editor.
- Bare desktop canvas treated as ready — Linux Desktop reports healthy when XFCE has no active application window but display and screenshots are available.
- Computer-use rearm handling — Stale Free Run settings no longer treated as ready; agents provide backend-agnostic rearm guidance.
- Subordinate agent document affordances — Automatic office document response affordances skipped for delegated agents so reviews keep their actual content.
- Model config provider controls — Custom API base URL resets on provider change; Supports Vision toggle moved out of Advanced Settings.
Infrastructure & Maintenance
- Browser Playwright cache moved to
/a0/tmp/playwright— Startup migration cleans retired usr-based caches automatically. - uv cache cleaned during self-update — Best-effort
uv cache cleanruns when the self-update manager processes an update. - Legacy Collabora retirement — Old
a0_office_collaborasupervisor program stopped and removed during Docker self-update; stale runtime paths cleaned. - Legacy runtime artifact cleanup — Stale directories removed, retired packages (including dynamically discovered
collaboraoffice*splits) purged at startup/self-update. - Self-update backups skip runtime sockets — Live sockets, device nodes, vanished files, and unreadable entries no longer trip rollback checks.
- Connector hello metadata — Remote tool metadata stored through a dedicated hello path with context-bound websocket SID acknowledgment.
- Skill ownership hardened — Connector list/delete scoped to enabled catalog; built-in plugin skills cannot be deleted; invalid skill YAML surfaced instead of silently accepted.
UI Improvements
- Simplified project LLM setup — Project creation focuses on basic details and Git cloning; model selection moved to a collapsed Advanced Settings accordion on the edit screen.
- Settings accordion redesign — Sticky accordion with active section tracking replaces two-step settings navigation.
- Action button order aligned — Primary actions appear before Cancel across plugin settings and related modals.
- Browser chat action button removed — The Browser plugin no longer injects a button under the chat input.
- Project skills settings repositioned — Moved directly after project instructions, before file structure and secrets.
- Host Browser config simplified — "Use host when ready" replaced with clear "Bring Your Own Browser" option and Chrome remote-debugging guidance.
Documentation
- Refreshed user-facing guides — README, quickstart, and docs index updated around Browser, Desktop, A0 CLI, projects, memory, skills, profiles, and model presets with optimized screenshots.
- First-run onboarding guide — Screenshot-led walkthrough linked from docs hub, quickstart, and installation flow.
- Model efficiency scorecard — Scored tool-efficiency chart with provider/model rankings, failure clusters, and applied improvements.
- Refactor guardrails — Internal docs covering modal/surface boundary, Desktop ownership, Office scope, renamed skills, and connector ownership rules.