Skip to content

Commit 4d557e6

Browse files
authored
Merge pull request #24152 from dvdksn/cagent-tasks-toolset
cagent: add tasks toolset
2 parents 2bd21a6 + 2ae7d55 commit 4d557e6

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

content/manuals/ai/cagent/reference/toolsets.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,55 @@ toolsets:
274274
shared: true
275275
```
276276

277+
### Tasks
278+
279+
The `tasks` toolset is an advanced version of the `todo` toolset, and provides
280+
task management with priorities, dependencies, and persistence. Your agent can
281+
create tasks with different priority levels, establish prerequisite
282+
relationships between tasks, and automatically track which tasks are blocked by
283+
incomplete dependencies. Tasks are sorted by priority and blocking status,
284+
making it easy to identify the next actionable work.
285+
286+
Tasks are stored in a JSON file and persist across cagent sessions.
287+
288+
#### Configuration
289+
290+
```yaml
291+
toolsets:
292+
- type: tasks
293+
294+
# Optional: specify storage location
295+
- type: tasks
296+
path: ./project-tasks.json
297+
```
298+
299+
#### Available tools
300+
301+
The tasks toolset provides these tools:
302+
303+
- **create_task**: Create a new task with title, description, priority, and
304+
dependencies
305+
- **get_task**: Retrieve full details of a task by ID, including effective
306+
status
307+
- **update_task**: Modify task fields (title, description, priority, status,
308+
dependencies)
309+
- **delete_task**: Remove a task and clean up its dependencies
310+
- **list_tasks**: List all tasks sorted by priority, optionally filtered by
311+
status or priority
312+
- **next_task**: Get the highest-priority actionable task (not blocked or done)
313+
- **add_dependency**: Add a dependency between tasks (with cycle detection)
314+
- **remove_dependency**: Remove a dependency from a task
315+
316+
#### Task statuses and priorities
317+
318+
Tasks have four statuses: `pending`, `in_progress`, `done`, and `blocked`. The
319+
agent automatically calculates the effective status. A task becomes `blocked`
320+
if any of its dependencies are not `done`, regardless of its assigned status.
321+
322+
Priority levels (from highest to lowest): `critical`, `high`, `medium`
323+
(default), `low`. Tasks are sorted by blocking status first (unblocked tasks
324+
first), then by priority, then by creation time.
325+
277326
### Memory
278327

279328
The `memory` toolset allows your agent to store and retrieve information across

0 commit comments

Comments
 (0)