Skip to content

feat: update to schema v1.32.0 and v2.0.0-alpha.16 - #345

Merged
benbrandt merged 1 commit into
mainfrom
schema-1.18.0
Nov 14, 2026
Merged

benbrandt merged 1 commit into
mainfrom
schema-1.18.0

Conversation

@benbrandt

Copy link
Copy Markdown
Member

Regenerates the v1 and v2 bindings from schema v1.32.0 and v2.0.0-alpha.16.

Added to the v2 stable entrypoint

  • replay_complete: the session update that ends a session/resume history replay, with SessionUpdate.isReplayComplete.
  • Subagents, which no longer need /unstable in v2: subagent_update, session_message, session_message_chunk, the unknown state, subagent background work, and session tool call content, with their guards. In v1 they are still unstable.

Added to the unstable entrypoints

  • Prompt suggestions (v1 and v2): the prompt_suggestions_update session update and the session.promptSuggestions client capability. A suggestion the client cannot parse is skipped, and the rest are kept.
  • Skills (v2): skill command entries, skill content blocks, and the session.prompt.skill and session.commands.skill capabilities. A malformed skill block fails the prompt. It is not kept as an unknown content type.
  • The speed config option category.
  • configOptions on session/fork. Entries stay strict, and null means an empty list.
  • path on markdown plans.

Removed

  • The file plan type (PlanFile), from the unstable entrypoints. In v2 a received file plan parses as an unknown plan type.

Beyond the regenerated files

  • src/examples/dual-version-agent.ts ends a v2 history replay with replay_complete, also for an empty history, and never without replayFrom. The example allows a resume while a turn is running, so it also holds that turn's live updates and its permission request until replay_complete is sent.
  • Handler docs in src/v2/acp.ts and src/v1/acp.ts cover replay_complete, idempotent auth/logout, -32602 for a repeated tool_call/cancel or terminal/cancel, and session/options with the source session's ID before a fork.
  • MIGRATION_STABLE_UNSTABLE.md lists subagents as stable in v2 and adds the new unstable items.
  • New v1 and v2 tests cover the new wire shapes through the public entrypoints.

scripts/generate.js only changes the two release tags. The release adds variants to existing extensible unions and no new unions, so the union lists are unchanged.

The other spec prose changes in this release (unknown command types must not be shown as slash commands, thought_level value ordering, session-directed message rules) needed no SDK changes.

npm run check passes.

Regenerate the v1 and v2 bindings.

The v2 stable entrypoint gains:

- The `replay_complete` session update and `SessionUpdate.isReplayComplete`.
- Subagents: `subagent_update`, `session_message`, `session_message_chunk`,
  the `unknown` state, `subagent` background work, and `session` tool call
  content, with their guards. In v1 they still need `/unstable`.

The unstable entrypoints gain:

- Prompt suggestions: the `prompt_suggestions_update` session update and
  the `session.promptSuggestions` client capability (v1 and v2).
- Skills (v2): `skill` command entries, `skill` content blocks, and the
  `session.prompt.skill` and `session.commands.skill` capabilities.
- The `speed` config option category.
- `configOptions` on `session/fork`.
- `path` on markdown plans. The `file` plan type is removed.

The dual-version example agent ends a v2 history replay with
`replay_complete`, and holds live updates and permission requests until it
is sent. Handler docs cover `replay_complete`, idempotent `auth/logout`,
repeated `tool_call/cancel` and `terminal/cancel`, and `session/options`
before a fork.
@benbrandt
benbrandt merged commit 1b36d67 into main Nov 14, 2026
6 checks passed
@benbrandt
benbrandt deleted the schema-1.18.0 branch November 14, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant