driangle/taskmd/import-todos
Claude Code and agent skill by driangle/taskmd
- community
Checking that the SKILL.md file is still in the repository.
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.
Install
npx vskill@latest install driangle/taskmd/import-todosSKILL.md
Import TODOs
Discover TODO/FIXME comments in the codebase and convert selected ones into task files.
Instructions
The user may optionally provide flags in $ARGUMENTS (e.g. --marker TODO, --dir ./src, --include "*.go").
- Discover TODOs: Run
taskmd todos list --format json $ARGUMENTSvia Bash to find all TODO/FIXME/HACK/XXX/NOTE/BUG/OPTIMIZE comments in the codebase
- If the command fails, check that
taskmdis installed and thetodossubcommand 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 --dir or removing --marker filters."
- Stop here — do not proceed further
- Check for duplicates: Run
taskmd list --format jsonto 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:
- Specific numbers:
1, 3, 5 - Ranges:
1-5 - A combination:
1-3, 7, 9-11 allto convert everythingnoneor empty to cancel
- Handle cancellation: If the user selects none or cancels, exit gracefully:
> "No TODOs selected. Exiting."
- Convert selected TODOs: For each selected TODO, invoke the
/add-taskskill using the Skill tool:
- Use the TODO text as the task description
- Include the source file and line number as context
- Use the marker type as a hint for the task type (e.g. FIXME/BUG → type
bug, TODO → typefeature) - Format the skill argument as:
<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>)
```
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingclaude-code-plugin/skills/import-todos/SKILL.md
Popularity
- Repository stars
- 62
- Repository forks
- 13
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/driangle/taskmd/import-todos)