π€ Meta-Specification Framework for generating Spec-Driven X (SD-X) speckits for AI Agents
Spec-Driven is using structured specifications to drive workflows - from requirements to implementation. Define specs first, validate and generate, then execute. This ensures clarity, consistency, and enables AI agents to understand and assist throughout the process.
MetaSpec is a meta-specification framework that enables AI Agents to automatically generate production-ready speckits (Spec-Driven X toolkits).
Define your speckit once β Get complete development environment with CLI, parser, validator, templates, and AI agent support.
What are Speckits?
- Specialized toolkits generated by MetaSpec
- Carry domain specifications as core assets
- Include built-in MetaSpec commands for development
- Follow spec-driven architecture patterns
What you can generate:
β
SD-Development - Spec-driven development
β
SD-Design - Spec-driven design systems
β
SD-Testing - Spec-driven testing frameworks
β
SD-Documentation - Spec-driven documentation
β
SD-Operations - Spec-driven operations
β
SD-X - Spec-driven generation for any domain
1. Meta-Level - A meta-specification framework that generates speckits
2. Any Domain - Supports any domain, not limited to development
3. Full Lifecycle - Covers complete lifecycle (creation, updates, maintenance)
4. Precision-Guided Navigation - Built-in line-number navigation across 6 core commands lets AI jump directly to relevant sections with read_file(offset, limit), cutting token usage by 84-99%
MetaSpec 0.5.4 introduces precision-guided navigation so AI agents can read just the slices of large command templates they need.
- How it works: Every enhanced command begins with a π Navigation Guide listing line ranges. Combine it with
read_file(target_file, offset, limit)to stream only that segment. - Coverage:
specify(SDS/SDD),implement(SDS/SDD),tasks(SDS),plan(SDD) β 8615 lines of navigation guidance overall. - Savings: Real-world scenarios show 84-99% token reductions (language-specific sections reach 97-99%).
- More examples: See
AGENTS.mdβ Token Optimization: Precision-Guided Navigation for full tables and best practices.
# Jump straight to CLI design section of SDD/specify read_file("src/metaspec/templates/meta/sdd/commands/specify.md.j2", offset=390, limit=273) # Grab Python-specific implementation steps only (97% savings) read_file("src/metaspec/templates/meta/sdd/commands/implement.md.j2", offset=210, limit=25)
# Recommended: Use uv (10-100x faster) β‘ uv pip install git+https://github.com/ACNet-AI/MetaSpec.git # Or use pip pip install git+https://github.com/ACNet-AI/MetaSpec.git
Other installation methods
Development mode:
git clone https://github.com/ACNet-AI/MetaSpec.git && cd MetaSpec uv pip install -e .
Coming soon: pip install metaspec π
Option 1: Interactive (Recommended)
metaspec init # Interactive wizard - guides you throughOption 2: Quick start
metaspec init my-spec-kit # One command, done!Option 3: Preview first
metaspec init my-spec-kit --dry-run # Preview metaspec init my-spec-kit # Create
Result: Complete speckit with CLI, parser, validator, templates, and AI agent support!
MetaSpec was born from real-world experience building spec-driven development tools:
π§ Phase 1: Universal SDD Tools
- Built spec-kit and OpenSpec - covering 0β1βN generic spec-driven development workflows
- Proved SDD methodology works across different project scales
π‘ Phase 2: The Domain Insight
- Discovery: While practicing SDD, we realized AI needs domain-specific specifications to generate expected results
- Example: To help AI develop MCP projects effectively, we need MCP domain specifications - not just generic development specs
- Vision: Modular domain specifications π§© that can be combined and composed to guide AI to generate content matching our expectations
π Phase 3: Beyond Development
- Realization: This pattern isn't limited to software development
- Breakthrough: Any domain can benefit from specification-driven workflows
- Vision: A meta-framework that generates spec toolkits for ANY domain
MetaSpec is built on two fundamental concepts:
1οΈβ£ Domain Refinement
- Specifications refine from general to specific through multiple levels
- Example: Development Spec β MCP Development Spec β Weather Query MCP Spec
- Each level adds more context and constraints, enabling more precise AI guidance
2οΈβ£ Modular Composition
- Specifications are independent, reusable modules that can be composed in two ways:
- Compose specs: Combine sub-domain specs into a complete domain spec (Full-stack Web = Frontend + Backend + Database)
- Compose usage: Apply multiple specs to one project (MetaSpec uses SDS + SDD; MCP project uses MCP + Python + Testing)
- This enables flexible reuse across different contexts and domains
Together, these create a flexible specification network where AI agents navigate domain knowledge through structured specs, combining them as needed to produce exactly what you envision.
Simple, powerful commands:
| Command | Description |
|---|---|
metaspec init [name] |
π Create spec-driven speckit (interactive or template-based) |
metaspec search <query> |
π Search community speckits |
metaspec install <name> |
π¦ Install speckit from community |
metaspec list |
π List installed speckits |
metaspec info <name> |
βΉοΈ Show speckit information |
metaspec contribute [--check-only] |
π€ Validate & contribute to community |
Common usage:
# Create speckit (interactive) metaspec init # Create with quick start (fast) metaspec init my-api-speckit # Preview before creating metaspec init my-spec-kit --dry-run # Discover and install speckits metaspec search "api" # Search community metaspec install api-speckit # Install from community metaspec list # List installed speckits # Use installed speckits directly api-speckit info # Direct usage (no metaspec prefix!)
What you get: CLI tools, parser, validator, templates, AGENTS.md, constitution, and full Python package structure.
MetaSpec generates independent, production-ready toolkits:
# Each generated speckit is a standalone CLI tool cd my-speckit ./scripts/init.sh # Install dependencies my-speckit info # Use directly (no metaspec prefix!) # Generated speckits include built-in MetaSpec commands (AI-assisted development) # MetaSpec Commands: /metaspec.sds.*, /metaspec.sdd.*, /metaspec.* (19 commands total)
Key Principle: MetaSpec is a generator, not a runtime. Generated speckits are independent tools.
Built-in MetaSpec Workflow: Every speckit includes 19 MetaSpec commands for complete development lifecycle (8 SDS + 8 SDD + 3 Evolution)
Iteration-Aware Design: Commands check for existing output and support update/new/append modes, preserving history and tracking progress across iterations (Constitution Principle #6)
Discover and share speckits with the community:
π¦ Awesome Spec Kits - A curated list of community speckits
# Search community speckits metaspec search "api validation" # Install from community metaspec install <speckit-name> # List installed speckits metaspec list # Get detailed information metaspec info <command>
# Validate your speckit before contributing metaspec contribute --check-only # β Validates requirements (pyproject.toml, README, LICENSE, etc.) # β Shows what's missing with fix suggestions # Contribute your speckit (one command!) metaspec contribute --open # β Validates your project # β Opens pre-filled GitHub issue in browser # β Bot automatically extracts metadata from your repo # β Done in ~30 seconds! # Or just get the URL metaspec contribute # β Shows registration URL to paste in browser # Preview metadata (optional) metaspec contribute --save-json # β Generates JSON file for preview # β Note: Bot extracts from repo, JSON is optional
Join the community:
- π Create and share your speckit
- π Community guide
- π¬ Discussions
MetaSpec is designed for AI agents with strong reasoning capabilities. Speckit creation requires meta-level system design, entity modeling, and domain research.
π Complete AI workflow guide: AGENTS.md
MetaSpec generates speckits. Since generated speckits are also projects, you can use spec-driven methodologies to develop them.
| Tool | Purpose | Built-in? | Access Method |
|---|---|---|---|
| MetaSpec Commands | Complete spec-driven workflow (19 commands) | β Yes | /metaspec.sds.*, /metaspec.sdd.*, /metaspec.* slash commands in generated speckits |
Complete Workflow:
# 1οΈβ£ CREATE: Generate speckit metaspec init my-spec-kit # 2οΈβ£ DEVELOP: Use built-in MetaSpec slash commands (no installation needed) cd my-spec-kit # SDS Commands (8) - Define domain specification # # Core Flow (2-5 commands depending on complexity): # Simple: constitution β specify β [clarify] β [checklist] # Complex: constitution β specify β [clarify] β plan β [checklist] β tasks β [analyze] β implement # # /metaspec.sds.constitution - Define specification design principles (required) # /metaspec.sds.specify - Define specification entities and operations (required) # /metaspec.sds.clarify - Clarify ambiguities (recommended, BEFORE plan, input quality gate) # /metaspec.sds.plan - Plan specification architecture (if complex) β # /metaspec.sds.checklist - Validate requirements completeness (recommended, AFTER plan, quality gate) # /metaspec.sds.tasks - Break down specification work (if complex) β # /metaspec.sds.analyze - Check task consistency (if complex, AFTER tasks, BEFORE implement, checkpoint) β # /metaspec.sds.implement - Write specification documents, NOT code (if complex) β # SDD Commands (8) - Develop spec-driven toolkit (follows spec-kit workflow) # Complete: constitution β specify β [clarify] β plan β [checklist] β tasks β [analyze] β implement # # /metaspec.sdd.constitution - Define toolkit implementation principles (required) # /metaspec.sdd.specify - Define toolkit specifications (required) # /metaspec.sdd.clarify - Clarify technical decisions (recommended, BEFORE plan, input quality gate) # /metaspec.sdd.plan - Plan implementation architecture (required) # /metaspec.sdd.checklist - Validate requirements completeness (recommended, AFTER plan, quality gate) # /metaspec.sdd.tasks - Break down implementation work (required) # /metaspec.sdd.analyze - Check architecture consistency (recommended, AFTER tasks, BEFORE implement, checkpoint) # /metaspec.sdd.implement - Build your speckit - write code (required) # Evolution Commands (3) - Controlled changes (shared) # /metaspec.proposal "change" --type sds|sdd - Create change proposals # /metaspec.apply <proposal-id> - Apply approved changes # /metaspec.archive <proposal-id> - Archive completed changes
Advantages:
- β Complete workflow built-in - Everything you need from day one
- β AI-assisted - MetaSpec commands guide development
- β No external dependencies - All tools included
MetaSpec is not just a generatorβit's a platform for speckits:
- Create speckits with
metaspec init - Develop with built-in MetaSpec commands
- Publish to community registry
- Install and use directly - no prefix needed!
# Example: Developer workflow metaspec init api-speckit cd api-speckit # ... develop using MetaSpec commands ... metaspec contribute api-speckit # User workflow metaspec search "api" metaspec install api-speckit # Use directly (no metaspec prefix!) api-speckit init my-api.json api-speckit validate my-api.json
Future roadmap: Enhanced community features, version management, analytics
π Complete guide: See AGENTS.md
# Step 1: Interactive creation (recommended) metaspec init # Or quick start with defaults metaspec init my-spec-kit # Step 2: What you get # my-spec-kit/ # βββ src/my_spec_kit/ # Python package # β βββ cli/ # CLI commands # β βββ parser.py # Parser # β βββ validator.py # Validator # βββ .metaspec/ # β βββ commands/ # MetaSpec commands (19 total) # β βββ templates/ # MetaSpec templates # βββ specs/ # Feature specifications # βββ templates/ # User project templates # βββ AGENTS.md # AI workflow guide # βββ README.md # User documentation # βββ pyproject.toml # Package config # Step 3: Install and develop cd my-spec-kit pip install -e . # Step 4: Use built-in MetaSpec commands for AI-assisted development # # Phase 1: Define domain specification (SDS - 8 commands) # Simple Path: constitution β specify β [clarify] β [checklist] # Complex Path: constitution β specify β [clarify] β plan β [checklist] β tasks β [analyze] β implement # # Core (required): # /metaspec.sds.constitution - Define specification design principles # /metaspec.sds.specify - Define specification entities # # Quality gates (recommended): # /metaspec.sds.clarify - Clarify ambiguities (BEFORE plan, input quality gate) # # If complex (splitting needed): # /metaspec.sds.plan - Plan specification architecture β # /metaspec.sds.checklist - Validate requirements completeness (AFTER plan, quality gate) # /metaspec.sds.tasks - Break down specification work β # /metaspec.sds.analyze - Check task consistency (AFTER tasks, BEFORE implement, checkpoint) β # /metaspec.sds.implement - Write specification documents (NOT code) β # Phase 2: Develop toolkit (SDD - 8 commands) # Complete Path: constitution β specify β [clarify] β plan β [checklist] β tasks β [analyze] β implement # (Same as spec-kit workflow - toolkit development always needs full process) # # Core (required): # /metaspec.sdd.constitution - Define toolkit implementation principles # /metaspec.sdd.specify - Define toolkit specifications # # Quality gates (recommended): # /metaspec.sdd.clarify - Clarify technical decisions (BEFORE plan, input quality gate) # # Core (required) - continued: # /metaspec.sdd.plan - Plan implementation architecture # /metaspec.sdd.checklist - Validate requirements completeness (AFTER plan, quality gate) # /metaspec.sdd.tasks - Break down implementation work # /metaspec.sdd.analyze - Check architecture consistency (AFTER tasks, BEFORE implement, checkpoint) # /metaspec.sdd.implement - Build your speckit (write code) # Step 5: Share with community metaspec contribute my-spec-kit
π More examples: See examples/ directory
π Community speckits: Check out Awesome Spec Kits for community-contributed toolkits
# Generation metaspec init [NAME] [OPTIONS] # Create speckit (interactive or template-based) # Community metaspec search <query> # Search community speckits metaspec install <name> # Install from community metaspec contribute [--check-only] # Validate & contribute to community # Information metaspec list # List installed speckits metaspec info <name> # Show speckit details metaspec version # Show MetaSpec version # Maintenance (run in speckit directory) metaspec sync # Sync commands to latest MetaSpec version metaspec sync --check-only # Check version without updating # Examples metaspec init # Interactive mode metaspec init my-speckit # Quick start (uses 'default') metaspec init my-speckit default # Explicit (same as above) metaspec search "api" # Search community metaspec install api-speckit # Install metaspec list # List installed
Use metaspec --help or metaspec <command> --help for detailed options
# Clone and install git clone https://github.com/ACNet-AI/MetaSpec.git && cd MetaSpec uv pip install -e ".[dev]" # Run tests uv run pytest # 151 tests, 90.99% coverage # Code quality checks uv run ruff check . # Lint uv run mypy src/metaspec # Type check
π Contributing Guide
- quickstart.md - 5-minute tutorial
- AGENTS.md - AI workflow guide
- contributing.md - Contribution guide
- examples/ - Example meta-specs
Iteration & Decision Guides:
- Evolution Guide - When to use formal evolution vs fast iteration
- Iteration Layers - How Evolution and Command layers work together
- Iteration Roadmap - Which commands support iteration and why
Current Version: v0.9.5 (Alpha) π
Latest: Documentation optimization & logical consistency fixes. See CHANGELOG.md for full release history.
Contributions welcome! See contributing.md for guidelines.
git clone https://github.com/ACNet-AI/MetaSpec.git
git checkout -b feature/your-feature
# Make changes, test, commit
git push origin feature/your-featureMIT License - see LICENSE
Inspired by Spec-Kit, Protocol Buffers, and OpenAPI.
A Meta-Specification Framework for Generating Spec-Driven Toolkits