All Prompts/Tool Prompts/Task Update Tool
🔧Tool Prompts/tasks

Task Update Tool

src/tools/TaskUpdateTool/prompt.ts

Prompt Engineering Insight

Strict completion criteria (no premature done); JSON examples for common update patterns; dependency edges via addBlockedBy.

Techniques Used

guardrailsfew-shot-examplesbehavioral-constraintstool-use-guidance
prompt
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 deleted permanently 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: pendingin_progresscompleted
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:
```json
{"taskId": "1", "status": "in_progress"}
```
Mark task as completed after finishing work:
```json
{"taskId": "1", "status": "completed"}
```
Delete a task:
```json
{"taskId": "1", "status": "deleted"}
```
Claim a task by setting owner:
```json
{"taskId": "1", "owner": "my-name"}
```
Set up task dependencies:
```json
{"taskId": "2", "addBlockedBy": ["1"]}
```

Tags

tasksworkflowownership