CtrlK
BlogDocsLog inGet started
Tessl Logo

igmarin/rails-agent-skills

Curated library of 41 public AI agent skills for Ruby on Rails development. Organized by category: planning, testing, code-quality, ddd, engines, infrastructure, api, patterns, context, and orchestration. Covers code review, architecture, security, testing (RSpec), engines, service objects, DDD patterns, and TDD automation. Repository workflows remain documented in GitHub but are intentionally excluded from the Tessl tile.

95

1.77x
Quality

93%

Does it follow best practices?

Impact

96%

1.77x

Average score across 41 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

Rails Agent Skills

Rails Agent Skills Logo

Rails Agent Skills turns AI coding assistants into disciplined Rails collaborators.

It is a curated library of 41 public Rails agent skills and 9 callable workflows that teach AI tools how to plan, test, implement, document, and review Rails work using production-minded conventions.

The project is built around one non-negotiable rule:

Write test -> run test -> verify it fails for the right reason -> implement -> verify it passes

That TDD gate is encoded directly into the skills and workflows, so agents do not just produce plausible Rails code. They follow a repeatable engineering process.

Supported agent environments

ChatGPT Claude Cursor GitHub Copilot Google Gemini Mistral AI OpenCode Qwen Windsurf

Official distribution

Official MCP Registry Docker Hub Cloudflare Worker skills.sh Glama GitHub tag tessl smithery badge License: MIT

Who This Is For

ReaderWhat you get
Rails developersAgent instructions for common Rails work: tests, services, APIs, GraphQL, migrations, jobs, Hotwire, engines, security, and review.
Team leadsA repeatable workflow that makes AI-assisted work easier to review because tests, docs, and self-review are part of the process.
Junior developersStep-by-step Rails workflow guidance that explains what to do next instead of dumping generic code.
Senior developersOpinionated guardrails for TDD, architecture, review, DDD, engines, performance, and production-safe changes.
Recruiters and evaluatorsA concrete example of AI tooling designed around engineering discipline, validation, and distribution.

What Is In The Repository

AreaPurpose
skills/41 public atomic skills. Each skill has a SKILL.md entry point with task-specific instructions.
workflows/9 callable workflows that chain skills into full development loops (tdd, quality, review, setup, engine, bug-fix, graphql, migration, background-job).
docs/Public documentation, architecture, workflow guides, skill catalog, and evaluation policy.
mcp_server/Official Ruby MCP server exposing docs, workflows, and use_skill.
tessl-evals/Tessl-native eval scenarios for publishable skills in tile.json.
personal-evals/Open examples for the upcoming ruby-skill-bench full-context evaluator.

The skills are not long-form tutorials. They are executable instructions for AI agents: when to gather context, when to stop for a checkpoint, how to write the first failing test, what Rails conventions to apply, and how to review the result.

Start Here

Rails Agent Skills can be invoked in three distinct ways depending on your environment and desired level of autonomy:

  1. MCP (use_skill): Autonomous tool calls by the agent (e.g., Claude Desktop, Cursor).
  2. Chat Commands: Explicitly forcing the agent to use a skill via @skill-name or /skill-name.
  3. CLI (gh skill / tessl): Manual installation or evaluations in the terminal.

Read the complete guide on Calling Skills and Workflows for syntax examples and when to use each method.

The recommended way for autonomous usage is through the MCP server. MCP keeps the agent context small: docs and workflows are exposed as resources, available skills are discoverable through list_skills, and individual skills are loaded on demand. The use_skill tool returns a specific skill's SKILL.md only when the agent needs it.

PathBest forStart here
Official MCP RegistryFinding the verified MCP server metadata and latest published versionMCP registry entry
Docker Hub imageRunning without a local Ruby toolchainDocker image
Cloudflare WorkerHosted Streamable HTTP MCP for registries and hosted clientshealth check
SmitheryDiscovering and connecting through Smithery's MCP gatewaySmithery listing
Local Ruby/BundlerLocal development, debugging, and repository checkout workflowsmcp_server/README.md
GitHub CLI skillsInstalling selected skills into a specific agent hostGitHub CLI install
skills.shRegistering and adding the entire library to your workspaceskills.sh install

