From taskmd
Discovers TODO/FIXME/HACK/XXX/NOTE/BUG/OPTIMIZE comments in codebase via taskmd, lists with duplicate checks, and converts user-selected ones to task files using /add-task. Use to turn code TODOs into tracked tasks.
npx claudepluginhub driangle/taskmd --plugin taskmdThis skill is limited to using the following tools:
Discover TODO/FIXME comments in the codebase and convert selected ones into task files.
Discovers TODO/FIXME/HACK/XXX/BUG/OPTIMIZE comments via Grep across codebase, checks for task duplicates, lists them, and converts selected ones to task files via /add-task skill. Use to extract inline todos as tracked tasks.
Creates and manages structured Markdown todos for code reviews, technical debt, work items, and findings in .context/compound-engineering/todos/, handling lifecycle from pending to complete.
Manages file-based todo tracking in todos/ directory: creates todos from feedback/findings, updates status/dependencies, triages items, integrates with slash commands and code reviews.
Share bugs, ideas, or general feedback.
Discover TODO/FIXME comments in the codebase and convert selected ones into task files.
The user may optionally provide flags in $ARGUMENTS (e.g. --marker TODO, --dir ./src, --include "*.go").
Discover TODOs: Run taskmd todos list --format json $ARGUMENTS via Bash to find all TODO/FIXME/HACK/XXX/NOTE/BUG/OPTIMIZE comments in the codebase
taskmd is installed and the todos subcommand is available (requires taskmd v0.12+)Handle empty results: If no TODOs are found (empty JSON array [] or no output), inform the user:
"No TODO/FIXME comments found in the codebase. Try widening your search with
--diror removing--markerfilters."
Check for duplicates: Run taskmd list --format json to get existing task titles. For each TODO, check if its text closely matches an existing task title (case-insensitive substring match). Flag any potential duplicates.
Present the list: Display the TODOs as a numbered list in this format:
Found N TODO comments:
# | Marker | File | Text
-----|--------|-------------------------------|----------------------------------
1 | TODO | src/auth.go:42 | implement rate limiting
2 | FIXME | src/handler.go:15 | handle timeout errors
3 | TODO | src/db.go:88 | add connection pooling
*4 | TODO | src/cache.go:12 | optimize cache (possible duplicate: task 045)
Mark potential duplicates with * and note the matching task.
Ask the user: Ask which TODOs to convert into tasks. Accept:
1, 3, 51-51-3, 7, 9-11all to convert everythingnone or empty to cancelHandle cancellation: If the user selects none or cancels, exit gracefully:
"No TODOs selected. Exiting."
Convert selected TODOs: For each selected TODO, invoke the /add-task skill using the Skill tool:
bug, TODO → type feature)<marker>: <text> (from <file>:<line>)Example Skill invocation:
Skill: add-task
Args: "TODO: implement rate limiting (from src/auth.go:42)"
Report results: After all tasks are created, summarize:
Created N task(s) from TODOs:
- Task <ID>: <title> (from <file>:<line>)
- Task <ID>: <title> (from <file>:<line>)