v0.9.0
onyx-dot-app/onyxv0.9.0Aug 28, 2026by github-actions[bot]
Upgrading?
AI Summary
Implements AHP 0.9.0, introducing automation catalogue channels, durable turn errors, and updated session lifecycle management.
Key Highlights
- New automation catalogue and channels for shared agent session workflows
- Turn errors are now durable response parts, allowing resumption via chat/turnResume
- InitializeResult._meta allows hosts to advertise extension capabilities
- Terminal session claims now require the owning chat URI
- Session lifecycle value renamed from creationFailed to failed
Breaking Changes
- Removed 'error' from changeset/contentChanged (now changeset/statusChanged)
- Removed session-level forking from createSession
- Removed ContentNotFound as an exported AHP error code
New Features
- Automation catalogue and automation-run channels
- Durable turn errors via chat/turnResume
- InitializeResult._meta for extension capabilities
- Explicit terminal state lifecycle (running/exited)
- Renamed failed session lifecycle value to 'failed'
Full Release Notes
## [0.9.0] — 2026-08-28 Implements AHP 0.9.0. ### Added - Automation catalogue and automation-run channels, including self-contained host-defined event triggers and automation-origin messages, for shared trigger-based agent session workflows. - Turn errors are durable response parts, and resumable errors can reopen the same turn through `chat/turnResume`. - `InitializeResult._meta` for hosts to advertise implementation-specific extension capabilities in initialize responses. ### Changed - Annotations now carry an `origin` with a required session URI and optional chat URI and turn ID. - Renamed the failed session lifecycle value from `creationFailed` to `failed`. - `TerminalSessionClaim` now requires the chat URI that owns the terminal. - Terminal state now uses an explicit `running`/`exited` lifecycle that preserves exits without an exit code. - Generated clients now preserve unknown values for nonexhaustive protocol enums and their discriminated unions. - `SessionToolClientExecutionRequest.toolCall` is narrowed to a running tool-call state. - Automation catalogue snapshots now use `AutomationState.entries`, whose items are named `AutomationEntry`. ### Removed - Removed `error` from `changeset/contentChanged`; changeset failures are represented by `changeset/statusChanged`. - Removed session-level forking from `createSession`; use chat forking instead. - `ContentNotFound` is no longer an exported AHP error code; `-32006` remains reserved and unassigned. ### Fixed - Chat reducers now derive `modifiedAt` from turn action data instead of local wall clocks.
Related Repositories
public-apis/public-apis★ 491,139
A collective list of free APIs
NousResearch/hermes-agent★ 255,979
The agent that grows with you
yt-dlp/yt-dlp★ 200,075
A feature-rich command-line audio/video downloader
microsoft/markitdown★ 191,496
Python tool for converting files and office documents to Markdown.
Significant-Gravitas/AutoGPT★ 187,705
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.