From blueprint-plugin
Validates ADR files in docs/adrs/ for reference integrity, supersedes/extends/related links, circular chains, self-references, and domain conflicts. Report-only or interactive fixes.
How this skill is triggered — by the user, by Claude, or both
Slash command
/blueprint-plugin:blueprint-adr-validateThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Validate Architecture Decision Records for relationship consistency, reference integrity, and domain conflicts.
Validate Architecture Decision Records for relationship consistency, reference integrity, and domain conflicts.
Usage: /blueprint:adr-validate [--report-only]
| Use this skill when... | Use alternative when... |
|---|---|
| Maintaining ADR integrity before releases | Creating new ADRs (use /blueprint:derive-adr) |
| Auditing after refactoring or changes | Quick one-time documentation review |
| Regular documentation review process | General ADR reading |
find docs -maxdepth 1 -name 'adrs' -type dfind docs/adrs -name "*.md" -type fgrep -l "^domain:" docs/adrs/*.mdecho "${1:---}"Parse $ARGUMENTS:
--report-only: Output validation report without prompting for fixes
Execute complete ADR validation and remediation workflow:
docs/adrs/ls docs/adrs/*.mdFor each ADR, validate:
See REFERENCE.md for detailed checks.
Compile comprehensive report showing:
If --report-only flag present:
Ask user action via AskUserQuestion:
docs/adrs/validation-report.mdExecute based on selection (see REFERENCE.md).
Update the task registry entry in docs/blueprint/manifest.json:
jq --arg now "$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
--arg result "${VALIDATION_RESULT:-success}" \
--argjson processed "${ADRS_VALIDATED:-0}" \
'.task_registry["adr-validate"].last_completed_at = $now |
.task_registry["adr-validate"].last_result = $result |
.task_registry["adr-validate"].stats.runs_total = ((.task_registry["adr-validate"].stats.runs_total // 0) + 1) |
.task_registry["adr-validate"].stats.items_processed = $processed' \
docs/blueprint/manifest.json > tmp.json && mv tmp.json docs/blueprint/manifest.json
Where VALIDATION_RESULT is "success", "{N} warnings", or "failed: {reason}".
Report all changes made:
| Context | Command |
|---|---|
| Check ADR directory | test -d docs/adrs && echo "YES" || echo "NO" |
| Count ADRs | ls docs/adrs/*.md 2>/dev/null | wc -l |
| Extract frontmatter | head -50 {file} | grep -m1 "^field:" | sed 's/^[^:]*:[[:space:]]*//' |
| Find by domain | grep -l "^domain: {domain}" docs/adrs/*.md |
| Detect cycles | Build supersession graph and traverse |
For validation rules, remediation procedures, and report format details, see REFERENCE.md.
npx claudepluginhub laurigates/claude-plugins --plugin blueprint-pluginAnalyzes Architecture Decision Records for domain conflicts, relationship validation, orphan detection, and consistency. Use when creating or reviewing ADRs.
Authors, indexes, and lints Architecture Decision Records (ADRs) to preserve the rationale behind system decisions. Scaffolds new ADRs, enforces format, manages supersession, and maintains an index.