agentleFS
felipefontourafelipefontoura/pi-sdd-kit/skills/sdd-tasks/SKILL.md

sdd-tasks

Skill36 starsChanged 6 months agoMITView on GitHub

Core cognitive SDD skill for decomposing an approved design.md into practical tasks.md. Use when the conversation calls for implementation planning, task dependencies, estimates, acceptance criteria, file targets, and verification steps, even without an explicit command. Do not use for technical design or direct coding.

We split this skill into the rules it gives an agent

38 rules. 0 are common, 19 are distinctive, and 19 are very specific to this project.

  • 0

    Common

    Most of the 6 edited versions we read keep these.

  • 19

    Distinctive

    This author's own choices. Worth a look.

  • 19

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read ../_shared/references/templates.md when drafting the artifact.

    line 19
  2. Very specific:

    Use package-level templates/tasks.md as the user-facing template when available.

    line 20
  3. Very specific:

    Use the SDD Handoff Template and package-level templates/handoff.md when creating or refreshing .ai/sdd/handoff/sdd-brief.md.

    line 21
  4. Very specific:

    If .status is missing or invalid, stop and ask the user to repair it.

    line 28
  5. Very specific:

    If blocked, report the current status and recommend /skill:sdd-spec approval as the next safe action.

    line 30
  6. Very specific:

    Read requirements.md and design.md completely.

    line 31
  7. Very specific:

    Read decisions.md if it exists.

    line 32
  8. Distinctive:

    Create tasks that are independently implementable after dependencies are complete.

    line 40
  9. Distinctive:

    Keep small-project tasks around 30 minutes to 2 hours.

    line 42
  10. Distinctive:

    Keep medium-project tasks around 1 to 4 hours.

    line 43
  11. Distinctive:

    Prefer implementation slices that deliver visible value when the requirements contain user stories.

    line 46
  12. Distinctive:

    Run the implementation readiness check.

    line 49
  13. Very specific:

    Keep this as part of sdd-tasks.

    line 50
  14. Distinctive:

    Verify requirements are covered by design decisions or design sections.

    line 51
  15. Distinctive:

    Verify every Must Have requirement is covered by at least one task.

    line 52
  16. Distinctive:

    Verify every task maps to at least one requirement, NFR, design decision, or explicit enabling need.

    line 53
  17. Very specific:

    Verify critical Questions in requirements.md are answered before approval.

    line 54
  18. Distinctive:

    Verify each task has acceptance criteria, likely files, dependencies, and verification.

    line 55
  19. Very specific:

    Verify planned verification commands are known or explicitly marked manual/N/A.

    line 56
  20. Distinctive:

    If the check reveals a requirements or design gap, stop and ask whether to update the source artifact before continuing.

    line 57
  21. Very specific:

    Use the Tasks Template from ../_shared/references/templates.md.

    line 60
  22. Distinctive:

    Ensure every Must Have requirement is covered by at least one task.

    line 65
  23. Distinctive:

    Ask for explicit approval or requested changes.

    line 70
  24. Very specific:

    Keep .status as tasks:draft until explicit approval.

    line 77
  25. Distinctive:

    Do not mark tasks approved while the Readiness Check has blocking failures.

    line 78
  26. Very specific:

    After explicit approval, update the artifact status header to approved and set .status to tasks:approved.

    line 79
  27. Very specific:

    Update .ai/sdd/INDEX.md with the current status when practical.

    line 80
  28. Distinctive:

    Create or refresh the SDD handoff after approval.

    line 82
  29. Very specific:

    Only after tasks:approved, create .ai/sdd/handoff/ if needed.

    line 83
  30. Very specific:

    Write or update .ai/sdd/handoff/sdd-brief.md as the downstream implementation contract.

    line 84
  31. Distinctive:

    Every Must Have requirement is traceable to task IDs in the Requirement Coverage table.

    line 100
  32. Distinctive:

    No task should be a vague bucket like "finish UI" or "fix bugs".

    line 103
  33. Distinctive:

    Do not write implementation code in this skill.

    line 107
  34. Very specific:

    Do not invent technical details that conflict with design.md.

    line 108
  35. Distinctive:

    If task planning reveals a design gap, stop and ask whether to update the design.

    line 109
  36. Distinctive:

    Do not mark tasks approved without explicit user approval.

    line 110
  37. Very specific:

    Do not write .ai/sdd/handoff/sdd-brief.md as ready for implementation before tasks:approved.

    line 112
  38. Very specific:

    Do not infer design approval from file existence.

    line 113

“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

SDD Tasks

Convert an approved design into an implementation task plan.

Purpose

Tasks define how much work exists and in what order it should be done. They must be small, independently implementable, dependency-aware, and verifiable.

