Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.
58
44%
Does it follow best practices?
Impact
76%
1.61xAverage score across 3 eval scenarios
Critical
Do not install without reviewing
Optimize this skill with Tessl
npx tessl skill review --optimize ./.claude/skills/speckit-constitution/SKILL.mdQuality
Discovery
50%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description conveys a reasonable sense of what the skill does—managing a project constitution and keeping templates in sync—but lacks explicit trigger guidance ('Use when...') and natural user-facing keywords. It is moderately specific but would benefit from concrete examples of actions and clearer disambiguation from related project-configuration skills.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user wants to create, update, or review the project constitution, project principles, or coding guidelines.'
Include natural trigger terms users might say, such as 'project rules', 'coding standards', 'project guidelines', 'principles', or 'project config'.
Clarify what 'dependent templates' are and what 'sync' entails to improve specificity and reduce overlap with generic template-management skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain ('project constitution') and some actions ('create or update', 'sync dependent templates'), but doesn't list multiple concrete actions in detail—e.g., what 'interactive or provided principle inputs' means concretely, or what 'dependent templates' are. | 2 / 3 |
Completeness | The 'what' is partially addressed (create/update constitution, sync templates), but there is no explicit 'Use when...' clause or equivalent trigger guidance, which caps this at 2 per the rubric. | 2 / 3 |
Trigger Term Quality | Includes some relevant terms like 'project constitution', 'principle inputs', and 'templates', but misses common natural variations a user might say (e.g., 'project rules', 'coding standards', 'project guidelines', 'config sync'). The term 'constitution' is somewhat niche. | 2 / 3 |
Distinctiveness Conflict Risk | The concept of a 'project constitution' is somewhat distinctive, but 'templates stay in sync' and 'principle inputs' are vague enough to potentially overlap with other project configuration or template management skills. | 2 / 3 |
Total | 8 / 12 Passed |
Implementation
39%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill defines a comprehensive constitution management workflow with strong sequencing and validation checkpoints, but suffers from significant verbosity and duplication. The pre/post hook sections are nearly identical and inflate the token cost substantially. The lack of concrete examples for the core editing task and the monolithic structure without progressive disclosure weaken its overall effectiveness.
Suggestions
Extract the duplicated hook-checking logic (pre-execution and post-execution) into a shared reference file (e.g., `hook-processing.md`) and reference it from both sections to cut ~50% of the content.
Add a concrete before/after example showing a template placeholder being replaced with actual content, so Claude has a clear pattern to follow for the core task.
Remove explanations of concepts Claude already knows (semantic versioning rules, ISO date format) or reduce them to single-line reminders.
Split the consistency propagation checklist (step 4) and formatting requirements into a separate reference file to improve progressive disclosure and reduce the main skill's token footprint.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose with significant duplication. The pre-execution and post-execution hook sections are nearly identical blocks (~30 lines each) that could be factored into a shared reference. The outline section contains extensive procedural detail that could be tightened considerably. Many instructions explain things Claude already knows (e.g., how semantic versioning works, what ISO date format is). | 1 / 3 |
Actionability | The skill provides a clear multi-step process with specific file paths and concrete placeholder conventions, but lacks executable code examples. Steps like 'Read `.specify/templates/plan-template.md` and ensure alignment' are somewhat vague—what specifically constitutes alignment? The hook formatting templates are concrete, but the core constitution-editing workflow relies on descriptive instructions rather than executable examples. | 2 / 3 |
Workflow Clarity | The 8-step execution flow is clearly sequenced with explicit validation in step 6 (no unexplained bracket tokens, version matching, date format, principle language quality). The Sync Impact Report in step 5 serves as a verification checkpoint. The workflow includes error handling (missing constitution → copy template, missing info → insert TODO). Feedback loops are present for version bump ambiguity and deferred placeholders. | 3 / 3 |
Progressive Disclosure | The entire skill is a monolithic wall of text with no references to supporting files despite referencing multiple template paths. The duplicated hook-checking logic (pre and post) should be extracted to a shared reference. No bundle files are provided, yet the skill references numerous files (.specify/templates/*, .specify/extensions.yml) without any supporting documentation. The content would benefit greatly from splitting hook logic, propagation checklist, and formatting requirements into separate referenced files. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata.version' is missing | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
3ce3191
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.