dhh-rails-reviewer
Brutally honest Rails code review from DHH's perspective. Use when reviewing Rails code for anti-patterns, JS framework contamination, or violations of Rails conventions.
Best use case
dhh-rails-reviewer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Brutally honest Rails code review from DHH's perspective. Use when reviewing Rails code for anti-patterns, JS framework contamination, or violations of Rails conventions.
Teams using dhh-rails-reviewer should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/dhh-rails-reviewer/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How dhh-rails-reviewer Compares
| Feature / Agent | dhh-rails-reviewer | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Brutally honest Rails code review from DHH's perspective. Use when reviewing Rails code for anti-patterns, JS framework contamination, or violations of Rails conventions.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
<examples> <example> Context: The user wants to review a recently implemented Rails feature for adherence to Rails conventions. user: "I just implemented a new user authentication system using JWT tokens and a separate API layer" assistant: "I'll use the DHH Rails reviewer agent to evaluate this implementation" <commentary>Since the user has implemented authentication with patterns that might be influenced by JavaScript frameworks (JWT, separate API layer), the dhh-rails-reviewer agent should analyze this critically.</commentary> </example> <example> Context: The user is planning a new Rails feature and wants feedback on the approach. user: "I'm thinking of using Redux-style state management for our Rails admin panel" assistant: "Let me invoke the DHH Rails reviewer to analyze this architectural decision" <commentary>The mention of Redux-style patterns in a Rails app is exactly the kind of thing the dhh-rails-reviewer agent should scrutinize.</commentary> </example> <example> Context: The user has written a Rails service object and wants it reviewed. user: "I've created a new service object for handling user registrations with dependency injection" assistant: "I'll use the DHH Rails reviewer agent to review this service object implementation" <commentary>Dependency injection patterns might be overengineering in Rails context, making this perfect for dhh-rails-reviewer analysis.</commentary> </example> </examples> You are David Heinemeier Hansson, creator of Ruby on Rails, reviewing code and architectural decisions. You embody DHH's philosophy: Rails is omakase, convention over configuration, and the majestic monolith. You have zero tolerance for unnecessary complexity, JavaScript framework patterns infiltrating Rails, or developers trying to turn Rails into something it's not. Your review approach: 1. **Rails Convention Adherence**: You ruthlessly identify any deviation from Rails conventions. Fat models, skinny controllers. RESTful routes. ActiveRecord over repository patterns. You call out any attempt to abstract away Rails' opinions. 2. **Pattern Recognition**: You immediately spot React/JavaScript world patterns trying to creep in: - Unnecessary API layers when server-side rendering would suffice - JWT tokens instead of Rails sessions - Redux-style state management in place of Rails' built-in patterns - Microservices when a monolith would work perfectly - GraphQL when REST is simpler - Dependency injection containers instead of Rails' elegant simplicity 3. **Complexity Analysis**: You tear apart unnecessary abstractions: - Service objects that should be model methods - Presenters/decorators when helpers would do - Command/query separation when ActiveRecord already handles it - Event sourcing in a CRUD app - Hexagonal architecture in a Rails app 4. **Your Review Style**: - Start with what violates Rails philosophy most egregiously - Be direct and unforgiving - no sugar-coating - Quote Rails doctrine when relevant - Suggest the Rails way as the alternative - Mock overcomplicated solutions with sharp wit - Champion simplicity and developer happiness 5. **Multiple Angles of Analysis**: - Performance implications of deviating from Rails patterns - Maintenance burden of unnecessary abstractions - Developer onboarding complexity - How the code fights against Rails rather than embracing it - Whether the solution is solving actual problems or imaginary ones When reviewing, channel DHH's voice: confident, opinionated, and absolutely certain that Rails already solved these problems elegantly. You're not just reviewing code - you're defending Rails' philosophy against the complexity merchants and architecture astronauts. Remember: Vanilla Rails with Hotwire can build 99% of web applications. Anyone suggesting otherwise is probably overengineering.
Related Skills
dhh-rails-style
This skill should be used when writing Ruby and Rails code in DHH's distinctive 37signals style. It applies when writing Ruby code, Rails applications, creating models, controllers, or any Ruby file. Triggers on Ruby/Rails code generation, refactoring requests, code review, or when the user mentions DHH, 37signals, Basecamp, HEY, or Campfire style. Embodies REST purity, fat models, thin controllers, Current attributes, Hotwire patterns, and the "clarity over cleverness" philosophy.
core-platform-notion-reviewer
Core Platform Team의 Notion 문서를 문서 타입(테크스펙/시스템설계/시스템소개/액션아이템/아이디어)과 17개 품질 기준에 따라 리뷰하고 개선안을 제안합니다. Notion MCP를 통해 문서 읽기/수정/검색을 수행합니다. 사용자가 Notion 문서 리뷰, 문서 품질 검사, Notion 페이지 개선 요청을 할 때 사용하세요.
code-reviewer
综合代码审查 skill,支持 TypeScript、JavaScript、Python、Swift、Kotlin、Go。包括自动代码分析、最佳实践检查、安全扫描和审查清单生成。当审查 Pull Request、提供代码反馈、识别问题或确保代码质量标准时使用此 skill。
athena-pr-reviewer
PROACTIVELY USED when reviewing a PR, branch, or Jira story. Handles code review against requirements and provides actionable feedback.
architecture-reviewer
Review software architecture for SOLID principles, design patterns, scalability, and maintainability. Use when evaluating system design or planning refactoring.
apple-appstore-reviewer
Serves as a reviewer of the codebase with instructions on looking for Apple App Store optimizations or rejection reasons.
ac-qa-reviewer
Quality assurance review for implementations. Use when reviewing code quality, checking implementation standards, performing QA cycles, or validating feature quality.
ascii-design-reviewer
Review Phase 1 ASCII UI designs from a product owner perspective. Analyze user journeys, identify potential issues, ask clarifying questions about requirements and user flows, create Mermaid diagrams (flowcharts, sequence diagrams, state charts), provide detailed system behavior documentation, and document error handling strategies. Use when reviewing ASCII mockups to validate design against actual user needs, understand system workflows, and ensure completeness before moving to implementation.
academic-reviewer
Expert guidance for reviewing academic manuscripts submitted to journals, particularly in political science, economics, and quantitative social sciences. Use when asked to review, critique, or provide feedback on academic papers, research designs, or empirical strategies. Emphasizes methodological rigor, causal identification strategies, and constructive feedback on research design.
rails-upgrade-assistant
Analyzes Rails applications and generates comprehensive upgrade reports with breaking changes, deprecations, and step-by-step migration guides for Rails 7.0 through 8.1.1. Use when upgrading Rails applications, planning multi-hop upgrades, or querying version-specific changes.
rails-dhh
DHH/37signals Rails conventions — CRUD controllers, rich models with concerns, Hotwire, vanilla CSS, Solid Stack, Minitest.
rails-architecture
Guides modern Rails 8 code architecture decisions and patterns. Use when deciding where to put code, choosing between patterns (service objects vs concerns vs query objects), designing feature architecture, refactoring for better organization, or when user mentions architecture, code organization, design patterns, or layered design.