with one click
add-todo
// Document deferred work, shortcuts, and technical debt for future resolution. Use when taking a shortcut, finding tech debt, or deferring out-of-scope work.
// Document deferred work, shortcuts, and technical debt for future resolution. Use when taking a shortcut, finding tech debt, or deferring out-of-scope work.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | add-todo |
| description | Document deferred work, shortcuts, and technical debt for future resolution. Use when taking a shortcut, finding tech debt, or deferring out-of-scope work. |
| category | meta |
| triggers | ["defer this","tech debt","add todo","note for later","shortcut taken"] |
Purpose: Document deferred work, shortcuts, and technical debt for future resolution Usage:
/add-todo <description>
P2-medium unless there's a clear reason otherwise.Requires .ai-project/todos/ directory (created by /init). If it does not exist, create it or suggest running /init.
Create a todo entry when:
/debug or /implement instead of deferring. If the user describes something critical that belongs in the current work, say: "This sounds like a P0-critical issue in scope — consider using /debug or /implement to address it now rather than deferring."/debug/adr| Category | Description | Examples |
|---|---|---|
tech-debt | Code that works but needs improvement | Hardcoded values, missing abstractions |
refactor | Code structure improvements | Pattern migrations, file reorganization |
feature | Missing functionality | Incomplete implementations, TODO comments |
bug | Known issues not yet fixed | Edge cases, race conditions |
performance | Performance improvements | Optimization opportunities |
docs | Documentation needs | Missing API docs, outdated guides |
test | Testing improvements | Missing tests, flaky tests |
| Priority | Description | Action Timeline |
|---|---|---|
P0 | Critical — blocking or causes data loss | Fix now (consider /debug or /implement instead) |
P1 | High — significant impact, needs attention soon | Address in next session |
P2 | Medium — should be addressed | Next opportunity |
P3 | Low — nice to have | When time permits |
Parse the user's description and identify what is provided vs. missing.
Required metadata — ask if not provided:
Determine from context (do not ask):
If the description is vague, ask for specifics before proceeding: "Can you clarify what exactly the issue is and what the expected behavior should be?"
If the issue sounds P0-critical and in scope, suggest fixing it now: "This sounds like a critical issue in the current scope — would you prefer to use /debug or /implement to address it now?"
Create a new file in .ai-project/todos/:
.ai-project/todos/NNN-{descriptive-name}.md
Naming conventions:
001-, 002-, etc.001-refactor-api-client.md, 002-optimize-search-full-table-scan.mdTo determine the next sequence number, check existing files:
ls .ai-project/todos/[0-9]*.md 2>/dev/null | tail -1
This is the single authoritative template for all todo files. Do not use any other format.
---
title: Brief Descriptive Title
priority: P2
estimated_effort: medium
created: YYYY-MM-DD
context: What triggered this — e.g., "found during /implement session"
---
## Description
Clear description of what needs to be done and why. Future readers must
understand the issue without extra research.
## Affected Files
- `path/to/file.ts` — what needs to change and why
## Suggested Approach
1. Step-by-step outline of how to fix this
2. Include enough detail to act on without re-investigation
## Acceptance Criteria
- [ ] Criterion 1
- [ ] Criterion 2
- [ ] Criterion 3
Effort levels:
| Effort | Description |
|---|---|
nano | < 15 minutes, trivial change |
small | 15-60 minutes, straightforward |
medium | 1-4 hours, moderate complexity |
large | 4+ hours, significant work |
REQUIRED — do not skip. Show the complete todo content (frontmatter + body) to the user and ask for approval before writing:
"Here's the todo I'll create at
.ai-project/todos/NNN-name.md. Does this look good?"
Wait for the user to confirm. If they request changes, adjust and re-show.
After approval:
.ai-project/todos/NNN-{descriptive-name}.md.ai-project/todos/NNN-name.md."If there are related todos or issues, add a Related section at the end:
## Related
- **Todos:** [related-todo-id](./related-todo-id.md)
- **Issues:** [#123](https://github.com/org/repo/issues/123)
Completed todos are not kept. ADRs capture the decision record. Git history preserves the todo's existence.
When a todo is done:
/adr --from-todo <todo-file> to capture the decision context, what was implemented, alternatives considered, and consequencesWhen a todo is no longer relevant:
| ID | Type | Prompt / Condition | Expected |
|---|---|---|---|
| TODO-T1 | Positive | "Note this shortcut for later" | Skill triggers |
| TODO-T2 | Positive | "Add a todo for this tech debt" | Skill triggers |
| TODO-T3 | Positive | "Defer this, it's out of scope" | Skill triggers |
| TODO-T4 | Negative | "Fix this bug" | Does NOT trigger (-> /debug) |
| TODO-T5 | Negative | "Record the architecture decision" | Does NOT trigger (-> /adr) |
| TODO-T6 | Negative | "Add documentation to this function" | Does NOT trigger (-> /docs) |
| TODO-T7 | Boundary | "We should improve this eventually" | Context-dependent — if it's concrete deferred work, create a todo; if vague, ask for specifics before creating |