82 lines
2.8 KiB
Markdown
82 lines
2.8 KiB
Markdown
# /task
|
|
|
|
Create, update, complete, or list tasks. Single command for all task CRUD operations.
|
|
|
|
## Subcommands
|
|
|
|
### /task add [details]
|
|
### /task (no args -- defaults to add)
|
|
|
|
Create a new task.
|
|
|
|
**Shortcut mode:** `/task add "Title" high due:2026-04-15 initiative:Messaging-System effort:medium`
|
|
|
|
**Guided mode** (no args or incomplete): Ask these questions one at a time:
|
|
1. **Task title** -- short, action-oriented
|
|
2. **Initiative** -- which initiative does this belong to? (list active initiatives from AGENTS.md, or "Personal", or "None")
|
|
3. **Priority** -- High / Medium / Low
|
|
4. **Due date** -- YYYY-MM-DD or TBD
|
|
5. **Effort** -- Quick (<30 min) / Medium (30 min - 2h) / Deep (2h+)
|
|
6. **Context** -- paths to context files in ~/LLM Context/ (or "none")
|
|
7. **Description** -- what needs to be done
|
|
|
|
**After gathering info:**
|
|
- Create file at `todo/YYYY-MM-DD-short-slug.md` using today's date
|
|
- Use the template from `meta/templates/task-template.md`
|
|
- Remove the Completed field (not applicable in todo/)
|
|
- Confirm creation with: "Created: `todo/YYYY-MM-DD-slug.md`"
|
|
|
|
### /task update [search-term]
|
|
|
|
Modify an existing task.
|
|
|
|
1. Search across `todo/`, `ongoing/`, and `blocked/` for a task matching the search term (title match, fuzzy is fine)
|
|
2. If multiple matches, show them and ask which one
|
|
3. Show the current task state
|
|
4. Ask what to update -- offer these options:
|
|
- Priority
|
|
- Due date
|
|
- Effort
|
|
- Description
|
|
- Notes (append)
|
|
- Move to a different status folder
|
|
- Multiple fields at once
|
|
5. Apply the update and confirm
|
|
|
|
**If status changes:** move the file to the new folder. If moving to `done/`, add Completed date (use `/task done` flow).
|
|
|
|
### /task done [search-term]
|
|
|
|
Mark a task as completed.
|
|
|
|
1. Search across `todo/`, `ongoing/`, and `blocked/` for the task
|
|
2. Show the current task and ask for confirmation
|
|
3. Ask: "Any notes to add before closing?"
|
|
4. Add Completed date (today) to the task file
|
|
5. Move file to `done/`
|
|
6. Confirm: "Completed: moved to `done/YYYY-MM-DD-slug.md`"
|
|
|
|
### /task list
|
|
|
|
Quick flat listing of all open tasks. Lightweight -- no inference, no analysis.
|
|
|
|
1. Read all files in `todo/`, `ongoing/`, and `blocked/`
|
|
2. Output a simple table:
|
|
|
|
```
|
|
| Task | Initiative | Priority | Due | Folder |
|
|
|------|-----------|----------|-----|--------|
|
|
| ... | ... | ... | ... | todo/ongoing/blocked |
|
|
```
|
|
|
|
Sorted by priority then due date (same rules as /agenda).
|
|
|
|
## Rules
|
|
|
|
- All task files live in `~/Workspace/Personal/Tasks/`
|
|
- Use `meta/templates/task-template.md` as the canonical format
|
|
- Filename convention: `YYYY-MM-DD-short-slug.md`
|
|
- When creating: date = today. When moving: keep the original filename (created date doesn't change)
|
|
- The Completed field only appears in files inside `done/`
|
|
- When cancelling: move to `cancelled/`, add reason in Notes
|