Spec Coding

Build production-ready apps with specification-driven AI development

Overview

Spec Coding is a specification-first development methodology that transforms how you build applications with AI. Instead of jumping straight into code, you define detailed specifications first—project brief, user experience, and design requirements—then let AI generate production-ready code that precisely matches your vision.

Spec Coding vs Vibe Coding

Capacity offers two development modes:

AspectVibe CodingSpec Coding
ApproachStart coding immediatelyDefine specs first, then code
RequirementsEvolve during developmentClear from day one
AI behaviorGuesses your intentionsKnows exactly what to build
Best forQuick prototypes, explorationProduction apps, complex features

How to Enable Spec Coding

  1. 1
    Complete Your Project Brief

    Before using Spec Coding, you must have a project brief. Navigate to the AI Co-Founder tab and complete your project brief with your AI co-founder. This ensures the AI understands your project's context, goals, and scope.

  2. 2
    Switch to Spec Mode

    In the chat input area, you'll see a mode switcher button. Click it to toggle between Vibe (purple wave icon) and Spec (blue text icon) modes.

  3. 3
    Start Building

    Once in Spec mode, describe your task and submit. The Spec Coding dialog will open for you to review and confirm before AI begins implementation.

Note:

If you haven't completed your project brief, selecting Spec mode will show an educational dialog explaining what you need to do first.

How Spec Coding Works

Step 1: Prepare Your Specifications

Before using Spec Coding, complete these specifications with your AI Co-Founder:

Project Brief

Describe your project at a high level:

  • What problem does it solve?
  • Who is it for?
  • What are the core features?

Example: "A task management app for remote teams with real-time collaboration, Slack integration, and automated progress reports."

User Experience (UX) Specs

Map out user flows and interactions:

  • How will users navigate your app?
  • What actions will they take?
  • What outcomes will they achieve?

Example: "User can create a task → assign team members → set deadlines → receive notifications → mark complete"

Design Requirements

Document your visual preferences:

  • Color palettes and brand guidelines
  • Typography preferences
  • Component styles and layout preferences

Example: "Minimal design, dark mode, rounded corners, subtle shadows, Inter font family"

Step 2: Submit a Task in Spec Mode

  1. Switch to Spec mode using the mode toggle in the chat input
  2. Describe your task clearly and specifically
  3. Submit your message - the Spec Coding dialog will appear

Step 3: Review and Confirm

The Spec Coding dialog shows:

  • Your formatted task description
  • A "Create & Start" button to begin implementation
  • A timer showing elapsed processing time

Review your task description to ensure it captures what you want to build. Click "Create & Start" when ready.

Step 4: AI Implementation

Once confirmed, AI automatically begins implementing your task, generating code that matches your specifications.

Benefits of Spec Coding

Precise Output

AI generates code that matches your exact requirements. No guessing, no misinterpretation—your specifications guide every decision.

Faster Development

Clear specs mean fewer iterations and revisions. Build the right thing the first time instead of going back and forth.

Better Architecture

Thinking through specs first leads to better structured, more maintainable code. AI understands the full picture before writing any code.

Living Documentation

Your specifications become documentation that stays in sync with your actual code. Always know what was built and why.

Reduced Risk

Validate your ideas in specifications before investing time in development. Catch issues early when they're easy to fix.

Best Practices

Before Using Spec Mode

  1. Complete all specifications - Project brief, UX, and design specs give AI the full context
  2. Be thorough - The more detailed your specs, the better the generated code
  3. Review your specs - Ensure they accurately reflect what you want to build

When Writing Tasks

  1. Be specific - Describe exactly what you want the feature to do
  2. Include context - Reference relevant parts of your app
  3. Define scope - Be clear about what's included and what's not

During Implementation

  1. Review the task - Confirm it captures your intent before AI starts coding
  2. Monitor progress - Watch the implementation to ensure it matches expectations
  3. Iterate as needed - Update specs and re-run if adjustments are needed

FAQ

What's the difference between Spec and Vibe mode?

Vibe mode is for quick, iterative development where you describe what you want and AI starts coding immediately. Spec mode uses your predefined specifications to ensure AI has complete context before generating code.

Why do I need a project brief first?

The project brief gives AI essential context about your project's goals, target users, and scope. Without it, AI can't make informed decisions about how to implement your features in a way that fits your overall vision.

Can I switch between modes?

Yes! You can toggle between Vibe and Spec modes at any time using the mode switcher in the chat input. Use Vibe for quick experiments and Spec for production features.

Can I edit specifications after code is generated?

Yes. Update your specifications anytime through the AI Co-Founder tab. Future Spec Coding tasks will use the updated specifications.


Spec Coding transforms AI development from guesswork into precision engineering. By defining your specifications upfront, you ensure every line of generated code serves your exact vision.