From hotl
Reviews documents by classifying them as HOTL or generic, then applies structural lint and/or AI review. Useful for ad hoc review outside the standard HOTL flow.
How this skill is triggered — by the user, by Claude, or both
Slash command
/hotl:document-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Optional utility for ad hoc document review. Use this to review existing docs, external specs, hand-authored plans, or any non-HOTL document. HOTL documents get structural lint (hard gate) followed by AI review. Non-HOTL documents skip lint and go straight to AI review with a generic rubric.
Optional utility for ad hoc document review. Use this to review existing docs, external specs, hand-authored plans, or any non-HOTL document. HOTL documents get structural lint (hard gate) followed by AI review. Non-HOTL documents skip lint and go straight to AI review with a generic rubric.
Note: This skill is not required in the standard HOTL flow. Writing-plans includes a built-in self-check, and execution preflight runs structural lint automatically. Use this skill when you want to review a document outside of the normal plan-then-execute cycle.
Announce: "Running document review. Classifying input..."
Before doing anything else, classify the input into one of four categories:
| Category | Detection | Review Path |
|---|---|---|
| HOTL workflow | Canonical docs/plans/*-workflow.md or legacy hotl-workflow-*.md | Phase 1 (HOTL lint, hard gate) → Phase 2 (HOTL AI review) |
| HOTL design doc (marked) | A design-doc-shaped file (canonical docs/designs/*.md or legacy *-design.md / *-plan.md) whose YAML frontmatter declares design_type: (one of feature | phase | initiative | architecture | contract | reference) OR hotl_managed: true | Phase 1 (HOTL lint) → Phase 2 (HOTL AI review) |
| Generic text/markdown | Any other .md, .txt, or pasted text — including design-shaped files in docs/designs/ that lack an HOTL marker | Skip Phase 1 → Phase 2 (generic AI review) |
.pdf extension | If the current runtime can read/extract the content, treat as generic text and review. Otherwise, ask the user for a text, markdown, or PDF-text export. | |
| DOCX / PPTX / binary | .docx, .pptx, or other binary formats | STOP. Ask the user for a markdown, plain text, or PDF export. Do not attempt conversion. |
Phase 1.6 opt-in rule: Path alone does NOT classify a file as HOTL. A design-shaped Markdown file in docs/designs/ without an HOTL frontmatter marker (design_type: or hotl_managed: true) is treated as generic markdown — document-lint.sh will SKIP it cleanly, and this skill routes it through Phase 2's generic-rubric AI review. To opt a hand-authored design doc into HOTL strict review, add design_type: <recognized-value> or hotl_managed: true to its frontmatter.
Announce the classification: e.g., "Classified as HOTL design doc (marked via design_type) — running lint + HOTL review." or "Classified as generic markdown — skipping lint, running generic review."
Skip this phase entirely for non-HOTL documents. If the input was classified as generic text/markdown or PDF, go directly to Phase 2 (generic AI review).
For HOTL documents only, run the deterministic lint script:
bash scripts/document-lint.sh <file>
Resolve document-lint.sh in this order:
hotl-plugin repo itself, use scripts/document-lint.sh~/.codex/hotl/scripts/document-lint.sh~/.codex/plugins/hotl-source/scripts/document-lint.sh~/.codex/plugins/cache/codex-plugins/hotl/*/scripts/document-lint.sh~/.cline/hotl/scripts/document-lint.sh~/.claude/plugins/hotl/scripts/document-lint.shDo not assume scripts/document-lint.sh exists in the repo being reviewed. The lint script lives in the HOTL install, not in arbitrary user projects.
hotl-config.shhotl-config.sh (the canonical reader for .hotl/config.yml) follows the same six-location resolution order as document-lint.sh:
hotl-plugin repo itself, use scripts/hotl-config.sh~/.codex/hotl/scripts/hotl-config.sh~/.codex/plugins/hotl-source/scripts/hotl-config.sh~/.codex/plugins/cache/codex-plugins/hotl/*/scripts/hotl-config.sh~/.cline/hotl/scripts/hotl-config.sh~/.claude/plugins/hotl/scripts/hotl-config.shDo not assume scripts/hotl-config.sh exists in the repo being reviewed. Callers that do not know their install location should invoke scripts/hotl-config-resolve.sh (a thin command proxy that locates hotl-config.sh and forwards argv).
If lint FAILS: STOP. Show all errors. The author MUST fix structural issues before AI review runs. Do not proceed.
If lint PASSES: Continue to Phase 2 (HOTL AI review).
Design docs (canonical docs/designs/*.md, plus legacy *-design.md / *-plan.md tactical docs):
Workflow files (canonical docs/plans/*-workflow.md, plus legacy hotl-workflow-*.md):
- [ ] **Step N: ...**, though legacy ### N. headings may still appearRead the full document and evaluate using the rubric that matches the classification:
After completing the review, output exactly one of the following. Use Lint: PASSED for HOTL documents or Lint: SKIPPED (non-HOTL document) for all other inputs.
All checks satisfied. Document is ready.
REVIEW: PASS
Document: <filename>
Lint: PASSED | SKIPPED (non-HOTL document)
AI Review: No issues found.
Ready for execution.
Issues found that should be fixed. List each with a specific suggestion.
REVIEW: REVISE
Document: <filename>
Lint: PASSED | SKIPPED (non-HOTL document)
AI Review: <N> issue(s) found.
Issues:
1. [ISSUE]: <description>
Suggestion: <how to fix>
2. [ISSUE]: <description>
Suggestion: <how to fix>
Fix these issues and re-run document review.
Serious concerns that the AI cannot resolve. Human must decide whether to proceed.
REVIEW: HUMAN_OVERRIDE_REQUIRED
Document: <filename>
Lint: PASSED | SKIPPED (non-HOTL document)
AI Review: Serious concern(s) requiring human judgment.
Concerns:
1. [CONCERN]: <description>
Risk: <what could go wrong>
2. [CONCERN]: <description>
Risk: <what could go wrong>
Do not continue until a human explicitly says to override these concerns.
REVISE, the author fixes the document first.HUMAN_OVERRIDE_REQUIRED, only an explicit human decision allows execution to proceed.npx claudepluginhub yimwoo/hotl-plugin --plugin hotlReviews requirements and plan documents using parallel persona agents to surface role-specific issues, auto-fix quality problems, and pose strategic questions.
Reviews requirements (docs/brainstorms/) or plan (docs/plans/) documents using parallel persona agents to surface role-specific issues, auto-fix quality problems, and present strategic questions. Use with document path or auto-detect.
Reviews documentation, blog posts, READMEs, proposals, and prose for quality issues in content, style, and embedded artifacts using parallel agents.