rails-principles-and-boundaries
Installation
SKILL.md
Rails Principles and Boundaries
Use this skill when writing or reviewing Rails application code where design principles and per-area rules matter more than stack-specific UI choices (see rails-stack-conventions for Hotwire + Tailwind).
Style source of truth: Style and formatting follow whatever linter(s) the project configures (see Linter — initial analysis below). This skill adds non-style behavior and architecture guidance only.
Linter — initial analysis
Before recommending style fixes or contradicting formatting rules:
- Detect which linter(s) the repo uses — e.g. RuboCop (
.rubocop.yml,rubocopinGemfile), Standard Ruby (standardrb,standardgem), frontend linters (eslint.config.*,.eslintrc*,biome.json, etc.), or scripts inpackage.json/bin/(lint,rubocop,standardrb). - Run the command the project documents or that matches the config (e.g.
bundle exec rubocop,bundle exec standardrb,npm run lint). Do not assume RuboCop if the project uses Standard or another stack.
Quick Reference
| Topic | Rule |
|---|---|
| Style/format | Project linter(s) — detect and run as above; do not invent style rules here |
| Principles | DRY, YAGNI, PORO where it helps, CoC, KISS |
Related skills