Curated library of 16 public Ruby AI agent skills: 10 atomic skills (YARD docs, service objects, calculator pattern, API clients, DDD, bug triage, code review, skill routing), 5 process-discipline skills (TDD, refactoring, review, security, test planning), and 1 planning skill (TDD task generation). Zero agents — this is a foundational library consumed by framework-specific tiles like rails-agent-skills and hanakai-yaku.
95
96%
Does it follow best practices?
Impact
95%
1.05xAverage score across 16 eval scenarios
Passed
No known issues
For each component, show the focused command and checkpoint before moving on:
- Component: Factory
- First command: `bundle exec rspec spec/services/pricing_calculator/factory_spec.rb`
- Expected RED: missing dispatch/fallback behavior or uninitialized component constant
- GREEN rerun: `bundle exec rspec spec/services/pricing_calculator/factory_spec.rb` passesRSpec.describe PricingCalculator::Factory do
describe '.for' do
let(:order) { create(:order) }
context 'when plan is nil' do
before { order.update!(plan: nil) }
it { expect(described_class.for(order)).to be_a(PricingCalculator::NullService) }
end
context 'when plan is inactive' do
before { order.plan.update!(active: false) }
it { expect(described_class.for(order)).to be_a(PricingCalculator::NullService) }
end
context 'when plan is standard' do
before { order.plan.update!(name: 'standard', active: true) }
it { expect(described_class.for(order)).to be_a(PricingCalculator::StandardPricingService) }
end
context 'when plan name is unknown' do
before { order.plan.update!(name: 'enterprise', active: true) }
it { expect(described_class.for(order)).to be_a(PricingCalculator::NullService) }
end
end
endRSpec.describe PricingCalculator::NullService do
let(:order) { create(:order) }
it 'always returns nil' do
expect(described_class.new(order).calculate).to be_nil
end
context 'when the order is nil' do
let(:order) { nil }
it 'still returns nil' do
expect(described_class.new(order).calculate).to be_nil
end
end
endRSpec.describe PricingCalculator::StandardPricingService do
let(:order) { create(:order, :with_standard_plan, base_price: 100) }
describe '#calculate' do
it 'returns the discounted price for standard plans' do
expect(described_class.new(order).calculate).to eq(90)
end
context 'when plan is inactive' do
before { order.plan.update!(active: false) }
it { expect(described_class.new(order).calculate).to be_nil }
end
context 'when plan is nil' do
before { order.update!(plan: nil) }
it { expect(described_class.new(order).calculate).to be_nil }
end
end
enddocs
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
skills
code-quality
respond-to-review
ddd
define-domain-language
model-domain
review-domain-boundaries
docs
write-yard-docs
orchestration
skill-router
patterns
create-service-object
implement-calculator-pattern
planning
generate-tdd-tasks
process
testing
triage-bug