MCP Quick Start

For hosted MCP clients and registries that support Streamable HTTP, use the Cloudflare Worker endpoint:

https://rails-agent-skills-mcp.ismael-marin.workers.dev/mcp

Useful public checks:

Health: https://rails-agent-skills-mcp.ismael-marin.workers.dev/health
Server card: https://rails-agent-skills-mcp.ismael-marin.workers.dev/.well-known/mcp/server-card.json

For repeatable team installs, prefer the versioned Docker image published from a Git release tag:

{
  "mcpServers": {
    "rails-agent-skills": {
      "type": "stdio",
      "command": "docker",
      "args": ["run", "--rm", "-i", "igmarin/rails-agent-skills-mcp:5.1.5"]
    }
  }
}

For local development, clone the repo and run the Ruby server:

git clone https://github.com/igmarin/rails-agent-skills.git ~/rails-agent-skills
cd ~/rails-agent-skills/mcp_server
bundle install
bundle exec ruby server.rb

See mcp_server/README.md for host-specific MCP configuration for Claude Code, Cursor, Windsurf, RubyMine, OpenCode, and other stdio MCP clients.

When configuring MCP in external tools, use absolute paths for cwd and BUNDLE_GEMFILE. Relative paths and ~ are a common cause of gem-loading and timeout failures.

Using Workflows via MCP

Workflows are the primary way to orchestrate multi-step Rails development tasks. When connected via MCP, agents can automatically discover and execute workflows using two tools:

1. Discover available workflows:

Agent calls: list_workflows
Returns: 9 workflows with metadata (tdd, quality, review, setup, engine, bug-fix, graphql, migration, background-job)

2. Load and execute a specific workflow:

Agent calls: use_workflow(workflow_name: "tdd")
Returns: Full workflow instructions with phases, gates, and skill chaining

Example usage in MCP:

  • User: "I need to implement a new feature with TDD"
  • Agent: Calls list_workflows → discovers tdd workflow → calls use_workflow("tdd") → executes full TDD cycle

Available workflows:

  • tdd: Full TDD feature cycle (test → implement → review → PR)
  • quality: Code quality sweep (conventions → refactor → docs)
  • review: Systematic PR review (review → deep dive → response)
  • setup: Project setup and CI/CD configuration
  • engine: Rails engine development lifecycle
  • bug-fix: Bug triage and resolution with TDD
  • graphql: GraphQL API development with domain modeling
  • migration: Safe database migration deployment
  • background-job: Robust background job implementation

Workflows enforce hard gates (like "tests must pass before implementation") and include TDD enforcement, making them more reliable than ad-hoc skill chaining.

Daily Workflow

Depending on your environment (MCP vs. Chat Commands), you can orchestrate your daily Rails work using these common loops. For explicit control in Cursor or Windsurf, prepend these with @ (e.g., @load-context). In MCP, simply describe the goal and the agent will load them automatically.

The core TDD feature loop:

load-context
  -> plan-tests
  -> write-tests
  -> [verify failing test]
  -> [implement]
  -> [verify passing test]
  -> write-yard-docs
  -> code-review

For a new feature from scratch:

create-prd -> generate-tasks -> TDD feature loop

For a bug:

bug-fix (triage -> reproduce test -> fix -> verify)

For a GraphQL API:

graphql (domain modeling -> schema design -> TDD -> security review)

For a database migration:

migration (plan -> test -> staging -> production deployment)

For a background job:

background-job (design -> TDD -> retry config -> monitoring)

For a Rails engine:

create-engine -> test-engine -> document-engine -> review-engine -> release-engine

See docs/workflow-guide.md and docs/workflows/ for the full workflow guide containing detailed Mermaid diagrams of each phase.

Skill Catalog

The library contains 41 public skills organized by Rails development concern.

