From cqa-tools
Assesses documentation user focus for CQA Q6-Q11: persona targeting (admin/developer), pain points, acronym expansion, additional resources, admonition density, and intro audience matching.
npx claudepluginhub redhat-documentation/redhat-docs-agent-tools --plugin cqa-toolsThis skill is limited to using the following tools:
| # | Parameter | Level |
Assesses CQA P2-P7 modularization in Red Hat AsciiDoc docs: assembly structure without rendered text between includes, module prefixes, templates, required elements, nesting depth.
Reviews Red Hat documentation for SSG structural compliance: admonitions (NOTE/IMPORTANT/WARNING/TIP only, no clustering), lead-in sentences (only when needed), prerequisites as completed states, and 2-3 sentence customer-centric short descriptions.
Assesses documentation quality across readability, consistency, audience fit, and prose clarity. Produces scored reviews with actionable findings before releases or doc reviews.
Share bugs, ideas, or general feedback.
| # | Parameter | Level |
|---|---|---|
| Q6 | Content applies to target persona (admin vs developer) | Important |
| Q7 | Content addresses user pain points | Important |
| Q8 | New terms and acronyms defined before use | Important |
| Q9 | Additional resources include useful links across RH sites | Important |
| Q10 | Admonitions not overused (max 3-4 per file) | Important |
| Q11 | Assembly introductions target audience and persona | Important |
Some repos use modules/ instead of topics/ for content files. All topics/ references in this skill apply equally to modules/. The automation scripts accept --scan-dirs to override the default scan directories.
Content must be written for and placed in the guide that matches the target persona. Red Hat documentation targets these baseline personas:
Administration Guide personas:
User Guide personas:
.code-workspace files, or repository-level configuration without requiring admin accesscluster-admin RBAC, product Custom Resource edits, or operator-level configuration| Score | Criteria |
|---|---|
| 4 (Meets) | All content correctly persona-targeted. No misplaced topics between guides. Cross-references used appropriately for cross-persona information. |
| 3 (Mostly meets) | Clear guide-level persona separation. Minor misplacements exist (≤5 topics) but overall structure is sound. Knowledge assumptions are appropriate. |
| 2 (Mostly does not meet) | Significant misplacements (>5 topics). Mixed persona content throughout. No clear guide-level separation strategy. |
| 1 (Does not meet) | No persona targeting. Admin and developer content mixed randomly. No structural separation. |
Documentation must address the pain points users are likely to encounter when accomplishing their goals. Pain point coverage includes both proactive prevention (warnings, prerequisites, verification) and reactive resolution (troubleshooting, workarounds, known issues).
Proactive pain prevention:
Reactive pain resolution:
4. Troubleshooting content addresses common failure scenarios with error-to-solution mappings
5. Known issues and limitations are documented with workarounds where available
6. .Troubleshooting block titles in procedures provide inline troubleshooting for steps that commonly fail
| Pain point category | Expected coverage |
|---|---|
| Installation/setup failures | Error-to-solution mapping, prerequisite verification |
| Authentication/authorization | OAuth, token, certificate, and credential troubleshooting |
| Performance issues | Resource allocation, caching, storage optimization |
| Upgrade/migration failures | Upgrade procedures, rollback, breaking changes |
| Network/connectivity | Proxy, firewall, DNS, TLS troubleshooting |
| Configuration errors | Validation guidance, common misconfiguration patterns |
| Storage/persistence | Strategy configuration, capacity warnings, size limits |
| Resource limits/quotas | Scaling guidance, per-user limits, sizing |
| Integration issues | Third-party tool compatibility, API errors |
| Security/compliance | Certificate management, RBAC, policy enforcement |
| Score | Criteria |
|---|---|
| 4 (Meets) | All common pain points covered. Both proactive (admonitions, prerequisites, verification) and reactive (troubleshooting, workarounds, known issues) coverage. Troubleshooting in both guides. |
| 3 (Mostly meets) | Most pain points covered proactively. Troubleshooting exists but has gaps. Some common failure scenarios lack error-to-solution content. |
| 2 (Mostly does not meet) | Limited pain point coverage. Few admonitions or prerequisites. Minimal troubleshooting content. Major gaps in common failure scenarios. |
| 1 (Does not meet) | No pain point coverage. No troubleshooting content. No warnings or prerequisites. |
First use of each acronym per guide must be expanded. This is a representative subset of common acronyms — check the product's glossary or style guide for a complete list: CLI, TLS, OAuth, DNS, API, HTTP, SSH, RBAC, OLM, PVC, UDI, CRD, CR, FQDN, IDE, OIDC, CA, CORS
Additional resources sections must include links to appropriate and useful content across Red Hat sites, upstream documentation, and authoritative third-party sources.
proc_) must have an [role="_additional-resources"] .Additional resources section. Concept and reference files should have one when related content exists elsewhere.link: macro (link:https://...[link text]). Bare URLs without the link: macro are inconsistent with AsciiDoc best practices.{prod-ag-url} or {prod-ug-url} attributes — not legacy aliases like {administration-guide-url}. The link target must match the actual [id="..."] declared in the target file.link: macros (link:https://...[ ]) is not acceptable. xref: with empty [] is standard (auto-generates from title).docs.redhat.com, access.redhat.com, docs.openshift.com — primarykubernetes.io, docs.github.com, jetbrains.com, code.visualstudio.com — acceptable for vendor-specific documentation{ocp4-ver}, {prod-ver}) must resolve correctly.link: macro in Additional resources sections{administration-guide-url}) instead of standard ones ({prod-ag-url})python3 ${CLAUDE_PLUGIN_ROOT}/skills/cqa-assess/scripts/check-external-links.py "$DOCS_REPO"
Extracts and categorizes all external URLs by domain type. Does not check link liveness but identifies domain distribution and placeholder URLs.
| Score | Criteria |
|---|---|
| 4 (Meets) | 100% proc files have Additional resources. All links use correct link: macro format. Cross-guide links use standard attributes with correct target IDs. ≥80% of files link to Red Hat content. No legacy attributes in active content. |
| 3 (Mostly meets) | ≥90% proc files have Additional resources. Minor formatting issues (≤5 bare URLs or legacy attributes). Cross-guide links mostly correct. Good domain diversity. |
| 2 (Mostly does not meet) | <90% proc files have Additional resources. Significant formatting issues (>5 bare URLs). Legacy attributes still in use. Poor link relevance. |
| 1 (Does not meet) | Most files lack Additional resources. No consistent link formatting. Broken cross-guide links. No Red Hat content links. |
Admonitions should draw the reader's attention to certain information. Keep admonitions to a minimum and avoid placing multiple admonitions close to one another.
| Type | Purpose |
|---|---|
| NOTE | Additional guidance or advice that improves product configuration, performance, or supportability |
| IMPORTANT | Advisory information essential to the completion of a task. Users must not disregard this information |
| WARNING | Information about potential system damage, data loss, or a support-related issue |
| TIP | Alternative methods that might not be obvious. Not essential to using the product |
CAUTION is NOT supported by the Red Hat Customer Portal. Do not use this admonition type.
[TYPE] + ==== delimiters). Inline admonitions (NOTE: text) must be converted to block format.. Step one, . Step two). Extract procedures into .Troubleshooting sections or separate topics.[NOTE], not [NOTES]).NOTE: text instead of block format)| Score | Criteria |
|---|---|
| 4 (Meets) | All files within 3-4 admonition limit. All admonitions use block format. No CAUTION type. No procedures inside admonitions. Correct type usage. Concise content. |
| 3 (Mostly meets) | Most files within limit (≤3 files at 4). Minor formatting issues (≤5 inline admonitions). No CAUTION. Occasional type mismatches. |
| 2 (Mostly does not meet) | Multiple files exceed limit. Inline admonitions widespread. CAUTION used. Procedures inside admonitions. Significant type mismatches. |
| 1 (Does not meet) | No admonition discipline. Mixed inline/block. Procedures in admonitions. CAUTION used. No adherence to type definitions. |
Assembly introductions must consider the target audience and apply to a specific persona or skill level. The introduction explains what the user accomplishes by working through the assembled modules.
include::.{prod-short}, {orch-name}) instead of hardcoded product names in the introduction text.| Level | Criteria | Example |
|---|---|---|
| Excellent | Multi-sentence, states WHAT + WHY + HOW/context, implies persona | "Configure OAuth to allow {prod-short} users to interact with remote Git repositories without re-entering credentials." |
| Good | States WHAT + WHY or WHAT + scope clearly | "Configure networking for {prod-short} to secure communications, enable custom routing, and support restricted environments." |
| Adequate | States WHAT only, single sentence, no WHY | "Configure storage for {prod-short} workspaces, including storage classes, strategies, and sizes." |
| Poor | Title repetition with "You can" prefix, or missing | — |
| Score | Criteria |
|---|---|
| 4 (Meets) | All assemblies have substantive introductions. All state WHAT the user accomplishes. ≥75% are good-to-excellent quality (WHAT + WHY). No self-referential language. No rendered text between includes. Titles match content form. No concept/reference material in intros. |
| 3 (Mostly meets) | All assemblies have introductions. Most state WHAT. Some lack WHY. 1-2 overly-long intros with concept material. Minor title issues. |
| 2 (Mostly does not meet) | Multiple assemblies lack introductions or have title-repetition intros. Rendered text between includes. Widespread title form violations. |
| 1 (Does not meet) | Missing introductions. No audience awareness. Rendered text between includes. Titles do not follow conventions. |
See scoring-guide.md.