skill-review
skill-review performs a behavioral audit of a Lattice skill by analyzing it through three independent review personas, each examining the skill from a different angle to identify gaps that would realistically surface during actual use. Use this skill after writing or significantly modifying a skill, or when prompted to find behavioral gaps, missing scenario handling, ambiguous instructions, silent failures, and inconsistencies that structural validation tools would miss. The output is a severity-ordered gap report with specific proposed fixes, filtered to include only high-confidence, practical findings.
git clone --depth 1 https://github.com/techygarg/lattice /tmp/skill-review && cp -r /tmp/skill-review/dev-skills/skill-review ~/.claude/skills/skill-reviewSKILL.md
# Skill Review **Core responsibility:** Find real behavioral gaps in a Lattice skill by reviewing it through three independent personas. Each persona sees the skill with different eyes, cares about different things, and may surface different gaps. The combined findings should be more practical and complete than any single review. **Input:** One skill path or skill name. **Output:** A unified findings report — only the high-confidence, practical gaps from all three personas, merged, deduplicated, pruned, and ordered by severity — with proposed fixes. **Review standard:** Prefer omission over speculation. Only report findings you are highly confident would surface in normal use, belong to this skill's responsibility, and would materially improve outcomes if fixed. A valid review may conclude that no material practical gaps remain. **How to verify this skill did its job:** - Every reported finding is grounded in a realistic scenario and tied to specific evidence in the skill - Zero findings is acceptable if no high-confidence practical gaps remain - Every gap has a specific proposed fix, not just a flag - Overlapping findings from multiple personas are merged into one entry with a note that multiple perspectives agree - Multiple personas agreeing raises confidence only after the finding survives the practicality filter - The final report is ordered: critical gaps first, warnings second, observations last — or explicitly says no material practical gaps were found - After fixes are applied, a second run of this skill on the same skill file shows no high-confidence practical gaps --- ## Step 1: Read the skill Read the full SKILL.md and all referenced files (defaults.md, template.md, references/). Form a clear understanding of: - What the skill claims to do and who uses it - What it produces (documents, reports, code, changes) - What its inputs are and what states they can be in - Where it sits in the Lattice pipeline (upstream / downstream connections) If the skill is composed by molecules, consumes refiner output, or depends on other skills, read the relevant upstream/downstream files too. Review against actual runtime usage, not an imagined standalone use case. --- ## Step 2: Propose 3 review personas Based on what the skill does and who it serves, propose 3 personas whose perspectives would surface the most useful gaps. **Persona selection logic:** | If the skill... | Consider personas like... | |---|---| | Is a molecule used by product/BA people | Senior PM, Business Analyst, Lead Developer consuming the output | | Is an atom enforcing code quality | Code reviewer, Junior developer following the rules, Architect checking for structural gaps | | Is a refiner configuring standards | Team lead setting standards, New team member onboarding, AI assistant consuming the standards doc | | Is a dev-tool skill (forge, validator, sync) | Lattice maintainer, First-time skill creator, Experienced developer new to Lattice | | Spans product + technical audiences | One product persona, one practitioner persona, one technical persona | Present 3 proposed personas with a one-line rationale for each: *"For [skill-name], I'd review from these three perspectives:* *1. [Persona A] — because [why this skill matters to them / what they'd be looking for]* *2. [Persona B] — because [different angle this persona brings]* *3. [Persona C] — because [third angle, ideally the consumer of the skill's output]* *Want to use these, swap any out, or add your own?"* Wait for the user to confirm or adjust before proceeding. **Do NOT proceed to Step 3 until personas are agreed.** --- ## Step 3: Persona analysis (run all three independently) For each persona in sequence, fully inhabit that perspective. Forget the other personas while you are in one. ### For each persona, run this analysis: **3a — Scenario generation** Generate the smallest realistic set of scenarios needed to stress this skill (typically 4–6; do not force all scenario types). Consider: - The ideal case (everything is as the skill expects) - First-time use (no existing setup, no prior knowledge) - Resuming interrupted work (some output already exists) - Minimal input (user provides as little as possible) - Maximal / complex input (large scope, many items, messy material) - The "wrong" input (material at the wrong granularity, the wrong format, a misunderstood concept) - Declining the recommended path (user skips a suggestion and wants to proceed differently) - Conflicting inputs (two sources that say different things) Use only the scenarios that genuinely apply to this skill. Skip any case that does not fit. Better 4 relevant scenarios with real findings than 8 forced scenarios with speculative ones. For each chosen scenario, follow the skill's instructions literally. Treat silence as a gap only if ALL are true: - The scenario is realistic in normal use - The decision belongs to this skill rather than another skill or pipeline stage - The missing guidance would likely cause a real failure, confusion, or drift If any of these are false, do not record a finding. **3b — Persona-specific concerns** Use these as attention prompts, not finding quotas. They help you notice classes of problems; they do not guarantee that a real finding exists. Each persona has things they care about that others might miss: - **A practitioner or user persona** asks: "Is this skill telling me what to do at every decision point? Or am I guessing?" May surface: gaps in decision guidance, missing error handling, ambiguous instructions. - **A quality or standards persona** asks: "Are the rules here enforceable? Can I tell pass from fail?" May surface: vague criteria, missing boundary conditions, rules that contradict each other. - **A technical or architectural persona** asks: "Does this compose correctly? Does it stay in its lane?" May surface: missing cross-references, scope bleed, broken upstream/downstream handoffs, missing resume logic. - **A product or o
Audit and fix all Lattice documentation, README, docs/, GitHub issue templates, and CLAUDE.md to ensure they are fully aligned with the current skill inventory. Documentation drift is the most common source of user confusion in Lattice — a skill exists in the codebase but not in the docs, or a renamed skill leaves a stale reference in the bug report template. If you've made any change to skills/ and haven't run this, run it now. Use when the user says 'align docs', 'audit docs', 'update documentation', 'skill align', 'check docs are in sync', 'audit skill inventory', 'ensure docs are aligned', 'are the docs up to date', or 'what needs updating'. Standalone — does not call other skills.
Create a new Lattice skill — atom, molecule, or refiner — following all framework conventions. Writing skill files manually almost always produces convention violations: wrong section order, missing confirmation gates, defaults.md without the right structure. This skill knows all of that and guides you through it. Use whenever adding any new atom, molecule, or refiner to Lattice, or when the user says 'create a new skill', 'add an atom', 'add a molecule', 'add a refiner', 'build X for Lattice', 'new lattice skill', or 'skill forge'. Does not validate, align docs, or deploy — those are separate skills you run after.
Validate any Lattice SKILL.md against all tier conventions — atoms, molecules, and refiners. Catches structural errors, broken cross-references, and convention violations before they reach the repo. If you just wrote or modified a Lattice skill file and haven't run this yet, run it now — manual review consistently misses the same categories of errors this skill is specifically designed to catch. Use when the user says 'validate this skill', 'check this skill', 'does this follow conventions', 'review this skill file', 'check my SKILL.md', or 'skill validate'. Reports PASS/FAIL with specific file-and-section findings and actionable fixes. Standalone — does not call other skills.
Architectural thinking partner for an existing repository — scans the codebase, conducts a structured interview, agrees on current architectural state and recommended direction, and produces a shareable insights document. Scoped to one repository, module, or folder. Does not execute transformation — it orients. Use when the user says 'assess my codebase architecture', 'what direction should my codebase go', 'architecture compass', 'understand my architecture', 'audit architecture drift', 'architectural assessment', or 'help me understand what is wrong with my codebase'.
Facilitate a structured conversation to define architecture principles for a repository. Supports multiple architecture styles: clean architecture (default), hexagonal / ports & adapters, modular monolith, or custom. Produces a formal architecture document that the corresponding atom will use. Use when setting up a new project, defining architecture standards, or when the user says 'setup architecture', 'define layers', 'architecture principles', 'help me define my architecture', 'hexagonal architecture', 'modular monolith', 'ports and adapters', or 'define my architecture style'.
Enforce architectural rules when generating or modifying code. Defaults to clean architecture; supports any architecture style via the architecture-refiner. Validates layer responsibilities, dependency direction, and structural constraints using the loaded architecture rules. Use when generating code, reviewing architecture, creating new files, or when the user mentions 'architecture', 'layers', 'structure', 'dependency rules', 'hexagonal architecture', 'ports and adapters', 'modular monolith', or 'onion architecture'. Also use when reviewing generated code for structural compliance.
Investigate, reproduce, and safely fix a bug with regression protection. Composes context, diagnosis, architecture, code quality, and testing guardrails into a reproduce-first repair workflow. Use when the user says 'fix this bug', 'debug this', 'investigate this failure', 'patch this regression', 'repair this issue', or 'why is this broken'.
Facilitate a structured conversation to define clean code principles for a repository. Produces a formal clean-code.md document that the clean-code atom will use as its override. Use when setting up coding standards, defining code quality rules, or when the user says 'setup clean code', 'define coding standards', 'code quality principles', 'coding guidelines', or 'help me define my code standards'.