Plain text · sha256 f7d5cbed53a8
The description, line by line
75 lines One line number, because there is no previous capture to number against.
1
Use this tool to update a task in the task list.
2
3
## When to Use This Tool
4
5
**Mark tasks as resolved:**
6
- When you have completed the work described in a task
7
- When a task is no longer needed or has been superseded
8
- IMPORTANT: Always mark your assigned tasks as resolved when you finish them
9
- After resolving, call TaskList to find your next task
10
11
- ONLY mark a task as completed when you have FULLY accomplished it
12
- If you encounter errors, blockers, or cannot finish, keep the task as in_progress
13
- When blocked, create a new task describing what needs to be resolved
14
- Never mark a task as completed if:
15
- Tests are failing
16
- Implementation is partial
17
- You encountered unresolved errors
18
- You couldn't find necessary files or dependencies
19
20
**Delete tasks:**
21
- When a task is no longer relevant or was created in error
22
- Setting status to `deleted` permanently removes the task
23
24
**Update task details:**
25
- When requirements change or become clearer
26
- When establishing dependencies between tasks
27
28
## Fields You Can Update
29
30
- **status**: The task status (see Status Workflow below)
31
- **subject**: Change the task title (imperative form, e.g., "Run tests")
32
- **description**: Change the task description
33
- **activeForm**: Present continuous form shown in spinner when in_progress (e.g., "Running tests")
34
- **owner**: Change the task owner (agent name)
35
- **metadata**: Merge metadata keys into the task (set a key to null to delete it)
36
- **addBlocks**: Mark tasks that cannot start until this one completes
37
- **addBlockedBy**: Mark tasks that must complete before this one can start
38
39
## Status Workflow
40
41
Status progresses: `pending` → `in_progress` → `completed`
42
43
Use `deleted` to permanently remove a task.
44
45
## Staleness
46
47
Make sure to read a task's latest state using `TaskGet` before updating it.
48
49
## Examples
50
51
Mark task as in progress when starting work:
52
```json
53
{"taskId": "1", "status": "in_progress"}
54
```
55
56
Mark task as completed after finishing work:
57
```json
58
{"taskId": "1", "status": "completed"}
59
```
60
61
Delete a task:
62
```json
63
{"taskId": "1", "status": "deleted"}
64
```
65
66
Claim a task by setting owner:
67
```json
68
{"taskId": "1", "owner": "my-name"}
69
```
70
71
Set up task dependencies:
72
```json
73
{"taskId": "2", "addBlockedBy": ["1"]}
74
```
75
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:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"activeForm": {
"description": "Present continuous form shown in spinner when in_progress (e.g., \"Running tests\")",
"type": "string"
},
"addBlockedBy": {
"description": "Task IDs that block this task",
"items": {
"type": "string"
},
"type": "array"
},
"addBlocks": {
"description": "Task IDs that this task blocks",
"items": {
"type": "string"
},
"type": "array"
},
"description": {
"description": "New description for the task",
"type": "string"
},
"metadata": {
"additionalProperties": {},
"description": "Metadata keys to merge into the task. Set a key to null to delete it.",
"propertyNames": {
"type": "string"
},
"type": "object"
},
"owner": {
"description": "New owner for the task",
"type": "string"
},
"status": {
"anyOf": [
{
"enum": [
"pending",
"in_progress",
"completed"
],
"type": "string"
},
{
"const": "deleted",
"type": "string"
}
],
"description": "New status for the task"
},
"subject": {
"description": "New subject for the task",
"type": "string"
},
"taskId": {
"description": "The ID of the task to update",
"type": "string"
}
},
"required": [
"taskId"
],
"type": "object"
}