unstale

pypi / ag-ui-a2ui-toolkit

ag-ui-a2ui-toolkit

What changed in ag-ui-a2ui-toolkit 0.0, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.

17 breaking4 deprecations8 new APIs and options5 behavior and defaults

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

ag-ui-a2ui-toolkit 0.034 changes

Breaking changes 17

  • Python JSON Patch entries are typed operation models, so read fields as attributes instead of dictionary keys; use model_dump(by_alias=True) when dictionaries are needed.

    0.0.0upgrade guide

  • TypeScript validators move to this subpath; importing them requires zod, while the main @ag-ui/core entry contains types and constants only.

    0.0.0upgrade guide

  • The .NET string-or-parts union is renamed from AGUIUserContent and now supports tool message and tool-call result content.

    0.0.0upgrade guide

  • Capability validation now requires maxIterations to be a non-negative integer within JavaScript's safe range.

    0.0.0upgrade guide

  • Capability validation now requires maxExecutionTime to be a non-negative integer within JavaScript's safe range.

    0.0.0upgrade guide

  • Optional protocol fields must be absent instead of null; TypeScript encoders and outgoing HTTP inputs omit them, and the client normalizes listed legacy nulls before validation.

    0.0.0upgrade guide

  • The source type is renamed from InputContentSource and gains a third arm, FileSource, for provider-issued handles to already-uploaded bytes.

    0.0.0upgrade guide

  • Repeated occurrences of singular protobuf message fields are merged: later scalar values win, repeated list entries append, and omitted fields preserve earlier values.

    0.0.0upgrade guide

  • The client fails runs when reasoning messages or spans are unmatched or remain open when RUN_FINISHED arrives.

    0.0.0upgrade guide

  • The TypeScript type makes context non-optional and presents an absent wire value as an empty array.

    0.0.0upgrade guide

  • The TypeScript type makes tools non-optional and presents an absent wire value as an empty array.

    0.0.0upgrade guide

  • Python JSON Patch entries are typed operation models, so read fields as attributes instead of dictionary keys; use model_dump(by_alias=True) when dictionaries are needed.

    0.0.0upgrade guide

  • The public type is renamed from SubAgentInfo; SDKs differ on whether the old name remains as a temporary alias.

    0.0.0upgrade guide

  • The multi-agent capability field and wire key are renamed from subAgents or sub_agents to subagents; the old wire key is treated as unknown.

    0.0.0upgrade guide

  • Tool-call result content can now be a string or ContentPart array, so code treating it as a string must narrow it first.

    0.0.0upgrade guide

  • Tool message content can now be a string or ContentPart array, so code treating it as a string must narrow it first.

    0.0.0upgrade guide

  • The TypeScript client drops unknown event types and strips unknown properties from known events and RunAgentInput with warnings; malformed known values fail the run.

    0.0.0upgrade guide

Deprecations 4

  • Use maxProtocolVersion in place of the deprecated AbstractAgent.maxVersion; overrides of the old name still work and warn once per process.

    0.0.0upgrade guide

  • The TypeScript content type is renamed from InputContent; the old name remains a deprecated alias.

    0.0.0upgrade guide

  • The content type is renamed from ImageInputContent; audio, video, and document types follow the same naming change, with old names retained as aliases.

    0.0.0upgrade guide

  • The content type is renamed from TextInputContent; the old name remains a deprecated alias.

    0.0.0upgrade guide

New APIs and options 8

  • Indicates whether flattening content to text would lose media.

    0.0.0upgrade guide

  • Every content part gains an optional id.

    0.0.0upgrade guide

  • Flattens text parts by concatenating them for callers that need text from content.

    0.0.0upgrade guide

  • Adds a source variant for a model-provider handle to bytes already uploaded to it; do not treat its value as a URL.

    0.0.0upgrade guide

  • .NET adds models, JSON handling, and protobuf mappers for subagent events.

    0.0.0upgrade guide

  • .NET adds models, JSON handling, and protobuf mappers for subagent events.

    0.0.0upgrade guide

  • .NET adds models, JSON handling, and protobuf mappers for subagent events.

    0.0.0upgrade guide

  • TextPart gains optional metadata, matching the media parts.

    0.0.0upgrade guide

Behavior and default changes 5

  • .NET stream readers now skip unknown event types with a trace warning, though decoding a single unknown event still throws this exception.

    0.0.0upgrade guide

  • .NET explicitly registers int in the source-generated serializer context for ahead-of-time compilation.

    0.0.0upgrade guide

  • A 1.0 producer must declare its own protocol version on RUN_STARTED; middleware and proxies must preserve the producer's declaration.

    0.0.0upgrade guide

  • The TypeScript client declares protocolVersion: "1.0" on every RunAgentInput; pinning maxProtocolVersion below the package version omits the field.

    0.0.0upgrade guide

  • zod becomes an optional peer dependency of @ag-ui/core and is needed only when using its validators.

    0.0.0upgrade guide