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