| name | list-tasks |
| description | List tasks with optional filters. Use when the user wants to see their tasks. |
| allowed-tools | Glob, Read |
List Tasks
List tasks by scanning task files directly — no CLI required.
Instructions
The user's arguments are in $ARGUMENTS (e.g. --status pending, --priority high, a directory path).
-
Find the task directory:
- Read
.taskmd.yaml if it exists to check for a custom dir field
- Default to
tasks if not configured or file doesn't exist
-
Scan for task files: Use Glob with pattern <task-dir>/**/*.md
- Exclude files in
.worklogs/ directories
- Exclude files that don't have YAML frontmatter
-
Read and parse each task file:
- Read each file and extract YAML frontmatter (between first
--- and second ---)
- Parse fields: id, title, status, priority, effort, type, tags, group, owner, phase, dependencies, created
-
Apply filters from $ARGUMENTS:
--status <value>: Show only tasks matching this status
--priority <value>: Show only tasks matching this priority
--filter effort=<value>: Show only tasks matching this effort (supports >=, >, <=, <)
--filter type=<value>: Show only tasks matching this type
--filter tags=<value>: Show only tasks containing this tag
--filter owner=<value>: Show only tasks matching this owner
--phase <value>: Show only tasks matching this phase
--scope <value>: Show only tasks in this scope (supports wildcards)
- A directory path: Only scan that directory instead of the full task dir
-
Display results as a formatted table:
ID | Status | Priority | Title
------|-------------|----------|-------------------------------
001 | pending | high | Implement user auth
002 | in-progress | medium | Fix login bug
If no tasks match the filters, inform the user.
See SPEC_REFERENCE.md (in the plugin root) for valid field values and frontmatter schema.