v2.0
HumanSignal/label-studiov2.0Jun 24, 2026by github-actions[bot]
AI Summary
A major version release (v2.0) introducing native Responses API transport, parallel tool calls, revamped MCP server configuration, and new local provider support (oMLX, llama.cpp, vLLM, etc.). It also includes significant UI updates and security patches.
Key Highlights
- Native Responses API transport with automatic fallback
- Parallel tool calls runtime
- Revamped MCP server configuration with project-scoped settings
- New local provider support (oMLX, llama.cpp, vLLM, LM Studio, Ollama)
- Time Travel workspace selector
New Features
- LiteLLM global kwargs normalization
- Shared canvas surfaces in WebUI
- Welcome screen refresh with OAuth accounts
- Skills improvements (scanner, persistence through compaction)
- Protocol prompt area injection
- A2A streaming capability
- Telegram integration improvements
- Security & dependency updates (LiteLLM 1.88.1, Starlette 1.0.1)
- Editor generalized to support .txt and .md documents
- Rubik font default
- Self-update manager
- New Launcher guide
Full Release Notes
# Agent Zero v2.0
## Highlights
- **Native Responses API transport** — Agent turns now prefer the OpenAI Responses API when available, with automatic chat-completions fallback for providers that don't support it. Responses metadata is persisted in history and agent state for provider-state continuation, replay, and function-call execution. Prompt caching is normalized per provider (OpenAI/Azure, Anthropic, Gemini, Bedrock, OpenRouter).
- **Parallel tool calls** — A new parallel tool-call runtime lets the agent batch independent tool calls concurrently as visible child chats. Parallel await timeouts are non-destructive so jobs can be re-awaited, and nested subordinate chats work normally inside parallel workers.
- **Revamped MCP server configuration** — MCP servers now support project-scoped configuration with global/project merge semantics, a richer settings UI with list-first layout, server and tool search, per-tool enable/disable toggles, a dedicated scanner modal, and chat composer access. MCP runtime handling is hardened for dotted tool names, timeouts, status accuracy, lock scope, and cleanup of wedged transports.
- **Time Travel workspace selector** — The Time Travel plugin now supports selectable workspaces (workdir/project), with a workspace picker in the UI and new API endpoints.
- **LiteLLM global kwargs** — Normalized global LiteLLM configuration handling ensures framework defaults, configured globals, and per-call overrides merge correctly. Global kwargs are kept as per-call options rather than frozen into provider defaults.
- **Shared canvas surfaces** — Files is promoted to the universal canvas rail alongside Browser, Editor, and Desktop. All surfaces use a shared draggable/resizable floating modal with Focus mode. Surface windows persist across page refresh, and the right-canvas rail is visible on mobile (routing to modals on narrow screens).
- **Welcome screen refresh** — Reworked welcome screen with a shared new-chat composer, quick actions, discovery cards, OAuth accounts, and a system resources panel. The welcome screen stays free of docked canvas surfaces.
- **Skills improvements** — A new Settings > Skills scanner section runs security checks on skill zips before import. Loaded skills now persist through chat compaction by storing skill IDs as chat-wide context data and reattaching bodies post-compaction. Browser automation skills gain trigger frontmatter for better discovery. The `a0-development` skill is refactored into focused reference files.
- **Protocol prompt area** — A new prompt region ("protocol") is injected before message history, with per-turn temporary and persistent slots. Project instructions and active/loaded skills are now delivered through protocol rather than extras.
- **A2A streaming** — Agent Zero now advertises streaming capability on A2A endpoints by default.
## New local provider support
- **oMLX** — First-class local provider for Apple Silicon with Docker-friendly defaults and paged SSD cache documentation.
- **llama.cpp / llama-server** — Registered as chat and embedding providers with host.docker.internal defaults.
- **vLLM** — Registered as chat and embedding providers; empty tools arrays are stripped for strict OpenAI-compatible servers.
- **LM Studio & Ollama** — Shipped Docker-friendly defaults so containerized Agent Zero reaches host-running services without manual api_base edits.
- **Tiny Local tool-use profile** — Bundled agent profile for small local models.
## Telegram integration
- Major improvements to native Telegram integration UX and streaming.
- Telegram tool lifecycle hooks are now safe no-ops for non-Telegram contexts.
## Security & dependency updates
- LiteLLM upgraded to 1.88.1 (above CVE-2026-42271 patched floor); OpenAI SDK pinned to 1.88.1.
- Starlette pinned to patched 1.0.1 release for Host-header advisory.
- `requirements2.txt` folded back into a single `requirements.txt`.
## Settings & UI improvements
- Settings sidebar now has search with filtered results; sidebar accordion expansion is decoupled from active section; content pane scrolls independently. Backup & Restore promoted to its own section.
- Context window size control moved above the Advanced disclosure for main and utility model slots.
- Stale preset kwargs are cleared on model switches so unsupported parameters don't leak across providers.
- Rubik is now the default WebUI font, including native browser controls and the login page.
- Shared `.text-button` CSS primitive restored so controls render correctly without chat composer dependency.
- WebSocket heartbeat interval and timeout raised with environment overrides to prevent disconnects during long operations.
- Editor generalized from Markdown-only to exact-text `.md` and `.txt` documents with open, save, Save As, and rename support. "Open in Editor" is a visible File Browser row action.
- Google Cloud Gemini OAuth provider renamed for clarity.
- What's New showcase modal with version gating, permanent opt-out, and bundled media for new features.
- Project extension data hooks let plugins contribute named project settings sections without coupling to core helpers.
## Bug fixes
- **Pager CPU spin** — Disabled pagers (`PAGER=cat`, `GIT_PAGER=cat`) in non-interactive code execution shells so `git diff`/`git log` no longer block forever at 100% CPU. Fixes #1697.
- **MCP settings apply NameError** — Fixed undefined variable when applying global MCP servers.
- **Compaction backups with malformed Unicode** — Surrogate-containing chat content no longer breaks JSON/transcript backup writes.
- **Parallel worker chat log orphans** — Ephemeral parallel worker chat folders are cleaned up; directories without `chat.json` are ignored at startup.
- **Subordinate agent profiles** — Profile arguments are validated against available profiles; profiles persist in saved chats and survive profile switches and restarts.
- **Sentence-transformer embedding aliases** — Stale provider/model aliases are patched at the config boundary so memory embeddings use the intended local HuggingFace provider.
- **Project skills folder initialization** — `.a0proj/skills` is created during project setup and repaired when loading existing projects.
- **Connector file chunking** — Chunked `connector_file_op_result` payloads are buffered and reassembled before resolution.
- **Responses API 404 fallback** — Wrapped NotFoundError responses from providers without the Responses API now correctly fall back to chat completions.
- **Document query image routing** — Images, screenshots, and diagrams prefer `vision_load` when vision tools are available.
- **Remote tool prompt gating** — Remote tool prompts are hidden unless the connected CLI advertises the matching capability.
- **Mobile fixes** — Welcome composer wrapping, project action layout, compaction modal spacing, modal layering over canvas rail, and composer alignment polished for narrow viewports.
- **Unsecured connection settings link** — The "Configure credentials" banner now opens Settings at the correct section.
- **Welcome composer idle placeholder overlap** — Ghost placeholder suppressed until a chat is selected.
- **Xpra amd64 Docker fallback** — Minimal fallback package set now works on amd64 when the preferred Xpra repository is unsatisfiable.
- **pytest capture import** — Guard added so pytest capture objects work with the code execution TTY helper.
## Infrastructure & Docker
- Self-update manager synced at startup when the installed copy is stale.
- Uploads directory created during Docker runtime initialization before services start.
- Docker open file limit raised at startup with explicit compose `nofile` example.
- Comprehensive file-level DOX documentation added across the repository with matching `AGENTS.md` indexes.
## Documentation
- New Launcher guide with runtime setup, Installs, Instances, and screenshot notes.
- v1.20-to-v2.0 image upgrade path documented with backup/restore guidance.
- README install section reorganized into Launcher, A0 Install, and direct Docker paths with A0 Launcher v0.9 download matrix.