Workflow

  1. Load the SDD reference.
    • Read ../_shared/references/sdd-practical.md.
    • Apply the Language Policy: respond and write artifacts in the user's initial chat language while keeping skill instructions and templates in EN-US.
    • Read ../_shared/references/templates.md when drafting the artifact.
    • Use package-level templates/tasks.md as the user-facing template when available.
    • Use the SDD Handoff Template and package-level templates/handoff.md when creating or refreshing .ai/sdd/handoff/sdd-brief.md.
    • Load relevant .ai/steering/*.md files when present, especially product.md, tech-stack.md, conventions.md, and principles.md.
  2. Locate the feature and validate the gate.
    • Use .ai/sdd/specs/NNN-feature-name/.
    • Read .status.
    • Validate .status against the official status values from sdd-practical.md.
    • If .status is missing or invalid, stop and ask the user to repair it; do not infer design approval from design.md existing.
    • Block if status is not design:approved, unless the user explicitly asks for draft planning.
    • If blocked, report the current status and recommend /skill:sdd-spec approval as the next safe action.
    • Read requirements.md and design.md completely.
    • Read decisions.md if it exists.
  3. Explore implementation context.
    • Inspect relevant files, tests, package scripts, project conventions, and existing patterns.
    • Identify likely files to create or modify.
    • Identify verification commands from package.json, Makefile, README, CI config, or project docs.
  4. Decompose work.
    • Create tasks that are independently implementable after dependencies are complete.
    • Avoid circular dependencies.
    • Keep small-project tasks around 30 minutes to 2 hours.
    • Keep medium-project tasks around 1 to 4 hours.
    • Merge tasks that cannot be verified independently.
    • Include tests and verification inside each task; do not create a separate testing-only task unless explicitly needed.
    • Prefer implementation slices that deliver visible value when the requirements contain user stories.
    • For small projects, keep slices lightweight and optional; do not add ceremony when a flat task list is clearer.
  5. Run the implementation readiness check.
    • Keep this as part of sdd-tasks; do not introduce a separate public analysis step.
    • Verify requirements are covered by design decisions or design sections.
    • Verify every Must Have requirement is covered by at least one task.
    • Verify every task maps to at least one requirement, NFR, design decision, or explicit enabling need.
    • Verify critical Questions in requirements.md are answered before approval.
    • Verify each task has acceptance criteria, likely files, dependencies, and verification.
    • Verify planned verification commands are known or explicitly marked manual/N/A.
    • If the check reveals a requirements or design gap, stop and ask whether to update the source artifact before continuing.
  6. Draft tasks.
    • Use the Tasks Template from ../_shared/references/templates.md.
    • Include a Requirement Coverage table mapping requirements to task IDs.
    • Include a Readiness Check table summarizing coverage, open questions, task quality, and verification readiness.
    • Include optional Implementation Slices for MVP / user stories when they improve clarity.
    • Include stable task IDs, priority, estimate, dependencies, work checklist, acceptance criteria, files, and verification.
    • Ensure every Must Have requirement is covered by at least one task.
    • Include a dependency diagram only when it improves clarity.
  7. Review with the user.
    • Present the full task breakdown.
    • Ask for explicit approval or requested changes.
    • Revise until approved.
  8. Save draft and gate.
    • Save draft tasks to .ai/sdd/specs/NNN-feature-name/tasks.md with > Status: Draft when useful for collaboration.
    • Set .status to tasks:draft only after a binding task draft is created from design:approved.
    • For draft planning before approved design, do not advance .status; clearly label the draft as non-binding.
    • Keep .status as tasks:draft until explicit approval.
    • Do not mark tasks approved while the Readiness Check has blocking failures.
    • After explicit approval, update the artifact status header to approved and set .status to tasks:approved.
    • Update .ai/sdd/INDEX.md with the current status when practical; if not updated, tell the user the index may be stale.
  9. Create or refresh the SDD handoff after approval.
    • Only after tasks:approved, create .ai/sdd/handoff/ if needed.
    • Write or update .ai/sdd/handoff/sdd-brief.md as the downstream implementation contract.
    • Summarize the approved requirements, design, task order, likely files, verification plan, blockers, and readiness.
    • Include exact source paths to requirements.md, design.md, tasks.md, .status, optional decisions.md, and optional .ai/strategy/handoff/strategy-brief.md if it was used.
    • Mark readiness as ready for implementation only when requirements, design, and tasks are approved and no blocking open questions remain.

Output

  • .ai/sdd/specs/NNN-feature-name/tasks.md
  • Updated .status
  • .ai/sdd/handoff/sdd-brief.md after tasks:approved

Quality Bar

  • Each task has acceptance criteria and verification.
  • Each task has explicit dependencies.
  • Each task names likely files.
  • Every Must Have requirement is traceable to task IDs in the Requirement Coverage table.
  • Readiness Check has no blocking failures before approval.
  • Open critical requirement questions are resolved before approval.
  • No task should be a vague bucket like "finish UI" or "fix bugs".

Critical Rules

  • Do not write implementation code in this skill.
  • Do not invent technical details that conflict with design.md.
  • If task planning reveals a design gap, stop and ask whether to update the design.
  • Do not mark tasks approved without explicit user approval.
  • Draft tasks may be saved, but they do not authorize implementation.
  • Do not write .ai/sdd/handoff/sdd-brief.md as ready for implementation before tasks:approved.
  • Do not infer design approval from file existence; require valid .status.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.