Curated library of 28 public AI agent skills for Ruby on Rails development. Organized by category: testing, code-quality, engines, infrastructure, api, and context. Covers code review, architecture, security, testing (RSpec), engines, Hotwire, and TDD automation. Shared Ruby skills (YARD docs, DDD, service objects) have moved to ruby-core-skills. Repository agents remain documented in GitHub but are intentionally excluded from the Tessl tile.
93
95%
Does it follow best practices?
Impact
93%
1.78xAverage score across 28 eval scenarios
Passed
No known issues
DO NOT propose code, specs, PRDs, or task lists until the Context Summary is posted.
DO NOT silently resolve ambiguity — if requirements conflict or specs and code disagree, post a Confusion Block first.
DO NOT load the entire repo — use targeted reads (schema, routes, one neighbor of each kind).
ALWAYS cite the files you read (path:line where possible) so the user can verify.
ALWAYS re-check context when the user's request changes scope mid-conversation.Load minimum context before any code, spec, or PRD in an existing Rails codebase. A fifteen-second read of db/schema.rb, config/routes.rb, and one neighbor saves a full retry.
If rails-ai-bridge is running in the project, the runtime automatically provides unified context.
Use the get_project_context tool to retrieve:
When this data is successfully retrieved via get_project_context, you may skip the manual discovery steps 2 and 3 below and proceed directly to analyzing the context, finding neighbor patterns, and posting the Context Summary.
db/schema.rb — tables and columns involved (grep by table name)config/routes.rb — routes that border the changeGemfile.lock — confirm Rails version + domain gems (sidekiq, pundit, rspec, rails-i18n, graphql, etc.)grep -r "class.*Controller" app/controllers, grep -r "class.*Service" app/services, etc.
Include the grep command used for each neighbor search in the final Context Summary notes.### Confusion Block
- Conflict: <what conflicts — e.g., spec asserts X but code does Y>
- Options: <list the options with their tradeoffs>
- Recommendation: <state which option and why, or ask user to choose>Do not pick silently.
7. Hand off: With context loaded, proceed to the next skill (plan-tests, apply-stack-conventions, etc.). The Context Summary travels with the task.
Post this block before proposing any code, spec, or PRD:
### Context Summary
**Rails layer:** <controller | model | service | job | engine | view/Turbo | migration | API | GraphQL>
**Files read:**
- <path>:<line-range> — <one-line finding>
- <path>:<line-range> — <one-line finding>
- (repeat for each file)
**Neighbor patterns found:**
- <layer>: <file path> — <key convention or pattern observed>
- (repeat per layer)
**Gemfile notes:** Rails <version>; relevant gems: <list>
**Drift detected:** <none | description of spec-vs-code mismatch>
**Ambiguities:** <none | list any unresolved conflicts — triggers a Confusion Block>
**Next step:** <plan-tests | apply-stack-conventions | write migration | etc.>| Pitfall | What to do |
|---|---|
| Grep returns hundreds of matches | Narrow by subdirectory or add a more specific class-name prefix; never read more than one representative neighbor per layer |
db/schema.rb is absent | Check for db/structure.sql (used when config.active_record.schema_format = :sql); parse the relevant CREATE TABLE block instead |
| Multiple engines present | Scope all reads to the engine directory that owns the change; note the engine boundary explicitly in the Context Summary |
| No specs exist for the area | Document "no spec coverage" in the Context Summary; treat the code as the sole source of truth and flag the gap |
| Neighbor file is the file being changed | Skip self-reference; pick the next closest sibling that is not the target file |
| Requirements change mid-conversation | Re-run steps 1–4 for the new scope and post a fresh Context Summary before continuing |
agents
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
skills
api
generate-api-collection
implement-graphql
code-quality
apply-code-conventions
apply-stack-conventions
assets
snippets
code-review
refactor-code
review-architecture
security-check
context
load-context
setup-environment
engines
create-engine
create-engine-installer
document-engine
extract-engine
release-engine
review-engine
test-engine
upgrade-engine
infrastructure
implement-background-job
implement-hotwire
optimize-performance
review-migration
seed-database
version-api
testing
plan-tests
test-service
write-tests