Create or update a CONSTITUTION.md that defines project governance — establishes coding standards, quality gates, TDD policy, review requirements, and non-negotiable development principles with versioned amendment tracking. Use when defining project rules, setting up coding standards, establishing quality gates, configuring TDD requirements, or creating non-negotiable development principles.
From jm-adknpx claudepluginhub javimontano/jm-adk-alfaThis skill uses the workspace's default tool permissions.
agents/guardian.mdagents/lead.mdagents/specialist.mdagents/support.mdevals/evals.jsonknowledge/body-of-knowledge.mdknowledge/knowledge-graph.mdprompts/meta.mdprompts/primary.mdprompts/variations/deep.mdprompts/variations/quick.mdreferences/model-recommendations.mdreferences/phase-separation-rules.mdtemplates/output.docx.mdtemplates/output.htmlCreate or update the project constitution at CONSTITUTION.md — the governing principles for specification-driven development.
MUST contain: governance principles, non-negotiable development rules, quality standards, amendment procedures, compliance expectations, quality governance section referencing QA-PLAN.md.
Quality Governance section (MUST be included in every constitution):
### Quality Governance
QA-PLAN.md is the authoritative quality artifact for this project. It aggregates:
- Global Definition of Done and acceptance criteria (derived from this constitution)
- Per-feature qa/ subdirectories (created emergently by /sdd:spec and /sdd:test)
- Quality gate status (updated by /sdd:analyze)
- Feature quality registry (AC coverage, test coverage, checklist completion)
Run /sdd:qa to generate or refresh. Auto-invoked by /sdd:analyze.
MUST NOT contain: technology stack, frameworks, databases, implementation details, specific tools or versions. These belong in /iikit-02-plan. See phase-separation-rules.md.
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
test -f PREMISE.md. If missing: ERROR — "PREMISE.md not found. Run /iikit-core init first to create it." Do NOT proceed without PREMISE.md.bash .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/bash/validate-premise.sh --json
If FAIL (missing sections or placeholders): ERROR — show details, suggest re-running init.cat CONSTITUTION.md 2>/dev/null || echo "NO_CONSTITUTION"Load existing constitution — identify placeholder tokens [ALL_CAPS_IDENTIFIER]. Adapt to user's needs (more or fewer principles than template).
Collect values for placeholders:
RATIFICATION_DATE: original adoption dateLAST_AMENDED_DATE: today if changes madeCONSTITUTION_VERSION: semver (MAJOR: principle removal/redefinition, MINOR: new principle, PATCH: clarifications)Draft content: replace all placeholders, preserve heading hierarchy, ensure each principle has name + rules + rationale, governance section covers amendment/versioning/compliance.
Consistency check: validate against plan-template.md, spec-template.md, tasks-template.md.
Sync Impact Report (HTML comment at top): version change, modified principles, added/removed sections, follow-up TODOs.
Validate: no remaining bracket tokens, version matches report, dates in ISO format, principles are declarative and testable. Constitution MUST have at least 3 principles — if fewer, add more based on the project context.
Phase separation validation: scan for technology-specific content per phase-separation-rules.md. Auto-fix violations, re-validate until clean.
Write to CONSTITUTION.md
Store TDD determination in .specify/context.json so all skills read from here instead of re-parsing the constitution:
TDD_DET=$(bash .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/bash/testify-tdd.sh get-tdd-determination "CONSTITUTION.md")
Write to .specify/context.json using jq (merge, don't overwrite):
jq --arg det "$TDD_DET" '. + {tdd_determination: $det}' .specify/context.json > .specify/context.json.tmp && mv .specify/context.json.tmp .specify/context.json
If .specify/context.json doesn't exist, create it: echo '{}' | jq --arg det "$TDD_DET" '{tdd_determination: $det}' > .specify/context.json
Git init (if needed): git init to ensure project isolation
Commit: git add CONSTITUTION.md .specify/context.json && git commit -m "Add project constitution"
Dashboard Refresh (optional, never blocks):
bash .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/bash/generate-dashboard-safe.sh
Windows: pwsh .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/powershell/generate-dashboard-safe.ps1
Run: bash .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/bash/next-step.sh --phase 00 --json
Windows: pwsh .tessl/tiles/tessl-labs/intent-integrity-kit/skills/iikit-core/scripts/powershell/next-step.ps1 -Phase 00 -Json
Parse the JSON and present:
clear_after is true: suggest /clear before proceedingnext_step as the primary recommendationalt_steps non-empty: list as alternativesnext_step and each alt_step, include the model_tier from the JSON so the user knows which model is best for each option. Look up tiers in model-recommendations.md for agent-specific switch commands.Format:
Constitution ready!
Next: [/clear → ] <next_step> (model: <tier>)
[- <alt_step> — <reason> (model: <tier>)]
- Dashboard: file://$(pwd)/.specify/dashboard.html (resolve the path)
Example invocations:
| Scenario | Handling |
|---|---|
| Empty or minimal input | Request clarification before proceeding |
| Conflicting requirements | Flag conflicts explicitly, propose resolution |
| Out-of-scope request | Redirect to appropriate skill or escalate |
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.