Evaluate a cookbook recipe or guideline against applicable compliance checks. Triggers on 'check compliance', 'compliance check', 'lint compliance', or /lint-compliance.
First action: If $ARGUMENTS is --version, print lint-compliance v1.1.0 and stop.
Otherwise, print lint-compliance v1.1.0 as the first line of output, then proceed.
Version check: Read ${CLAUDE_SKILL_DIR}/SKILL.md from disk and extract the version: field from frontmatter. If it differs from this skill's version (1.1.0), print:
⚠ This skill is running v1.1.0 but vA.B.C is installed. Restart the session to use the latest version.
Continue running — do not stop.
Evaluates a cookbook recipe or guideline against the compliance framework defined in cookbook/compliance/. For each applicable compliance category, determines which checks apply to the target, evaluates them, and produces a structured PASS/WARN/FAIL report.
This skill serves two modes:
## Compliance section — verifies completeness and accuracy## Compliance section — identifies applicable checks and recommends what should be evaluatedResolve $ARGUMENTS to a recipe or guideline .md file.
$ARGUMENTS is provided:Path check: If $ARGUMENTS contains / or ends with .md, treat it as a file path.
.md file in it.Search string: Otherwise, treat $ARGUMENTS as a search string. Use Glob to find cookbook/recipes/**/*.md and cookbook/guidelines/**/*.md (excluding _template.md and INDEX.md). Filter to files whose name contains the search string (case-insensitive).
$ARGUMENTS is empty:Session context: Check if a recipe or guideline file was recently created, edited, or read in this conversation. If so, offer it with AskUserQuestion: "Check compliance for <filename>?" with options "Yes" and "No, choose another".
Prompt: If no recent file or user declined, use AskUserQuestion: "Which recipe or guideline? Enter a name or path." The user's response re-enters the search string flow above.
Locate the compliance directory. Check in order:
cookbook/compliance/ (running from within the cookbook repo)../agentic-cookbook/cookbook/compliance/ (running from a consuming project)If not found, stop with: "Cannot locate compliance definitions. Expected cookbook/compliance/ or ../agentic-cookbook/cookbook/compliance/."
Read cookbook/compliance/INDEX.md to get the list of all compliance categories.
Read the target file in full. Extract:
For each of the 10 compliance categories, read the category file and evaluate applicability based on the target's content:
| Category | Applicable when... |
|---|---|
| Security | Target handles authentication, user input, credentials, tokens, network requests, or stores data |
| User Safety | Target involves user-generated content, content display, or social features |
| Performance | Target has a UI, animations, data loading, or resource management |
| Best Practices | Always applicable — testing, linting, and code quality apply to everything |
| Access Patterns | Target involves network communication, API calls, or data synchronization |
| Accessibility | Target has a user interface or defines visual/interactive elements |
| Privacy & Data | Target collects, stores, transmits, or processes personal or sensitive data |
| Platform Compliance | Target targets specific platforms (check platforms: frontmatter) |
| Reliability | Target handles errors, manages state, or communicates over networks |
| Internationalization | Target contains user-visible text, dates, numbers, or locale-sensitive content |
For each applicable category, read the full compliance file and identify which individual checks within it apply to this specific target.
For each applicable check, evaluate against the target content:
For a check to pass, the target must:
For a check to fail, the target must:
For a check to be missing, the target must:
## Compliance section)Compare the existing compliance table against your evaluation:
## Compliance section)Generate a recommended compliance evaluation listing all applicable checks.
=== COMPLIANCE: <target filename> ===
Type: <recipe|guideline>
Mode: <audit|guidance>
Domain: <domain from frontmatter>
For each applicable category, print:
--- <CATEGORY NAME> ---
[PASS] check-name
<one-line justification — what in the target satisfies this>
[FAIL] check-name
<what's wrong or missing>
[WARN] check-name (missing)
<this check applies but the target doesn't address it>
[SKIP] check-name
<why this check doesn't apply to this target>
In audit mode, also print discrepancies:
--- AUDIT DISCREPANCIES ---
[MISSING] check-name — applicable but not in Compliance section
[DISAGREE] check-name — listed as "passed" but evaluation found "partial"
[EXTRA] check-name — listed but not applicable to this target
=== SUMMARY ===
Categories evaluated: N/10
Checks: N passed, N failed, N partial, N missing
Audit discrepancies: N (audit mode only)
After the summary, print prioritized recommendations:
For guidance mode, also print the recommended ## Compliance section table that could be added to the target:
Recommended Compliance section:
| Check | Status | Category |
|-------|--------|----------|
| [check-name](agentic-cookbook://compliance/category#check-name) | passed | Category |
...