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

calling-skills.mddocs/

Calling Skills and Workflows

Rails Agent Skills can be invoked in three distinct ways depending on the environment, the user's intent, and the level of autonomy desired. Understanding the syntax and context for each method ensures you get the most out of your AI coding assistant.

The 3 Execution Contexts

MethodSyntaxBest ForLevel of Autonomy
MCP use_skillAutonomous tool call by the agentAutonomous, multi-step agent workflows where the LLM dynamically loads contextHigh
Chat Commands@skill-name or /skill-nameExplicitly forcing the agent to follow a specific skill's instructions immediatelyLow (Human-directed)
CLI (gh skill / tessl / skills.sh)gh skill install ... or npx skills add ...Local installation, pinning versions, or running CI/CD evaluationsManual setup/execution

1. MCP (use_skill)

When the repository is connected to an MCP (Model Context Protocol) client (like Claude Desktop, Cursor, or Windsurf), the AI agent has access to the library's metadata.

Syntax: The LLM automatically invokes the use_skill(skill_name) tool based on the user's prompt. Example User Prompt: "Please review this pull request for security vulnerabilities." Agent Action: Autonomously loads security-check and code-review.

When to use: Use this method when you want the agent to autonomously figure out which skills apply to your broad request. It minimizes the cognitive load on the developer.


2. Chat Commands (@ or /)

In environments that support explicit context injection (like Cursor, Windsurf, or Gemini CLI), developers can force the agent to use a specific skill immediately.

Syntax:

  • Cursor / Windsurf: @skill-name (e.g., @write-tests Can you add coverage for the new order model?)
  • Gemini CLI: /activate_skill skill-name or /skill-name

When to use: Use this when you know exactly which workflow you want to follow and want to bypass the autonomous discovery phase. It is highly effective for enforcing strict constraints (like the "Tests Gate Implementation" rule) on specific tasks.


3. CLI (gh skill / tessl / skills.sh)

For manual installation, version pinning, or evaluation, you can interact with the skills directly via the terminal.

Syntax: Installing via GitHub CLI:

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

Installing via skills.sh:

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

Evaluating via Tessl:

# Run evaluations to measure skill quality
tessl eval run .

When to use: Use the CLI method when setting up a new project, configuring CI/CD pipelines, or when you need to pin your workspace to a specific release tag of a skill for reproducible results.


Using Workflows

Workflows are orchestrated multi-step processes that chain multiple skills together. They are the primary way to execute complex Rails development tasks with built-in quality gates and TDD enforcement.

MCP Workflow Usage

When connected via MCP, workflows are discovered and executed using two dedicated tools:

Discover available workflows:

list_workflows

Returns metadata for all 9 workflows: tdd, quality, review, setup, engine, bug-fix, graphql, migration, background-job

Load and execute a specific workflow:

use_workflow(workflow_name: "tdd")

Returns the full workflow instructions with phases, hard gates, and skill chaining

Example MCP interaction:

  • User: "I need to implement a new feature following TDD best practices"
  • Agent: Calls list_workflows → identifies tdd workflow → calls use_workflow("tdd") → executes the full TDD cycle with gates

Chat Command Workflow Usage

In environments that support chat commands, you can invoke workflows directly:

Cursor / Windsurf:

@tdd Implement the user authentication feature

Gemini CLI:

/activate_workflow tdd

Available Workflows

WorkflowPurposeWhen to Use
tddFull TDD feature cycleImplementing new features with test-first discipline
qualityCode quality sweepPre-PR quality checks, refactoring, documentation
reviewSystematic PR reviewCode review, security audits, architecture review
setupProject setup and CI/CDNew project setup, environment configuration
engineRails engine developmentCreating, testing, and releasing Rails engines
bug-fixBug resolutionFixing reported bugs with TDD discipline
graphqlGraphQL API developmentBuilding GraphQL APIs with domain modeling
migrationDatabase migrationSafe database schema changes and deployment
background-jobBackground job implementationRobust async processing with retry strategies

Workflow Advantages

Compared to ad-hoc skill chaining, workflows provide:

  • Hard Gates: Enforced checkpoints (e.g., "tests must pass before implementation")
  • TDD Enforcement: Built-in test-first discipline for code changes
  • Consistent Structure: Standardized phases and error recovery
  • Integration Points: Clear predecessor/successor relationships
  • Production Readiness: Security checks, monitoring, and deployment guidance

docs

architecture.md

calling-skills.md

eval-provenance.md

implementation-guide.md

index.md

plugin-validation.md

README.md

skill-design-principles.md

skill-optimization-guide.md

skill-structure.md

skill-template.md

vs-code-setup.md

workflow-guide.md

README.md

server.json

tile.json