원클릭으로
review-commit
Quick quality review of staged changes for pre-commit validation. Checks Ruby best practices and flags critical issues.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Quick quality review of staged changes for pre-commit validation. Checks Ruby best practices and flags critical issues.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Prepare and publish a new gem release — bumps version across all required files, validates tests/linting/MCP server, commits, and creates the GitHub release. Use this skill when the user says "release", "publish a new version", "bump the version", "cut a release", "prepare for release", "ship it", or any variation of wanting to publish a new gem version. Also use when the user asks about the release process or what steps are needed to release.
Deep analysis of an external repository's architecture, patterns, and design decisions. Generates comprehensive influence document and updates improvements.md with prioritized recommendations.
Launch a local web dashboard for ClaudeMemory debugging and observability
Upgrade all Ruby gem dependencies to their latest versions with release note review and codebase alignment checks. Use this skill whenever the user asks to update, upgrade, or bump dependencies, gems, or packages — even casually like 'update my gems' or 'are my deps up to date?'
Incrementally implement feature improvements from docs/improvements.md with tests and atomic commits. Focuses on new functionality rather than refactoring.
Automatically install, configure, or upgrade ClaudeMemory
| name | review-commit |
| description | Quick quality review of staged changes for pre-commit validation. Checks Ruby best practices and flags critical issues. |
| agent | general-purpose |
| allowed-tools | Bash, Read, Grep, Glob |
Review the staged changes in this commit for code quality issues before committing.
Apply principles from these Ruby/software design experts:
Get staged files:
git diff --cached --name-only --diff-filter=ACM | grep '\.rb$'
For each staged Ruby file, check:
git diff --cached <file>+)Look for critical issues (❌ BLOCK):
Sandi Metz violations:
frozen_string_literal: true in new filesJeremy Evans (Sequel) violations:
Kent Beck violations:
Avdi Grimm violations:
raise or rescue without exception classGary Bernhardt violations:
Testing:
Look for medium issues (⚠️ WARNING):
Sandi Metz:
Jeremy Evans:
Kent Beck:
Avdi Grimm:
foo.bar.baz.qux)Gary Bernhardt:
General:
Provide a clear summary with expert attributions:
# Pre-Commit Quality Review
## Files Reviewed
- file1.rb (23 lines changed)
- file2.rb (8 lines changed)
## Status: ❌ BLOCK / ✅ PASS / ⚠️ WARNING
### Critical Issues ❌ (must fix before commit)
**Sandi Metz violations:**
- file1.rb:1 - Missing frozen_string_literal: true
- file2.rb:15-38 - Method too long (24 lines, max 15)
**Jeremy Evans violations:**
- file1.rb:42 - Raw SQL string instead of Sequel dataset method
- file1.rb:50 - Database write without transaction wrapper
**Avdi Grimm violations:**
- file2.rb:10 - Implicit nil return in public method
### Medium Issues ⚠️ (consider fixing)
**Sandi Metz:**
- file3.rb:20-32 - Method is 13 lines (consider extracting)
**Kent Beck:**
- file2.rb:5 - Variable name `x` is unclear (revealing intent)
**Avdi Grimm:**
- file3.rb:45 - Law of Demeter violation: user.account.settings.theme
### Recommendations
1. Add `frozen_string_literal: true` to file1.rb (Sandi Metz)
2. Convert raw SQL at file1.rb:42 to Sequel dataset (Jeremy Evans)
3. Wrap database write at file1.rb:50 in transaction (Jeremy Evans)
4. Extract file2.rb:15-38 into smaller methods (Sandi Metz)
5. Return explicit value instead of nil at file2.rb:10 (Avdi Grimm)
6. Rename `x` to describe what it contains (Kent Beck)
7. Extract file3.rb:20-32 for better readability (Sandi Metz)
8. Use tell-don't-ask at file3.rb:45 (Avdi Grimm)
## Suggested Actions
[If BLOCK] Run: git reset HEAD <files> && fix issues && git add <files>
[If WARNING] Consider fixing before commit or create a follow-up task
[If PASS] Commit looks good! 🚀
For each added/modified line in the diff, scan for:
Sandi Metz:
Jeremy Evans:
Kent Beck:
Avdi Grimm:
Gary Bernhardt:
The review is complete when: