From gierd
Use when the user explicitly requests a comprehensive Rails review across every relevant layer (e.g. "/rails", "do a full Rails review", "check all Rails layers"). For GitHub PR reviews tied to a posted review, prefer `code-review-orchestration`.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gierd:rails-expertThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Comprehensive review through every relevant Rails layer. Each layer gets its own dedicated reviewer; this skill never restates the layer rules themselves.
references/action-cable.mdreferences/action-text.mdreferences/active-storage.mdreferences/active-support.mdreferences/autoloading.mdreferences/composite-keys.mdreferences/controllers.mdreferences/deployment.mdreferences/error-handling.mdreferences/helpers.mdreferences/hotwire-frontend.mdreferences/jobs.mdreferences/localization.mdreferences/mailbox.mdreferences/mailers.mdreferences/migrations.mdreferences/models.mdreferences/performance-and-caching.mdreferences/routes.mdreferences/security.mdComprehensive review through every relevant Rails layer. Each layer gets its own dedicated reviewer; this skill never restates the layer rules themselves.
Map changed files to references; dispatch one reviewer per matched reference in parallel. See dispatching-parallel-agents for the dispatch primitive.
| File pattern | Reference |
|---|---|
app/models/** | references/models.md |
app/controllers/** | references/controllers.md |
app/views/** | references/views.md |
app/helpers/** | references/helpers.md |
config/routes.rb | references/routes.md |
db/migrate/** | references/migrations.md |
app/jobs/** | references/jobs.md |
app/mailers/** | references/mailers.md |
app/mailboxes/** | references/mailbox.md |
app/channels/** | references/action-cable.md |
app/javascript/**, Turbo/Stimulus in views, tailwind.config.* | references/hotwire-frontend.md |
test/** | references/testing.md |
| auth / CSRF / headers / session config | references/security.md |
| error handling, monitoring, logging | references/error-handling.md |
| query / perf / cache changes | references/performance-and-caching.md |
Zeitwerk / autoload_paths | references/autoloading.md |
config/deploy.yml, Dockerfile, prod env | references/deployment.md |
| I18n / locale changes | references/localization.md |
rich text content, has_rich_text | references/action-text.md |
| file attachments, variants, direct uploads | references/active-storage.md |
| composite primary keys | references/composite-keys.md |
If no specific layer matches but the change is broadly Rails-flavored, fall back to references/the-rails-way.md for general convention review.
Each subagent receives:
Each subagent returns either:
file:line citations tied to specific rules from the loaded referenceGroup findings by file, then by layer reviewer. Surface severity if the reviewer provides one; otherwise list as observations.
| Topic | Reference | Load When |
|---|---|---|
| The Rails Way | references/the-rails-way.md | conventions, code organization, philosophy |
| Models | references/models.md | Active Record models, associations, validations, scopes, callbacks |
| Controllers | references/controllers.md | RESTful actions, strong params, before_actions, respond_to |
| Routes | references/routes.md | resourceful routes, constraints, namespacing |
| Views | references/views.md | ERB templates, forms, layout, g_* helpers |
| Helpers | references/helpers.md | view helpers, app/helpers/ |
| Hotwire Frontend | references/hotwire-frontend.md | Turbo Frames/Streams/Morph, Stimulus, Tailwind |
| Jobs | references/jobs.md | Active Job, Solid Queue, retry/discard |
| Mailers | references/mailers.md | Action Mailer, mail views, deliveries |
| Mailbox | references/mailbox.md | Action Mailbox, inbound email routing |
| Action Cable | references/action-cable.md | WebSocket channels, subscriptions, broadcasts |
| Action Text | references/action-text.md | rich content, trix editor, has_rich_text |
| Active Storage | references/active-storage.md | file attachments, variants, direct uploads |
| Active Support | references/active-support.md | helpers, concerns, time zones, core extensions |
| Migrations | references/migrations.md | schema changes, indexes, reversibility |
| Composite Keys | references/composite-keys.md | composite primary keys |
| Autoloading | references/autoloading.md | Zeitwerk, constant resolution, file naming |
| Error Handling | references/error-handling.md | validation errors, exceptions, error pages, Honeybadger |
| Security | references/security.md | has_secure_password, authorization, CSRF, headers |
| Localization | references/localization.md | I18n, locale files, pluralization |
| Performance & Caching | references/performance-and-caching.md | N+1, query optimization, fragment cache, Solid Cache |
| Testing | references/testing.md | Minitest with fixtures, model/controller/system/integration tests |
| Deployment | references/deployment.md | Kamal, Dockerfile, production env, deploy.yml |
When invoked as a sweep across changed files, map each changed file to the relevant reference(s) above and dispatch one subagent per matched reference. Each subagent should: load this skill, read the matched reference file, and review the changed code in that file against the reference. Aggregate findings by layer.
code-review-orchestration performs the same per-layer dispatch but ties it to a GitHub PR (risk label, line comments, posting protocol). Use this skill when:
Do not load both for the same task — pick one entry point.
npx claudepluginhub gierd-inc/dev-skills --plugin gierdGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.