skills/tasks-generator/SKILL.md
Generate development tasks from a PRD file with sprint-based planning. Use when users ask to create tasks from PRD, break down the PRD, generate sprint tasks, or want to convert product requirements into actionable development tasks. Creates/updates tasks.md and always reports GitHub links to changed files. Don't use for writing a PRD, authoring a TAD, or executing tasks (see openspec-task-loop).
npx skillsauth add luongnv89/skills tasks-generatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Transform PRD documents into structured, sprint-based development tasks with dependency analysis.
Before running this skill, verify:
If any check fails, the skill will stop and ask for clarification.
This skill uses a Staged Pipeline (E) + Parallel Workers (B) architecture:
Phase 1: Requirements Extraction
↓ (requirements-extractor agent)
↓
Phase 2-3: Sprint Planning
↓ (sprint-planner agent)
↓
Phase 4-5: Parallel Sprint Task Generation
├→ (sprint-worker agents, spawned in parallel — one per sprint)
├→ sprint 1 tasks
├→ sprint 2 tasks
├→ sprint 3 tasks
└→ ...
↓
Phase 6: Cross-Sprint Dependency Resolution
↓ (dependency-resolver agent)
↓
Final Output: tasks.md with all tasks and dependencies
Agents:
agents/requirements-extractor.md — Reads PRD + supporting docs, produces structured feature listagents/sprint-planner.md — Defines sprint scope (POC, MVP, full features), produces sprint planagents/sprint-worker.md — Generates tasks for ONE sprint (runs in parallel, one per sprint)agents/dependency-resolver.md — Wires cross-sprint dependencies, produces final tasks.mdKey Insight: Per-sprint task generation is parallelizable. Large PRDs produce 30-80 tasks across 4+ sprints. Sprint tasks are not fully independent — Sprint 2 depends on Sprint 1 output — so the dependency-resolver does a final pass to wire cross-sprint relationships.
Before creating/updating/deleting files in an existing repository, sync the current branch with remote:
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin
git pull --rebase origin "$branch"
If the working tree is not clean, stash first, sync, then restore:
git stash push -u -m "pre-sync"
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin && git pull --rebase origin "$branch"
git stash pop
If origin is missing, pull is unavailable, or rebase/stash conflicts occur, stop and ask the user before continuing.
Preferred: PRD file path provided in $ARGUMENTS.
Auto-pick mode (if $ARGUMENTS is empty):
IDEAS_ROOT when present.~/.config/ideas-root.txt.~/.openclaw/ideas-root.txt.IDEAS_ROOT.<project>/prd.md.PRD_PATH (from $ARGUMENTS or auto-pick mode) and verify it existstasks.md in the same directory - create backup if exists: tasks_backup_YYYY_MM_DD_HHMMSS.mdtad.md, ux_design.md, brand_kit.mdFrom PRD, extract:
POC (Proof of Concept):
MVP (Minimum Viable Product):
Full Features:
| Sprint | Focus | Scope | |--------|-------|-------| | Sprint 1 | POC | Core differentiating feature | | Sprint 2 | MVP Foundation | Auth, data models, primary workflows | | Sprint 3 | MVP Completion | UI/UX, integration, validation | | Sprint 4+ | Full Features | Enhancements, optimization, polish |
Create tasks.md in same directory as PRD. See references/tasks-template.md for full template.
Each task must include:
### Task X.Y: [Action-oriented Title]
**Description**: What and why, referencing PRD
**Acceptance Criteria**:
- [ ] Specific, testable condition 1
- [ ] Specific, testable condition 2
**Dependencies**: None / Task X.X
**PRD Reference**: [Section]
Before finalizing:
After writing tasks.md, if the PRD lives inside an ideas repo, update the repo README ideas table:
cd to the repo root and run python3 scripts/update_readme_ideas_index.py (if it exists)README.md manually (ensure Tasks status becomes ✅ for that idea)git push origin <branch>
git fetch origin && git rebase origin/main && git push.When reporting completion, include:
tasks.mdREADME.md when it was updatedLink format (derive <owner>/<repo> from git remote get-url origin):
https://github.com/<owner>/<repo>/blob/main/<relative-path>After completing each major step, output a status report in this format:
◆ [Step Name] ([step N of M] — [context])
··································································
[Check 1]: √ pass
[Check 2]: √ pass (note if relevant)
[Check 3]: × fail — [reason]
[Check 4]: √ pass
[Criteria]: √ N/M met
____________________________
Result: PASS | FAIL | PARTIAL
Adapt the check names to match what the step actually validates. Use √ for pass, × for fail, and — to add brief context. The "Criteria" line summarizes how many acceptance criteria were met. The "Result" line gives the overall verdict.
Requirements phase checks: PRD parsed, Features extracted, Constraints identified
Sprint Planning phase checks: Phases defined, Stories created, Dependencies mapped
Generation phase checks: tasks.md written, Sprint breakdown complete, Estimates assigned
Output phase checks: README updated, Committed, Links reported
After generating, provide:
The skill run is considered successful only if ALL of the following hold:
tasks.md exists in the same directory as the input PRD.tasks.md contains at least 3 sprints (POC, MVP Foundation, MVP Completion at minimum).Description, Acceptance Criteria (>=2 testable items), Dependencies (explicit None or task IDs), PRD Reference, and an effort estimate (e.g., Effort: 1-3 days or S/M/L).Task <sprint>.<index> pattern (e.g., Task 1.1, Task 2.3).tasks.md existed, a tasks_backup_YYYY_MM_DD_HHMMSS.md file is created.tasks.md (and README.md if updated) plus the commit hash.If any criterion fails, the skill must report it as a FAIL row in the Step Completion Report and not claim success.
The skill produces tasks.md next to the PRD, plus a final agent message with GitHub links and commit hash. See references/tasks-template.md for the full reviewable shape, dependency table, critical path, and final-message format. See references/self-test.md for the pre-success self-test checklist.
documentation
Manage software releases end-to-end: bump version, generate changelog, tag, push, GitHub release, publish to PyPI/npm. Use when user asks to ship, cut a release, tag a version, or list changes since last tag. Skip routine commits and marketplace publishing.
development
Review UI for usability issues using Steve Krug's principles and produce a scannable report. Use when asked for a usability audit, UX review, or UI feedback on screenshots, URLs, or code. Don't use for visual/brand design critique, accessibility (WCAG) audits, or backend/API review.
development
Validate app/startup ideas with market, feasibility, commercial, and open-source competitor analysis. Use when asked to evaluate, validate, or score a product idea. Don't use for PRDs, go-to-market plans, or investor decks.
testing
Install local-first security hardening: pre-commit secret detection, offline dependency scans, static analysis, reports, and gated free CI. Use when hardening repos or adding security hooks. Don't use for incident response or cloud security reviews.