From rhdh
Assesses a git repository's readiness for AI coding agents using the agentready CLI, then walks through and addresses each gap.
How this skill is triggered — by the user, by Claude, or both
Slash command
/rhdh:agent-readyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
`uvx` is a hard dependency. Verify it is available before any other step:
uvx is a hard dependency. Verify it is available before any other step:
uvx --version
If missing, stop: "uvx is required. Install via pip install uv or see uv installation."
If no path was provided, present a structured choice:
If a path was provided, skip this and proceed to Step 2.
Path: Use the provided path, or . for the current directory. Validate it is a git repository:
git -C . rev-parse --is-inside-work-tree # replace . with path if provided
If not a git repository, stop and tell the user.
RHDH detection: Check the repo's git remote URL:
git -C <path> remote get-url origin 2>/dev/null
Attempt to read ~/.claude/skills/rhdh/references/rhdh-repos.md. If the file does not exist, skip RHDH detection and proceed with generic assessment — do not stop or warn the user. If found, check whether the remote URL matches any repo's upstream URL. If matched, note the repo name, tech stack, key paths, and conventions — these inform AGENTS.md generation and finding triage. Store as rhdh_context.
Config file: Only use a config file if the user explicitly provided one. Do not ask.
REPORT_DIR=$(mktemp -d) # on Windows: use %TEMP% or Python tempfile
uvx --from git+https://github.com/ambient-code/agentready agentready -- assess \
-o "$REPORT_DIR" \
<path>
Append -c <config-path> if the user provided a config file.
Note the value of $REPORT_DIR — shell variables do not persist across tool calls.
Parse $REPORT_DIR/assessment-latest.json. Extract:
overall_score, certification_levelfindings — each with attribute.id, attribute.tier, attribute.default_weight, attribute.name, status, score, evidence, remediationScore: <overall_score>/100 — <certification_level>
Failing: <N> findings (<N1> Tier 1, <N2> Tier 2, ...)
If no failing findings, congratulate the user and stop.
Otherwise ask:
"Fix applicable findings automatically, or review each one individually? auto (default) — apply self-contained fixes immediately; prompt only when input is needed review — prompt yes/skip/defer/quit for every finding"
Default to auto if the user says yes, presses Enter, or says "fix everything".
Work only through status == "fail" findings. Skip not_applicable and pass silently.
Sort order: ascending tier, then descending attribute.default_weight within each tier.
If rhdh_context is set, skip findings that clearly don't apply to the detected tech stack (e.g., lock file checks for a Bash-only repo, src/ layout for a GitOps YAML repo) — note them in the summary.
Apply each fix without prompting unless:
Skip without prompting: ADRs, design intent, architecture decisions — these require human rationale. Note them in the final summary.
For the agent_instructions finding, follow the inline AGENTS.md generation in the agent_instructions section below — this applies in both auto and review modes.
After processing, list what was applied, prompted, and skipped, then proceed to Step 6.
For each finding:
[Tier <N>] <attribute.name> — <score>/100
Evidence: <evidence items>
Remediation: <remediation.summary>
Apply this fix? [yes / skip / defer / quit]
yes — apply the fix, then move to the next finding. skip — move on; do not revisit. Use this if the finding doesn't apply to this repo. defer — note it; surface again after re-run. quit — stop immediately.
ADR and design intent findings: Do not use JSON remediation. Ask instead:
"Do you have any architectural decisions worth capturing? Describe the decision and rationale — I'll write the ADR. Skip to add manually later."
Write only if the user provides input. Never invent rationale.
agent_instructions finding (both modes)Generate AGENTS.md and CLAUDE.md inline — do not delegate to another skill.
Scan the repo for commands:
package.json → scripts entries (build, test, lint, typecheck, dev)Makefile / GNUmakefile → targetspyproject.toml → [tool.pytest], [tool.ruff], [tool.mypy], [project.scripts].github/workflows/*.yml → run: steps containing test/lint/build/typecheck keywordsIf rhdh_context is set: pull key paths, tech stack, conventions, and branching model directly from the matched rhdh-repos.md entry — use these to pre-fill AGENTS.md sections and skip generic questions where RHDH context already answers them.
If not RHDH (or RHDH context doesn't cover it): ask these three questions one at a time:
Write AGENTS.md:
# <repo-name>
## Build & Test Commands
- Build: `<command>`
- Test all: `<command>`
- Test single file: `<command>`
- Lint: `<command>`
- Type check: `<command>`
## Key Conventions
<from scan + questions/rhdh_context>
## Architecture
<from questions/rhdh_context — omit if nothing to say>
## PR Conventions
- Agent-assisted commits should include an `Assisted-by: <model>` footer
<from questions>
Write CLAUDE.md with exactly: @AGENTS.md
Omit any section — including its header — where there is nothing to say. Do not invent content.
Use remediation.steps, remediation.commands, and remediation.examples from the JSON. Do not invent steps beyond what the JSON provides.
REPORT_DIR=$(mktemp -d) # on Windows: use %TEMP% or Python tempfile
uvx --from git+https://github.com/ambient-code/agentready agentready -- assess \
-o "$REPORT_DIR" \
<path>
Show before/after:
Before: <old_score>/100 (<old_certification_level>)
After: <new_score>/100 (<new_certification_level>)
Remaining failures: <N> findings
If remaining failures (including deferred), ask: "Would you like to continue addressing the remaining findings?" If yes, repeat Step 5.
When the user selects batch assessment:
~/git)"find <dir> -maxdepth 2 -name ".git" -type d | sed 's|/.git||'
rhdh-repos.md. Assess only matching repos.Repo Score Level Failing
rhdh 72/100 Bronze 4
rhdh-operator 45/100 Needs Improvement 11
rhdh-plugins 88/100 Silver 1
uvx run fetches and builds agentready from GitHub — this can take 30–60 seconds. Subsequent runs use the cache. If the fetch fails, stop — do not proceed without a valid report.not_applicable findings reflect the detected language stack; do not mention them unless the user asks.rhdh-repos.md — do not assess unrelated repos in the same directory.rhdh-repos.md is expected at ~/.claude/skills/rhdh/references/rhdh-repos.md — the default install path when using npx skills add redhat-developer/rhdh-skill. If the rhdh skill was installed to a different prefix, RHDH detection will silently degrade to generic mode. This is by design — no error, no warning.npx claudepluginhub redhat-developer/rhdh-skill --plugin rhdhEvaluates a codebase across five pillars (Agent Instructions, Feedback Loops, Workflows & Automation, Policy & Governance, Build & Dev Environment) covering 74 features to assess how agent-ready a repository is.
Assesses codebase for AI agent readiness by detecting stacks, monorepos, git setup, and evaluating style, testing, code quality, secrets, and file sizes.
Audits a repo for AI-readiness, scoring ~20 dimensions across Foundation, Why, What, Hygiene, and Sync. Use when inheriting a legacy repo or asking "is this repo agent-ready?"