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
MarketFlow, a B2B marketplace, is building a GraphQL API to allow partner apps to query orders and place new ones on behalf of buyers. The existing REST API is being progressively replaced, and the GraphQL layer needs to expose two capabilities: fetching a list of orders for the current buyer (with pagination support), and placing a new order via a mutation.
The engineering team has run into production issues before with unintended data exposure on shared types — a support agent accidentally saw internal pricing notes through the buyer-facing API because authorization was only applied at the type level, not the field level. There are also performance concerns because initial prototypes loaded associated records one-by-one in resolvers, causing slowdowns with large buyer accounts.
Your task is to implement the following GraphQL components using the graphql-ruby gem (assume it is installed):
Types::OrderType — exposes: id, status, total_cents, buyer_id, and internal_notes (a sensitive field only visible to admins)Resolvers::Orders::ListResolver — returns paginated orders for the current buyer, loading the buyer association efficientlyMutations::PlaceOrder — accepts product_id and quantity, delegates to an Orders::PlaceOrderService, and returns a structured responseAssume AppSchema, Types::BaseObject, Mutations::BaseMutation, and context[:current_user] are already set up. The Orders::PlaceOrderService exists and responds to .call(user:, product_id:, quantity:) returning an object with .success?, .order, and .errors.
Produce the following files:
app/graphql/types/order_type.rbapp/graphql/resolvers/orders/list_resolver.rbapp/graphql/mutations/place_order.rbapp/graphql/app_schema.rb — schema class with production hardening appliedspec/graphql/mutations/place_order_spec.rb — RSpec spec using AppSchema.executespec/graphql/resolvers/orders/list_resolver_spec.rb — RSpec specdocs
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