speckit-00-constitution
Create or update project governance principles and constitution
Best use case
speckit-00-constitution is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Create or update project governance principles and constitution
Teams using speckit-00-constitution should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/speckit-00-constitution/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How speckit-00-constitution Compares
| Feature / Agent | speckit-00-constitution | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Create or update project governance principles and constitution
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Spec-Kit Constitution
Create or update the project constitution at `.specify/memory/constitution.md`. This file defines the governing principles, constraints, and governance rules for specification-driven development.
## Scope - What Constitution Contains
**MUST contain:**
- Project governance principles (high-level, technology-agnostic)
- Non-negotiable development rules
- Quality standards and expectations
- Amendment procedures and versioning policy
- Compliance review expectations
**MUST NOT contain:**
- Technology stack (languages, frameworks, databases) - belongs in `/speckit-03-plan`
- Implementation details - belongs in `/speckit-03-plan`
- Specific tools or versions - belongs in `/speckit-03-plan`
- API designs or data models - belongs in `/speckit-03-plan`
The constitution defines the "laws" of the project. The plan defines how to implement features within those laws.
## User Input
```text
$ARGUMENTS
```
You **MUST** consider the user input before proceeding (if not empty).
## Prerequisites Check
1. Check if constitution template exists:
```bash
cat .specify/memory/constitution.md 2>/dev/null || echo "NO_CONSTITUTION"
```
2. If file doesn't exist, copy from skill references:
- Read the constitution template from this skill's `references/constitution-template.md`
- Create `.specify/memory/constitution.md` with the template
## Execution Flow
1. **Load the existing constitution template** at `.specify/memory/constitution.md`.
- Identify every placeholder token of the form `[ALL_CAPS_IDENTIFIER]`.
- **IMPORTANT**: The user might require fewer or more principles than the template. Adapt accordingly.
2. **Collect/derive values for placeholders**:
- If user input supplies a value, use it.
- Otherwise infer from existing repo context (README, docs, prior constitution versions).
- For governance dates:
- `RATIFICATION_DATE` is the original adoption date (if unknown, ask or mark TODO)
- `LAST_AMENDED_DATE` is today if changes are made
- `CONSTITUTION_VERSION` must increment according to semantic versioning:
- MAJOR: Backward incompatible governance/principle removals or redefinitions
- MINOR: New principle/section added or materially expanded guidance
- PATCH: Clarifications, wording, typo fixes, non-semantic refinements
3. **Draft the updated constitution content**:
- Replace every placeholder with concrete text (no bracketed tokens left)
- Preserve heading hierarchy
- Ensure each Principle section has: succinct name, paragraph or bullet list capturing non-negotiable rules, explicit rationale
- Ensure Governance section lists amendment procedure, versioning policy, and compliance review expectations
4. **Consistency propagation** (validate against templates if they exist):
- Check `.specify/templates/plan-template.md` for constitution alignment
- Check `.specify/templates/spec-template.md` for scope/requirements alignment
- Check `.specify/templates/tasks-template.md` for task categorization alignment
5. **Produce a Sync Impact Report** (prepend as HTML comment at top of constitution file):
- Version change: old -> new
- List of modified principles
- Added/removed sections
- Templates requiring updates
- Follow-up TODOs if any placeholders deferred
6. **Validation before final output**:
- No remaining unexplained bracket tokens
- Version line matches report
- Dates in ISO format YYYY-MM-DD
- Principles are declarative, testable, and free of vague language
7. **Phase Separation Validation (REQUIRED)**:
Before writing, scan the draft constitution for technology-specific content that belongs in `/speckit-03-plan`:
**Check for violations - constitution MUST NOT mention:**
- Programming languages (Python, JavaScript, TypeScript, Go, Rust, Java, C#, etc.)
- Frameworks (React, Django, Express, Spring, Rails, FastAPI, etc.)
- Databases (PostgreSQL, MySQL, MongoDB, SQLite, Redis, etc.)
- Infrastructure (Docker, Kubernetes, AWS, GCP, Azure, etc.)
- Specific libraries or packages
- Version numbers of tools
- File extensions tied to languages (.py, .js, .ts, etc.)
- API specifications (REST, GraphQL, gRPC)
**If violations found:**
```
╭─────────────────────────────────────────────────────────────────╮
│ PHASE SEPARATION VIOLATION DETECTED │
├─────────────────────────────────────────────────────────────────┤
│ Constitution contains technology-specific content: │
│ - [list each violation] │
│ │
│ Technology decisions belong in /speckit-03-plan, not here. │
│ Constitution must be technology-agnostic to survive tech │
│ stack changes. │
├─────────────────────────────────────────────────────────────────┤
│ ACTION: Removing technology references and generalizing... │
╰─────────────────────────────────────────────────────────────────╯
```
**Auto-fix:** Rewrite the violating sections to be technology-agnostic:
- "Use Python" → "Use appropriate language for the domain"
- "Store in PostgreSQL" → "Use persistent storage"
- "Deploy with Docker" → "Use containerization when appropriate"
Re-validate after fixes until no violations remain.
8. **Write the completed constitution** back to `.specify/memory/constitution.md`
9. **Output final summary** to the user with:
- New version and bump rationale
- Any files flagged for manual follow-up
- Suggested commit message
## Formatting Requirements
- Use Markdown headings exactly as in the template
- Wrap long rationale lines for readability (<100 chars)
- Keep a single blank line between sections
- Avoid trailing whitespace
## Next Steps
After creating the constitution, you can:
- Run `/speckit-01-specify` to create a feature specification
The constitution will be loaded and validated by all other speckit skills.Related Skills
constitution
Elicit project goals, constitutional principles, and autonomy boundaries through structured questionnaire. Produces CONSTITUTION.md (operational principles) and GOALS.md (personal objectives). Use for any new project or to revisit existing constitutional decisions.
speckit-plan
Generate technical implementation plans from feature specifications. Use after creating a spec to define architecture, tech stack, and implementation phases. Creates plan.md with detailed technical design.
speckit-initial
Run `specify init` in the current or target directory to bootstrap a Spec Kit project (pull .specify/ and slash commands); supports multiple AI agents and --script sh/ps. Use when the user says "initialize Spec Kit project", "specify init", or "set up Spec Kit in this repo".
claude-win11-speckit-update-skill
Windows 11 system management
agent-ops-constitution
Create/update .agent/constitution.md. Use when commands/boundaries/constraints must be confirmed before baseline or code changes. Draft v0 from repo evidence, then interview user.
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
ui-ux-pro-max
UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 9 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient. Integrations: shadcn/ui MCP for component search and examples.
ui ux
UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 9 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient. Integrations: shadcn/ui MCP for component search and examples.
ui-ux-design
UI/UX design reference database. 50+ styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient.
ui-skills
Opinionated constraints for building better interfaces with agents.
ui-patterns
Plaited UI patterns for templates, behavioral elements, and styling. Use when creating bElements or FunctionalTemplates, writing stories for testing, using createStyles, building form controls, or coordinating cross-island communication.
ui-engineering
Expert system for creating high-quality, brand-aligned user interfaces. Use this skill when asked to design websites, create components, or implement specific visual styles. It contains specifications for major tech companies, design trends, and specific site types like blogs or presentations.