Skip to content
cccskills
FreePublished on GitHub

docs:review

AI-assisted documentation review for Rossoctl PRs — structure, accuracy, links, conciseness

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303 stars(GitHub 303 + cccskills 0)
Works withGitHub

Run score Not tested

See how to install

Files included (1)

  • SKILL.md7.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

flowchart TD
    START([docs:review]) --> GATHER["Phase 1: Gather changed docs"]
    GATHER --> ANALYZE["Phase 2: Analyze each file"]
    ANALYZE --> REPORT["Phase 3: Report findings"]
    REPORT --> SUBMIT["Phase 4: Post review"]

Follow this diagram as the workflow.

Documentation Review

AI-assisted review of documentation changes in Rossoctl PRs. Checks structure, accuracy, links, conciseness, and consistency against the "Contributing Documentation" section of CONTRIBUTING.md, the authoritative standard, and the meta:write-docs skill that applies it. Use alongside the automated Docs CI workflow (markdownlint, lychee) for comprehensive coverage.

Table of Contents

When to Use

  • Reviewing a PR that adds or modifies docs/** or *.md files
  • Validating documentation quality before merge
  • Invoked as /docs:review <PR-number> or /docs:review (auto-detects current PR)

Phase 1: Gather Changed Docs

export LOG_DIR=/tmp/rossoctl/docs-review/$PR_NUMBER
mkdir -p $LOG_DIR

# Get list of changed markdown files
gh pr diff <PR-number> --name-only | grep '\.md$' > $LOG_DIR/changed-files.txt

# Save the full diff for context
gh pr diff <PR-number> > $LOG_DIR/pr.diff 2>&1

If no .md files are changed, report "No documentation changes found" and stop.

Phase 2: Analyze Each File

For each changed markdown file, read the full file and check against these categories. Use subagents for large PRs (>5 files changed).

2.1 Structure

For a product page under docs/<section>/:

  • Frontmatter has title, description and sidebar_position
  • No # heading in the body (the frontmatter title provides it)
  • No manual Table of Contents and no --- rules between sections (Docusaurus builds the TOC)
  • One-paragraph overview at the top, and it states what the reader gets
  • The page is in the section that matches its reader
  • Heading hierarchy is correct (no skipped levels like ## to ####)

For an internal document under docs/_internal/:

  • Frontmatter has draft: true
  • Single # title at the top, then a one-paragraph overview
  • Table of Contents with working anchor links (required if >50 lines)

2.2 Accuracy

  • Shell commands are syntactically valid and runnable
  • YAML/JSON snippets are valid (check indentation, quoting)
  • Version numbers match current releases (check gh release list output)
  • File paths referenced actually exist in the repo (ls or find to verify)
  • Environment variables and config keys match actual code
  • Kubernetes resource names, namespaces, and labels are consistent with the codebase
  • Each claim agrees with the page it links to — open the cited page and compare the wording
  • No behavior from an unmerged issue is documented as released (or it carries a VERIFY comment)
  • A Beta or Alpha feature carries a :::warning callout, and the default is stated
  • Token counts and costs are scoped to a model call, and the cost is described as an estimate

2.3 Links

  • Internal cross-references ([text](../path.md)) point to existing files
  • Anchor links ([text](#heading)) resolve to actual headings in the target file
  • External URLs are reachable (defer to lychee CI for exhaustive checking)
  • No bare URLs — all links use [descriptive text](url) format

2.4 Conciseness

  • No unnecessary prose — prefer bullets and tables over paragraphs
  • No redundant sections that repeat information available elsewhere
  • Code blocks include only the relevant fields, not entire manifests
  • Steps are numbered when order matters, bulleted when it does not
  • List items are 1-2 lines max

2.5 Consistency

  • Terminology is consistent (e.g., "GA release" not mixed with "stable release" without definition)
  • Component names match official naming (e.g., "AuthBridge" not "auth bridge" or "Auth-Bridge")
  • Code block language tags are present and correct (bash, yaml, text)
  • Callout style matches project convention: :::note, :::warning, :::info, :::tip (a blockquote is not a callout)
  • ASD-STE100 prose: present tense, active voice, "you" not "we", no contraction, no "simply"
  • No serial comma — the pages write "A, B and C"

Phase 3: Report Findings

Produce a structured summary grouped by severity:

## Documentation Review: PR #<number>

### Files reviewed
- `docs/getting-started/install.md` (modified)
- `docs/releasing.md` (new)

### Issues found

#### Must fix
- **docs/getting-started/install.md:42** — Broken anchor link `#choosing-a-version` (heading was renamed)
- **docs/releasing.md:15** — YAML snippet has incorrect indentation

#### Suggestions
- **docs/releasing.md:78** — This paragraph could be condensed to a bullet list
- **docs/getting-started/install.md:130** — Consider adding `git checkout` step to the OpenShift clone block

#### Looks good
- Structure follows the `meta:write-docs` template
- All shell commands are syntactically valid
- Version numbers match current releases

Severity definitions

SeverityMeaningAction
Must fixBroken links, invalid commands, incorrect informationBlock merge
SuggestionStyle improvements, conciseness, missing contextOptional
Looks goodPositive observations worth notingInformational

Phase 4: Post Review

Present the review to the user. If the user approves, post as a GitHub PR review:

# Post as a review comment (not inline, to avoid noise on large PRs)
gh pr review <PR-number> --comment --body "$(cat $LOG_DIR/review-summary.md)"

For critical issues, use --request-changes instead of --comment.

Review Checklist

Quick reference for the complete review criteria:

  • Title + overview paragraph present
  • TOC with working anchors (if >50 lines)
  • Section separators (---) between major sections
  • Code blocks have language tags
  • Commands are runnable
  • YAML/JSON is valid
  • Version numbers are current
  • Internal links resolve
  • No bare URLs
  • Concise — no walls of text
  • Consistent terminology
  • Follows the contributor guide and meta:write-docs conventions

Related Skills

  • meta:write-docs — Documentation writing standards and templates
  • github-pr-review — General PR review workflow (code + docs). Not bundled in this repo; import via /plugin install github-pr-review@rossoctl-agent-skills.
  • repo:pr — PR creation conventions

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

auth

Free

Authentication and authorization patterns for Rossoctl services

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

Create confidential OAuth2 clients in Keycloak for server-to-service authentication

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

Configure OpenTelemetry Collector with OAuth2 authentication for trace export

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

ci

Free

CI pipeline monitoring, status checks, and PR validation workflows

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

Monitor running CI jobs, wait for completion, create tasks for results

The English summary is being prepared. Showing the original description.

rossoctl/rossoctl303Updated Oct 25, 2026

See all skills by rossoctl

Report a problem with this skill