CategoryExamples
Planningcreate-prd, generate-tasks, plan-tickets
Testingplan-tests, write-tests, test-service, triage-bug
Code qualitycode-review, respond-to-review, security-check, refactor-code
Architecture and DDDdefine-domain-language, review-domain-boundaries, model-domain, review-architecture
Rails implementationcreate-service-object, implement-background-job, implement-authorization, implement-hotwire
APIsgenerate-api-collection, implement-graphql, integrate-api-client, version-api
Enginescreate-engine, test-engine, document-engine, release-engine, upgrade-engine
Infrastructurereview-migration, optimize-performance, seed-database
Orchestrationskill-router

Use docs/reference/skill-catalog.md for the complete catalog and docs/reference/integration-matrix.md for skill chaining.

Quality And Evaluation

This repo uses two complementary evaluation layers.

LayerStatusWhat it validates
TesslPublic and activeTessl-native scenarios in tessl-evals/ validate the quality of publishable skills from tile.json. Tessl does not validate repository workflows today.
ruby-skill-benchComing soonThe upcoming Ruby gem will run personal-evals/ examples with full skill or workflow context, including SKILL.md plus companion resources bundled as XML.

Root evals/ is generated Tessl staging output and must stay untracked. tessl-evals/ is the tracked Tessl source. personal-evals/ is the tracked source for open custom-evaluator examples.

See docs/eval-provenance.md for the canonical eval ownership policy and docs/skill-optimization-guide.md for the baseline-vs-context optimization loop.

Install Selected Skills With GitHub CLI

Requires GitHub CLI v2.90.0+ with gh skill.

# Install all skills interactively
gh skill install igmarin/rails-agent-skills

# Install a specific skill for the current project
gh skill install igmarin/rails-agent-skills code-review --scope project

# Install a specific skill globally
gh skill install igmarin/rails-agent-skills code-review --scope user

# Install pinned to a release tag
gh skill install igmarin/rails-agent-skills code-review --pin v5.1.5 --scope user

# Search this repository's skills
gh skill search rails --owner igmarin

To target a specific agent host:

gh skill install igmarin/rails-agent-skills plan-tests --agent claude-code --scope user
gh skill install igmarin/rails-agent-skills plan-tests --agent cursor --scope user
gh skill install igmarin/rails-agent-skills plan-tests --agent codex --scope user
gh skill install igmarin/rails-agent-skills plan-tests --agent gemini-cli --scope user
gh skill install igmarin/rails-agent-skills plan-tests --agent windsurf --scope user

Update installed skills:

gh skill update --dry-run
gh skill update --all
gh skill update --force --all
gh skill update --unpin

Pinning to a tag or commit SHA gives you reproducible installs. Provenance metadata is written into each installed SKILL.md frontmatter.

Documentation Map

NeedDocument
Understand the docs systemdocs/README.md
Install and configure MCPmcp_server/README.md
Browse all skillsdocs/reference/skill-catalog.md
Understand skill chainingdocs/reference/integration-matrix.md
Follow workflow guidesdocs/workflow-guide.md
Understand repository structuredocs/architecture.md
Understand eval ownershipdocs/eval-provenance.md
Optimize skill eval qualitydocs/skill-optimization-guide.md

Contributing

When contributing skills, workflows, docs, or MCP behavior:

  • Keep generated artifacts in English unless a user explicitly asks for another language.
  • Preserve the tests-gate-implementation rule for every code-producing skill.
  • Do not add tickets unless the user asks for ticket generation.
  • Do not commit generated root evals/ output.
  • Keep public docs consistent with tile.json, server.json, and the latest release tag.

Install With skills.sh

Requires skills.sh CLI.

# Add the library to your workspace
npx skills add igmarin/rails-agent-skills

Acknowledgments

Huge thanks to Mumo Carlos (@mumoc). His mentorship shaped many of the habits reflected here, especially the discipline around quality, clarity, and thoughtful use of tools.

Workspace
igmarin
Visibility
Public
Created
Last updated
Publish Source
CLI
Badge
igmarin/rails-agent-skills badge