ReleaseMicrosoftMicrosoftpublished Jun 26, 2026seen Jun 26

microsoft/agent-host-protocol v0.5.0

microsoft/agent-host-protocol

Open original ↗

Captured source

source ↗
published Jun 26, 2026seen Jun 26captured 3dhttp 200method plain

AHP Swift Package v0.5.0

Repository: microsoft/agent-host-protocol

Tag: v0.5.0

Published: 2026-06-26T23:23:49Z

Prerelease: no

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 Strings 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.

Notability

notability 3.0/10

Routine version release for pre-1.0 repo, limited traction.