This tile was archived by the owner on Feb 4, 2026
Reason: Superseded by tessl-labs/intent-integrity-kit
tessl install tessl-labs/spec-kit@0.6.4Specification-driven development workflow skills for AI coding assistants
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.
MUST contain:
MUST NOT contain:
/speckit-03-plan/speckit-03-plan/speckit-03-plan/speckit-03-planThe constitution defines the "laws" of the project. The plan defines how to implement features within those laws.
$ARGUMENTSYou MUST consider the user input before proceeding (if not empty).
Check if constitution already exists:
cat .specify/memory/constitution.md 2>/dev/null || echo "NO_CONSTITUTION"If constitution doesn't exist, copy from template:
cp .tessl/tiles/tessl-labs/spec-kit/templates/constitution-template.md .specify/memory/constitution.mdLoad the existing constitution at .specify/memory/constitution.md.
[ALL_CAPS_IDENTIFIER].Collect/derive values for placeholders:
RATIFICATION_DATE is the original adoption date (if unknown, ask or mark TODO)LAST_AMENDED_DATE is today if changes are madeCONSTITUTION_VERSION must increment according to semantic versioning:
Draft the updated constitution content:
Consistency propagation (validate against templates if they exist):
.tessl/tiles/tessl-labs/spec-kit/templates/plan-template.md for constitution alignment.tessl/tiles/tessl-labs/spec-kit/templates/spec-template.md for scope/requirements alignment.tessl/tiles/tessl-labs/spec-kit/templates/tasks-template.md for task categorization alignmentProduce a Sync Impact Report (prepend as HTML comment at top of constitution file):
Validation before final output:
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:
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:
Re-validate after fixes until no violations remain.
Write the completed constitution back to .specify/memory/constitution.md
Initialize Git Repository (REQUIRED)
A spec-kit project MUST be a git repository to ensure proper project isolation.
# Check if git repo exists, initialize if not
if [ ! -d ".git" ]; then
git init
echo "[specify] Git repository initialized"
fiWhy this is required: Without git init, scripts like create-new-feature.sh may
find a parent git repository and create files in the wrong location.
Commit Constitution to Git
After writing the constitution, commit it to establish the project baseline:
git add .specify/memory/constitution.md
# Also add README if it exists
[ -f README.md ] && git add README.md
git commit -m "Initialize spec-kit project with constitution"This creates the initial commit with the project's governing document.
Output final summary to the user with:
After creating the constitution, you can:
/speckit-01-specify to create a feature specificationThe constitution will be loaded and validated by all other speckit skills.