v0.5.0
microsoft/agent-host-protocolv0.5.0Jun 26, 2026by github-actions[bot]
Upgrading?
Release notes summary
Implements AHP 0.5.0, a major update introducing multi-client session support, progress notifications, and a flattened `SessionState` structure.
Key Highlights
- `SessionState.activeClients` array replaces the single `activeClient`.
- Generic `root/progress` notifications correlated by `progressToken`.
- Session metadata fields inlined directly into `SessionState`.
Breaking Changes
- Removed `SessionState.activeClient` (singular).
- Flattened `SessionState` structure (inlined metadata).
- Removed `SessionActiveClientToolsChangedAction`.
- Renamed `session/activeClientChanged` to `session/activeClientSet`.
New Features
- Optional `maxOutputTokens` and `maxPromptTokens` on `SessionModelInfo`.
- New `ChatActivityChangedAction` for independent activity updates.
- Optional `model` and `agent` fields on `Message`.
Full Release Notes
## [0.5.0] — 2026-06-26 Implements AHP 0.5.0. ### Added - `ChatActivityChangedAction` (`StateAction.chatActivityChanged`, wire `chat/activityChanged`) for updating a chat's current activity description independently of the session summary. - `ProgressParams` struct (wire `root/progress`) — a generic progress notification correlated by a `progressToken` (added on `CreateSessionParams`). Used today for the lazy first-use download of an agent's native SDK. - `SessionModelInfo.maxOutputTokens` and `SessionModelInfo.maxPromptTokens` optional fields for communicating model token limits. - `SessionSummary.meta` (`_meta` on the wire) optional provider metadata field for lightweight session-list presentation hints. - `SessionActiveClientRemovedAction` (`StateAction.sessionActiveClientRemoved`, wire `session/activeClientRemoved`) to release a single active client by `clientId`. - `ChatDraftChangedAction` (`StateAction.chatDraftChanged`, wire `chat/draftChanged`) and `ChatState.draft` (`Message?`) to set or clear the user's in-progress draft input for a chat. The chat reducer applies it without stamping `modifiedAt`. - `Message.model` and `Message.agent` optional fields carrying the selection a message was composed with. ### Changed - `SessionState.activeClients` (`[SessionActiveClient]`, required) replaces the single optional `SessionState.activeClient`; the session reducer upserts and removes entries keyed by `clientId`. - `StateAction.sessionActiveClientChanged` is renamed to `StateAction.sessionActiveClientSet` (wire `session/activeClientSet`) with upsert-by-`clientId` semantics; it no longer unsets the active client (dispatch `session/activeClientRemoved` instead). - `ConfigPropertySchema.enum` field is now `[AnyCodable]?` instead of `[String]?`, allowing numeric, boolean, and null enum values. - `ModelSelection.config` values are now `AnyCodable` instead of `String`, allowing numeric, boolean, and null configuration values. - `SessionState` now inlines the session metadata fields (`provider`, `title`, `status`, `activity`, `project`, `workingDirectory`, `annotations`) directly instead of embedding a `summary: SessionSummary`. The session reducer mutates these fields directly and no longer stamps a `modifiedAt`. `SessionSummary` remains a root-only catalog struct whose `createdAt`/`modifiedAt` are now ISO-8601 `String`s and which no longer carries `model`/`agent`. - `ChatState` and `ChatSummary` no longer carry `model`/`agent`. ### Removed - `SessionActiveClientToolsChangedAction`. An active client now updates its published tools by re-dispatching `StateAction.sessionActiveClientSet` with its full, updated entry. - `SessionModelChangedAction` (`StateAction.sessionModelChanged`, `session/modelChanged`) and `SessionAgentChangedAction` (`StateAction.sessionAgentChanged`, `session/agentChanged`), along with their session-reducer handling.
Related Repositories
openclaw/openclaw★ 392,878
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
morluto/rea★ 372,734
Reverse engineer anything with agents, from app behavior down to native binaries.
nilbuild/developer-roadmap★ 370,231
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
anomalyco/opencode★ 220,584
The open source coding agent.
n8n-io/n8n★ 208,403
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.