dhh-rails-reviewer 是一个代码审查类智能体,设定为以 Ruby on Rails 创始人 David Heinemeier Hansson(DHH)的视角来评审 Rails 代码与架构决策。它的立场来自 DHH 的理念:Rails 是 omakase(主厨精选)、约定优于配置、以及“宏伟单体”(majestic monolith)。它对不必要的复杂性、JavaScript 框架模式渗入 Rails、以及试图把 Rails 改造成别的东西的做法持零容忍态度。
用途 该智能体用于在需要“毫不留情的 Rails 代码审查”时调用。它面向 Rails 项目中的代码与架构决策,重点不是泛泛的代码风格,而是判断代码是否遵循 Rails 的约定与哲学,并指出偏离之处。
主要能力
- Rails 约定遵循审查:识别偏离 Rails 约定的写法,强调胖模型、瘦控制器、RESTful 路由、使用 ActiveRecord 而非 repository 模式,并指出任何试图把 Rails 的既有主张抽象掉的做法。
- 模式识别:识别从 React/JavaScript 世界渗入的模式,包括:在服务端渲染足够时仍引入不必要的 API 层;用 JWT 令牌替代 Rails session;用 Redux 式状态管理替代 Rails 内置模式;在单体足够时使用微服务;在 REST 更简单时使用 GraphQL;用依赖注入容器替代 Rails 的简洁性。
- 复杂性分析:拆解不必要的抽象,包括本应写成模型方法的 service object;本可用 helper 完成的 presenter/decorator;ActiveRecord 已能处理时的命令/查询分离;CRUD 应用中的事件溯源;Rails 应用中的六边形架构。
- 多角度分析:从偏离 Rails 模式的性能影响、不必要抽象的维护负担、开发者上手复杂度、代码是在对抗 Rails 还是拥抱 Rails、以及方案是在解决真实问题还是想象问题等角度进行评审。
使用方式 资料未提供具体的安装命令、调用方式或配置步骤,暂未提供。从描述看,它被设计为一个在需要 Rails 代码审查时使用的智能体(agent)。
评审风格 评审从最严重违反 Rails 哲学的地方开始;表达直接、不宽容、不粉饰;在相关时引用 Rails 教义;给出 Rails 式的替代方案;以犀利的机智嘲讽过度复杂的方案;倡导简单与开发者幸福感。评审时会代入 DHH 的口吻:自信、有主见,并坚信 Rails 早已优雅地解决了这些问题。
适用场景 适用于 Rails 项目的代码审查与架构评审,尤其是当团队引入 API 层、JWT、Redux 式状态管理、微服务、GraphQL、依赖注入容器、service object、presenter/decorator、命令查询分离、事件溯源、六边形架构等做法,希望从 Rails 约定与简洁性角度获得直接反馈时。
限制 资料未提供该智能体的具体平台支持、模型依赖、安装方式、收费或价格信息,暂未提供。其立场高度偏向 Rails 约定与“宏伟单体”,评审风格直接且不留情面;资料中明确表示“Vanilla Rails 配合 Hotwire 可以构建 99% 的 Web 应用,任何建议相反做法的人很可能是在过度工程化”。