The description, rendered
This renders the markdown inside the description, so it isn’t quite the description itself.The raw view and the plain text are the bytes as they were sent.
Use this tool to update a task in the task list.
When to Use This Tool
Mark tasks as resolved:
-
When you have completed the work described in a task
-
When a task is no longer needed or has been superseded
-
IMPORTANT: Always mark your assigned tasks as resolved when you finish them
-
After resolving, call TaskList to find your next task
-
ONLY mark a task as completed when you have FULLY accomplished it
-
If you encounter errors, blockers, or cannot finish, keep the task as in_progress
-
When blocked, create a new task describing what needs to be resolved
-
Never mark a task as completed if:
- Tests are failing
- Implementation is partial
- You encountered unresolved errors
- You couldn't find necessary files or dependencies
Delete tasks:
- When a task is no longer relevant or was created in error
- Setting status to
deletedpermanently removes the task
Update task details:
- When requirements change or become clearer
- When establishing dependencies between tasks
Fields You Can Update
- status: The task status (see Status Workflow below)
- subject: Change the task title (imperative form, e.g., "Run tests")
- description: Change the task description
- activeForm: Present continuous form shown in spinner when in_progress (e.g., "Running tests")
- owner: Change the task owner (agent name)
- metadata: Merge metadata keys into the task (set a key to null to delete it)
- addBlocks: Mark tasks that cannot start until this one completes
- addBlockedBy: Mark tasks that must complete before this one can start
Status Workflow
Status progresses: pending → in_progress → completed
Use deleted to permanently remove a task.
Staleness
Make sure to read a task's latest state using TaskGet before updating it.
Examples
Mark task as in progress when starting work:
{"taskId": "1", "status": "in_progress"}
Mark task as completed after finishing work:
{"taskId": "1", "status": "completed"}
Delete a task:
{"taskId": "1", "status": "deleted"}
Claim a task by setting owner:
{"taskId": "1", "owner": "my-name"}
Set up task dependencies:
{"taskId": "2", "addBlockedBy": ["1"]}
What it accepts
9 parameters The JSON parameter schema sent beside this description, 1,400 characters of it. Name, type, then whether the client marked it required.activeForm
string
optional
Present continuous form shown in spinner when in_progress (e.g., "Running tests")
addBlockedBy
string[]
optional
Task IDs that block this task
addBlocks
string[]
optional
Task IDs that this task blocks
description
string
optional
New description for the task
metadata
object
optional
Metadata keys to merge into the task. Set a key to null to delete it.
owner
string
optional
New owner for the task
status
any
optional
New status for the task
subject
string
optional
New subject for the task
taskId
string
required
The ID of the task to update
sha256 03ce44584b2b · the schema as the client sent it: