Curated library of 39 AI agent skills for Ruby on Rails development. Organized by category: planning, testing, code-quality, ddd, engines, infrastructure, api, patterns, context, orchestration, and workflows. Includes 5 callable workflow skills (rails-tdd-loop, rails-review-flow, rails-setup-flow, rails-quality-flow, rails-engines-flow) for complete development cycles. Covers code review, architecture, security, testing (RSpec), engines, service objects, DDD patterns, and TDD automation.
95
98%
Does it follow best practices?
Impact
95%
1.20xAverage score across 35 eval scenarios
Passed
No known issues
Parcel Pro is a fulfillment platform that integrates with multiple carrier tiers. Each shipment belongs to a carrier contract with a named tier: standard, express, or overnight. The billing team has asked for a shipping cost calculator service that takes a shipment record and returns the calculated cost as a decimal — or nothing at all if the shipment's carrier contract is inactive, unknown, or nil.
The existing codebase handles pricing with inline conditionals scattered across two controllers and a background job, which makes the logic difficult to test and impossible to extend when a new carrier tier is negotiated. The engineering lead wants a clean module-based implementation where each tier has its own class, the selection logic is centralized, and an unknown or inactive tier silently produces no cost rather than raising an error. Future tiers should require no changes to the selection mechanism itself.
Each tier has different pricing logic:
A shipment with a nil carrier contract, an inactive contract, or an unrecognized tier name must produce a nil result without raising.
Produce the following files:
app/services/shipping_calculator/ — the full module with factory, base, null, and concrete service filesspec/services/shipping_calculator/ — RSpec specs covering factory dispatch for each tier, the null/unknown path, and at least one cost calculation assertion per tierThe shipment model has these relevant attributes: weight_grams (integer), carrier_contract (object with active? boolean and tier string).
docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
scenario-26
scenario-27
scenario-28
scenario-29
scenario-30
scenario-31
scenario-32
scenario-33
scenario-34
scenario-35
mcp_server
skills
api
api-rest-collection
rails-graphql-best-practices
code-quality
rails-architecture-review
rails-code-conventions
rails-code-review
rails-review-response
rails-security-review
rails-stack-conventions
assets
snippets
refactor-safely
context
rails-context-engineering
rails-project-onboarding
ddd
ddd-boundaries-review
ddd-rails-modeling
ddd-ubiquitous-language
engines
rails-engine-compatibility
rails-engine-docs
rails-engine-extraction
rails-engine-installers
rails-engine-release
rails-engine-reviewer
rails-engine-testing
infrastructure
rails-api-versioning
rails-background-jobs
rails-database-seeding
rails-frontend-hotwire
rails-migration-safety
rails-performance-optimization
orchestration
rails-skills-orchestrator
patterns
ruby-service-objects
strategy-factory-null-calculator
yard-documentation
planning
create-prd
generate-tasks
ticket-planning
testing
rails-bug-triage
rails-tdd-slices
rspec-best-practices
rspec-service-testing