From ruby-programming
Use when reviewing Ruby code, PRs, or local changes. Adds design shape analysis, connascence evaluation, and the Ruby quality checklist. Run alongside /code-review for full coverage.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ruby-programming:code-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Design-focused code review for Ruby. Checks design shapes, threshold gates, connascence, and runs the quality checklist. Complements the built-in `/code-review` (structural scan) — run both for full coverage.
Design-focused code review for Ruby. Checks design shapes, threshold gates, connascence, and runs the quality checklist. Complements the built-in /code-review (structural scan) — run both for full coverage.
Determine the review target from the user's request:
gh pr diff <number> to get the diffgit diff (staged + unstaged)Read these references once:
${SKILL_DIR}/../ruby-programming/references/design-shapes.md${SKILL_DIR}/../ruby-programming/references/design-vocabulary.mdThen review the diff with design eyes:
Make it readable for the team. Code reviews are read by the PR author AND future readers. Most engineers haven't seen connascence or design shapes before:
<details> block when posting to GitHub so it doesn't overwhelm the practical feedbackAfter completing the design pass, dispatch the Ruby verifier for mechanical quality checks:
Ruby verifier — Dispatch a general-purpose background agent with this prompt:
You are a Ruby code quality verifier. Read every file listed below, then audit
against the quality checklist that follows.
## Files to Review
[LIST THE CHANGED FILES]
## Quality Checklist
[PASTE THE FULL CONTENTS OF ${SKILL_DIR}/../ruby-programming/references/quality-checklist.md]
## Rules
- Be strict. When in doubt, FAIL.
- Don't infer intent. Flag poor names even if you can guess what they meant.
- Don't skip items. Every checklist item gets a verdict.
- Don't suggest fixes. Just identify problems.
- If a checklist item doesn't apply, mark PASS with "(n/a)".
## Output Format
### FAIL (N items)
- [ ] **[item]** — [one-line reason] (`file.rb:line`)
### PASS (N items)
- [x] **[item]**
Read the quality checklist file once at the start and reuse for each dispatch.
Combine findings from ALL three layers. Organize by severity:
Remind the user: "For the structural scan (bugs, CLAUDE.md compliance, git history), also run /code-review."
When writing for a GitHub PR, wrap the design analysis in a collapsible block:
<details>
<summary>Design analysis (shapes, connascence, threshold gates)</summary>
[Full design analysis here]
</details>
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub jtgrenz/ruby-programming --plugin ruby-programming