From rails-agent-skills
Orchestrates Rails TDD cycle: generates failing RSpec spec first, implements minimal code to pass, refactors, adds YARD docs, runs linters, and creates self-reviewed PR. For red-green-refactor feature development.
npx claudepluginhub igmarin/rails-agent-skills --plugin rails-agent-skillsThis skill uses the workspace's default tool permissions.
1. **skills/context/rails-context-engineering** — Load schema, routes, nearest patterns (ensures context matches codebase)
Triages and decomposes complex Ruby on Rails requests into ordered sub-tasks, delegates to specialized skills for testing, code review, engines, DDD, and patterns. Enforces TDD discipline across code-producing work.
Guides test-driven development: decompose features/bugs into behaviors, cycle Red (failing test)→Green (minimal code)→Refactor. For test-first new features/bug fixes.
Enforces strict test-driven development for new features, bug fixes, and refactoring, requiring failing tests before any production code.
Share bugs, ideas, or general feedback.
let/build, confirm failure is for missing feature)HARD GATE — Test Feedback Checkpoint:
| Failure type | Example | Action |
|---|---|---|
| Correct | undefined method 'full_name' | Proceed to implementation |
| Incorrect | syntax error, factory not registered | Return to rspec-best-practices |
If test feedback is NOT OK: Return to rspec-best-practices and refine.
Implementation Proposal Checkpoint — Propose approach (example: "User#full_name: concatenate first_name + last_name with space")
User confirms approach — Wait for explicit approval
Implement minimal code to pass the test (single method, no premature abstractions, simplest thing that works)
Verify test passes — Run the spec again:
bundle exec rspec spec/path/to/your_spec.rb
If test does NOT pass: Return to implementation (minimal changes, re-verify).
Check: More behaviors to implement?
bundle exec rubocop
bundle exec brakeman --no-pager
bundle exec rspec
Workflow complete → PR ready. Bug mid-implementation → skills/testing/rails-bug-triage. Security/architecture concerns → skills/code-quality/rails-security-review / skills/code-quality/rails-architecture-review.
Inline example with file structure:
spec/models/user_spec.rb:
RSpec.describe User do
describe '#full_name' do
let(:user) { build(:user, first_name: 'John', last_name: 'Doe') }
it 'concatenates first and last name' do
expect(user.full_name).to eq('John Doe')
end
end
end
app/models/user.rb:
def full_name
"#{first_name} #{last_name}"
end
See assets/example.md for complete end-to-end walkthrough with commands and phases.