do-task
Do Task
Look up a task and start working on it.
Instructions
The user's query is in $ARGUMENTS (a task ID like 077 or a task name/keyword).
- Look up the task: Run
taskmd get $ARGUMENTSto find the task- If not found, run
taskmd listto show available tasks and ask the user which one they meant
- If not found, run
- Read the task file with the
Readtool to get the full description, subtasks, and acceptance criteria - Mark the task as in-progress: Run
taskmd set <ID> --status in-progress - Start a worklog entry (if worklogs are enabled):
- Check
.taskmd.yamlforworklogs: true-- only create worklogs if explicitly enabled - If enabled, find or create the worklog file at
tasks/<group>/.worklogs/<ID>.md(ortasks/.worklogs/<ID>.mdfor root tasks) - Append a timestamped entry noting your approach and initial findings
- Check
- Do the task: Follow the task description and complete the work described
- Use
EnterPlanModefor non-trivial implementation tasks - Check off subtasks (
- [x]) in the task file as you complete them - Append worklog entries when you make key decisions, hit blockers, or complete significant subtasks
- In the Plan, include a reference to the original task ID, and task file path.
- Use
- Write a final worklog entry summarizing what was done, decisions made, and any open items
- Mark the task as done: Use the
/complete-taskskill (invoke it with the task ID) to complete the task. It handles verification and status changes automatically.
Worklog Format
Each worklog entry uses a timestamp heading followed by free-form notes:
## 2026-02-15T10:30:00Z
Started implementation of the search feature.
**Approach:** Using full-text search with the existing SQLite database
rather than adding Elasticsearch -- simpler and sufficient for our scale.
**Completed:**
- [x] Added search query parser
- [x] Created search index
**Next:** Add result ranking and write tests.
More from driangle/taskmd
complete-task
Mark a task as completed. Use when the user wants to mark a task as done or complete.
25add-task
Create a new task file following the taskmd specification. Use when the user wants to add a new task to the project.
22import-todos
Discover TODO/FIXME comments in the codebase and convert selected ones into task files. Use when the user wants to turn code TODOs into tracked tasks.
22next-task
Get the next recommended task to work on. Use when the user asks what to work on next or needs a task assignment.
21get-task
Get details of a specific task by ID or name. Use when the user wants to view or look up a task.
20validate-tasks
Validate task files for format and convention errors. Use when the user wants to check their task files.
19