← ClaudeAtlas

review-rolelisted

Review an existing Ansible role and produce a structured severity report grouped by CRITICAL, WARNING, and INFO. Triggered by /review-role. Checks directory structure completeness, task FQCN, tag coverage, no_log on secret tasks, defaults vs vars usage, meta/main.yml validity, and handler correctness. NEVER modifies files.
3A2DEV/ansible-designer · ★ 5 · Code & Development · score 63
Install: claude install-skill 3A2DEV/ansible-designer
# review-role Review an Ansible role and produce a structured severity report. This command never modifies files. --- ## Required Inputs 1. **role_name or FQCN** — The role to review (resolved from discovery if not provided) --- ## Behavior ### Step 1 — Discovery Run discovery per `references/discovery.md`. Locate the role: - By name in `roles_path` directories - By FQCN in `collections_path` directories ### Step 2 — Load Role Read all files in the role directory: tasks/, defaults/, vars/, handlers/, meta/, templates/. ### Step 3 — Generate Severity Report ``` ## Role Review: <role_name> Path: <role_path> Reviewed: <timestamp> Tasks found: <count> Handlers: <count> --- ### CRITICAL [Critical issues] ### WARNING [Warnings] ### INFO [Informational notes] --- Summary: <X> critical, <Y> warnings, <Z> info ``` --- ## Checks to Perform ### CRITICAL | Check | Condition | Message | |-------|-----------|---------| | Bare module names | Any task uses module without FQCN | `[tasks/main.yml:line <N>] Task "<name>" uses bare module name '<mod>' — must use FQCN` | | Missing no_log on secrets | Task has `password:`, `secret:`, `token:`, or references `vault_*` variables without `no_log: true` | `[tasks/main.yml:line <N>] Task "<name>" handles secrets without no_log: true` | | Deprecated include syntax | Use of bare `include:` | `[tasks/main.yml:line <N>] Deprecated 'include:' — use ansible.builtin.include_tasks or ansible.builtin.import_tasks` | | Missing tasks/main.yml