[DOCS] Agent SDK TodoWrite docs still require `activeForm` after v2.1.69 made it optional for task creation

Status Closed — not planned
Maintainer reply None cached
Activity 6 comments · opened Mar 5, 2026 · closed Aug 7, 2026

Documentation Type

Incorrect/outdated documentation

Documentation Location

https://code.claude.com/docs/en/headless

Section/Topic

Todo/task creation input schema in Agent SDK docs (activeForm requirement).

Current Documentation

Platform Agent SDK docs still show activeForm as required in TodoWrite inputs:

type TodoWriteInput = { todos: Array<{ content: string; status: "pending" | "in_progress" | "completed"; activeForm: string; }>; };

And Python docs similarly show:

"activeForm": str, # Active form of the description

What's Wrong or Missing?

Changelog v2.1.69 says task creation no longer requires activeForm and now falls back to task subject text.

Current SDK docs still imply activeForm is required, which is outdated and can cause unnecessary validation requirements in client code.

Suggested Improvement

Update Agent SDK docs to:

  • Mark activeForm as optional for task creation input
  • Document fallback behavior when activeForm is omitted
  • Keep output examples explicit about when activeForm is present

Impact

Medium - Makes feature difficult to understand

Additional Context

Affected Pages:

| Page | Context |
|------|---------|
| https://code.claude.com/docs/en/headless | Primary documentation location for CLI Agent SDK usage |
| https://platform.claude.com/docs/en/agent-sdk/typescript | Agent SDK cross-reference: TodoWrite schema currently shows activeForm as required |
| https://platform.claude.com/docs/en/agent-sdk/python | Agent SDK cross-reference: Python TodoWrite input examples still imply required activeForm |
| https://platform.claude.com/docs/en/agent-sdk/todo-tracking | Agent SDK cross-reference: examples and guidance should align with optional activeForm semantics |

Total scope: 4 pages affected

Source: Changelog v2.1.69

Exact changelog entry:

[SDK] Changed task creation to no longer require the activeForm field — the spinner falls back to the task subject

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