agentleFS
aiproxeraiproxer/aiproxer/.agents/skills/kiro-spec-design/SKILL.md

kiro-spec-design

Skill22 starsChanged 16 days agoMITView on GitHub

Create a proportional technical design for a specification

3 other projects use a version of this, 3 of them edited.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

29 rules. 14 are common, 0 are distinctive, and 15 are very specific to this project.

  • 14

    Common

    Most of the 3 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 15

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Common:

    All requirements mapped to technical components with clear interfaces

    line 14
  2. Very specific:

    Read rules/design-principles.md from this skill's directory for design principles

    line 33
  3. Very specific:

    If -y flag provided ($2 == "-y"): Auto-approve requirements in spec.json

    line 37
  4. Very specific:

    Read and execute rules/design-discovery-full.md from this skill's directory

    line 53
  5. Common:

    Use Grep to analyze existing codebase patterns

    line 63
  6. Common:

    After all findings return, synthesize in main context before proceeding.

    line 79
  7. Very specific:

    Create or update .kiro/specs/$1/research.md using the shared template

    line 90
  8. Common:

    Document architecture pattern evaluation, design decisions, and risks using the template sections

    line 93
  9. Very specific:

    Use the language specified in spec.json when writing or updating research.md

    line 94
  10. Very specific:

    Read and apply rules/design-synthesis.md from this skill's directory

    line 100
  11. Very specific:

    Read .kiro/settings/templates/specs/design.md for structure

    line 107
  12. Very specific:

    Read rules/design-principles.md from this skill's directory for principles

    line 108
  13. Common:

    Boundary-first requirement: Before expanding supporting sections, make the boundary explicit.

    line 112
  14. Common:

    Integrate all discovery findings and synthesis outcomes: Use researched information (APIs, patterns, technologies) and synthesis decisions …

    line 113
  15. Common:

    If existing design.md found in Step 1, use it as reference context (merge mode)

    line 116
  16. Very specific:

    Use language specified in spec.json

    line 118
  17. Very specific:

    Keep this as a draft until the review gate passes.

    line 119
  18. Common:

    Verify requirements coverage, architecture readiness, and implementation executability before finalizing the design

    line 124
  19. Common:

    If issues are local to the draft, repair the design and review again

    line 125
  20. Common:

    Keep the review bounded to at most 2 repair passes

    line 126
  21. Very specific:

    If the draft exposes a real requirements/design gap, stop and return to requirements clarification instead of papering over it in design.md

    line 127
  22. Very specific:

    Write .kiro/specs/$1/design.md only after the design review gate passes

    line 132
  23. Common:

    Write research.md with discovery findings and synthesis outcomes (if not already written)

    line 133
  24. Very specific:

    Go Contracts: Follow rules/design-principles.md (Go Contracts).

    line 144
  25. Common:

    Requirements Traceability IDs: Use numeric requirement IDs only (e.g.

    line 145
  26. Common:

    Fallback: Use inline basic structure with warning

    line 182
  27. Common:

    Stop Execution: If requirements.md is missing numeric IDs or uses non-numeric headings (for example, "Requirement A"), stop and instruct …

    line 189
  28. Very specific:

    Stop Execution: Do not write a patched-over design.md

    line 192
  29. Very specific:

    Optional: Run /kiro-validate-design $1 for interactive quality review

    line 200

“Common” is measured: kept by at least 6 in 10 of the 3 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

Technical Design Generator

<background_information>

  • Success Criteria:
    • The design serves the V1 slice within the delivery budget, reusing existing seams
    • All requirements mapped to technical components with clear interfaces
    • The design makes responsibility boundaries explicit enough to guide task generation and review
    • Appropriate architecture discovery and research completed
    • Design aligns with steering context and existing patterns
    • Visual diagrams included for complex architectures </background_information>
<instructions> ## Execution Steps

Step 1: Load Context

Read all necessary context:

  • .kiro/specs/$1/spec.json, requirements.md, design.md (if exists)
  • .kiro/specs/$1/research.md (if exists, contains gap analysis from /kiro-validate-gap)
  • Product vision: root VISION.md (owner-ratified; overrides steering)
  • Core steering context: product.md, delivery.md, tech.md, structure.md
  • Additional steering files only when directly relevant to requirement coverage, architecture boundaries, integrations, runtime prerequisites, security/performance constraints, or team conventions that affect implementation readiness
  • .kiro/settings/templates/specs/design.md for document structure
  • Read rules/design-principles.md from this skill's directory for design principles
  • .kiro/settings/templates/specs/research.md for discovery log structure

Validate requirements approval:

  • If -y flag provided ($2 == "-y"): Auto-approve requirements in spec.json
  • Otherwise: Verify approval status (stop if unapproved, see Safety & Fallback)

Step 2: Discovery & Analysis

Critical: This phase ensures design is based on complete, accurate information.

  1. Classify Feature Type:
    • New Feature (greenfield) → Full discovery required
    • Extension (existing system) → Integration-focused discovery
    • Simple Addition (CRUD/UI) → Minimal or no discovery
    • Complex Integration → Full discovery, scoped to the V1 slice
  2. Execute Appropriate Discovery Process:

    For Complex/New Features:

    • Read and execute rules/design-discovery-full.md from this skill's directory
    • Conduct thorough research using WebSearch/WebFetch:
      • Latest architectural patterns and best practices
      • External dependency verification (APIs, libraries, versions, compatibility)
      • Official documentation, migration guides, known issues
      • Performance benchmarks and security considerations

    For Extensions:

    • Read and execute rules/design-discovery-light.md from this skill's directory
    • Focus on integration points, existing patterns, compatibility
    • Use Grep to analyze existing codebase patterns

    For Simple Additions:

    • Skip formal discovery, quick pattern check only

Parallel Research (sub-agent dispatch)

The following research areas are independent and can be dispatched as sub-agents. The agent should decide the optimal decomposition based on feature complexity — split, merge, add, or skip sub-agents as needed. Each sub-agent returns a findings summary (not raw data) to keep the main context clean for synthesis.

Typical research areas (adjust as appropriate):

  • Codebase analysis: Existing architecture patterns, integration points, code conventions
  • External research: Dependencies, APIs, latest best practices
  • Context loading (usually main context): Steering files, design principles, discovery rules, templates

For simple additions, skip sub-agent dispatch entirely and do a quick pattern check in main context.

After all findings return, synthesize in main context before proceeding.

  1. Retain Discovery Findings for Step 3:
    • External API contracts and constraints
    • Technology decisions with rationale
    • Existing patterns to follow or extend
    • Integration points and dependencies
    • Identified risks and mitigation strategies
    • Boundary candidates, out-of-boundary decisions, and likely revalidation triggers
  2. Persist Findings to Research Log:
    • Create or update .kiro/specs/$1/research.md using the shared template
    • Summarize discovery scope and key findings (Summary section)
    • Record investigations in Research Log topics with sources and implications
    • Document architecture pattern evaluation, design decisions, and risks using the template sections
    • Use the language specified in spec.json when writing or updating research.md

Step 3: Synthesis

Apply design synthesis to discovery findings before writing.

  • Read and apply rules/design-synthesis.md from this skill's directory
  • This step requires the full picture from discovery — do not parallelize or delegate to sub-agents
  • Record synthesis outcomes (generalizations found, build-vs-adopt decisions, simplifications) in research.md

Step 4: Generate Design Draft

  1. Load Design Template and Rules:
    • Read .kiro/settings/templates/specs/design.md for structure
    • Read rules/design-principles.md from this skill's directory for principles
  2. Generate Design Draft:
    • Follow specs/design.md template structure and generation instructions strictly
    • Boundary-first requirement: Before expanding supporting sections, make the boundary explicit. The draft must clearly define what this spec owns, what it does not own, which dependencies are allowed, and what changes would require downstream revalidation.
    • Integrate all discovery findings and synthesis outcomes: Use researched information (APIs, patterns, technologies) and synthesis decisions (generalizations, build-vs-adopt, simplifications) throughout component definitions, architecture decisions, and integration points
    • File Structure Plan (required): Populate the File Structure Plan section with concrete file paths and responsibilities. Analyze the codebase to determine which files need to be created vs. modified. Each file must have one clear responsibility. This section directly drives task _Boundary:_ annotations and implementation Task Briefs — vague file structures produce vague implementations.
    • Testing Strategy: Derive test items from the V1 acceptance criteria, following Test Proportionality in .kiro/steering/testing.md; reuse existing generic architecture rules instead of designing new ones. Each test item should reference specific components and behaviors from this design. E2E paths must map to the critical user flows identified in requirements. Avoid vague entries like "test login works" -- instead specify what is being verified and why it matters.
    • If existing design.md found in Step 1, use it as reference context (merge mode)
    • Apply design rules: Proportionality, Go Contracts, Visual Communication, Formal Tone
    • Use language specified in spec.json
    • Keep this as a draft until the review gate passes; do not write design.md yet

Step 5: Review Design Draft

  • Read and apply rules/design-review-gate.md from this skill's directory
  • Verify requirements coverage, architecture readiness, and implementation executability before finalizing the design
  • If issues are local to the draft, repair the design and review again
  • Keep the review bounded to at most 2 repair passes
  • If the draft exposes a real requirements/design gap, stop and return to requirements clarification instead of papering over it in design.md

Step 6: Finalize Design Document

  1. Write Final Design and Research Log:
    • Write .kiro/specs/$1/design.md only after the design review gate passes
    • Write research.md with discovery findings and synthesis outcomes (if not already written)
    • Persist any research.md updates that support the finalized design
  2. Update Metadata in spec.json:
    • Set phase: "design-generated"
    • Set approvals.design.generated: true, approved: false
    • Set approvals.requirements.approved: true
    • Update updated_at timestamp

Critical Constraints

  • Proportionality: The design covers the V1 slice only, within the design.md budget in .kiro/steering/delivery.md. Deferred items appear only in the Non-Goals list.
  • Go Contracts: Follow rules/design-principles.md (Go Contracts); document exported surfaces only.
  • Requirements Traceability IDs: Use numeric requirement IDs only (e.g. "1.1", "1.2", "3.1", "3.3") exactly as defined in requirements.md. Do not invent new IDs or use alphabetic labels.</instructions>

Output Description

Command execution output (separate from design.md content):

Provide brief summary in the language specified in spec.json:

  1. Status: Confirm design document generated at .kiro/specs/$1/design.md
  2. Discovery Type: Which discovery process was executed (full/light/minimal)
  3. Key Findings: 2-3 critical insights from research.md that shaped the design
  4. Review Gate: Confirm the design review gate passed
  5. Next Action: Approval workflow guidance (see Safety & Fallback)
  6. Research Log: Confirm research.md updated with latest decisions

Format: Concise Markdown (under 200 words) - this is the command output, NOT the design document itself

Note: The actual design document follows .kiro/settings/templates/specs/design.md structure.

Safety & Fallback

Error Scenarios

Requirements Not Approved:

  • Stop Execution: Cannot proceed without approved requirements
  • User Message: "Requirements not yet approved. Approval required before design generation."
  • Suggested Action: "Run /kiro-spec-design $1 -y to auto-approve requirements and proceed"

Missing Requirements:

  • Stop Execution: Requirements document must exist
  • User Message: "No requirements.md found at .kiro/specs/$1/requirements.md"
  • Suggested Action: "Run /kiro-spec-requirements $1 to generate requirements first"

Template Missing:

  • User Message: "Template file missing at .kiro/settings/templates/specs/design.md"
  • Suggested Action: "Check repository setup or restore template file"
  • Fallback: Use inline basic structure with warning

Steering Context Missing:

  • Warning: "Steering directory empty or missing - design may not align with project standards"
  • Proceed: Continue with generation but note limitation in output

Invalid Requirement IDs:

  • Stop Execution: If requirements.md is missing numeric IDs or uses non-numeric headings (for example, "Requirement A"), stop and instruct the user to fix requirements.md before continuing.

Spec Gap Found During Design Review:

  • Stop Execution: Do not write a patched-over design.md
  • User Message: "Design review found a real spec gap or ambiguity that must be resolved before design can be finalized."
  • Suggested Action: Clarify or fix requirements.md, then re-run /kiro-spec-design $1

Next Phase: Task Generation

If Design Approved:

  • Review generated design at .kiro/specs/$1/design.md
  • Optional: Run /kiro-validate-design $1 for interactive quality review
  • Then /kiro-spec-tasks $1 -y to generate implementation tasks

If Modifications Needed:

  • Provide feedback and re-run /kiro-spec-design $1
  • Existing design used as reference (merge mode)

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.