Smithery Logo
MCPsSkillsDocsPricing
Login
NewFlame, an assistant that learns and improves. Available onTelegramSlack
    theinterneti

    spec-driven

    theinterneti/spec-driven
    Planning
    1 installs

    About

    SKILL.md

    Install

    • Telegram
      Telegram
    • Slack
      Slack
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    • Download skill
    ├─
    ├─
    └─
    Smithery Logo

    Give agents more agency

    Resources

    DocumentationPrivacy PolicySystem Status

    Company

    PricingAboutBlog

    Connect

    © 2026 Smithery. All rights reserved.

    About

    Spec-driven development workflow. Use when implementing new features, skills, or game mechanics. Ensures specs exist before code.

    SKILL.md

    Spec-Driven Development

    Workflow

    Before writing ANY implementation code:

    1. Check for existing spec in /specs/
    2. If no spec exists, create one first
    3. If spec exists, follow it exactly

    Spec Structure

    Every spec should define:

    ## Input
    What data the skill/feature receives (use Pydantic models)
    
    ## Process  
    Step-by-step logic (reference SRD rules if applicable)
    
    ## Output
    Structured result (use Pydantic models)
    
    ## Edge Cases
    What happens on invalid input, failures, etc.
    

    Implementation Rules

    • Use from __future__ import annotations
    • Use Pydantic for all input/output validation
    • Skills MUST be stateless (no global variables)
    • Skills MUST NOT call LLMs directly
    • Use type hints: str | None not Optional[str]
    • Follow existing patterns in src/skills/

    Testing

    • Write tests BEFORE or alongside implementation
    • Tests live in tests/test_<module>.py
    • Use pytest with AAA pattern (Arrange-Act-Assert)
    • Aim for 100% coverage
    Recommended Servers
    StudioMeyer-Crew
    StudioMeyer-Crew
    MantleKit Launch Planner
    MantleKit Launch Planner
    Sanity
    Sanity
    Repository
    theinterneti/tta-solo
    Files