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

criteria.jsonevals/scenario-37/

{
  "context": "Checks whether the final artifact follows the create-service-object instructions from the published Rails Agent Skills tile.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "instruction-1",
      "description": "The submitted artifact follows this skill instruction: EVERY service object MUST have its test written and validated BEFORE implementation.",
      "max_score": 10
    },
    {
      "name": "instruction-2",
      "description": "The submitted artifact follows this skill instruction: Write the spec for .call (with contexts for success, error, edge cases)",
      "max_score": 10
    },
    {
      "name": "instruction-3",
      "description": "The submitted artifact follows this skill instruction: Run the spec — verify it fails because the service does not exist yet",
      "max_score": 10
    },
    {
      "name": "instruction-4",
      "description": "The submitted artifact follows this skill instruction: The final artifact must include the spec command and the RED failure message",
      "max_score": 10
    },
    {
      "name": "instruction-5",
      "description": "The submitted artifact follows this skill instruction: before implementation. Use the observed failure when available; otherwise show",
      "max_score": 10
    },
    {
      "name": "instruction-6",
      "description": "The submitted artifact follows this skill instruction: **Write Spec (Test-First):** Create the RSpec file at `spec/services/<module_name>/<service_name>_spec.rb`. Write tests covering success and error paths for `.call`. Run it to ensure it fails.",
      "max_score": 10
    },
    {
      "name": "instruction-7",
      "description": "The submitted artifact follows this skill instruction: **Define Service Skeleton:** Create the file at `app/services/<module_name>/<service_name>.rb` with the correct module namespace.",
      "max_score": 10
    },
    {
      "name": "instruction-8",
      "description": "The submitted artifact follows this skill instruction: **Handle Errors and Logging:** Catch `StandardError` (and domain exceptions). Use `Rails.logger.error` to log both the message and backtrace. Use UPPER_SNAKE_CASE constants for error messages.",
      "max_score": 10
    },
    {
      "name": "instruction-9",
      "description": "The submitted artifact follows this skill instruction: **Write Module README:** Generate `app/services/<module_name>/README.md` explaining the domain context.",
      "max_score": 10
    },
    {
      "name": "instruction-10",
      "description": "The submitted artifact follows this skill instruction: Use no `initialize` and no instance variables for validators, formatters, or helpers that only transform their arguments.",
      "max_score": 10
    }
  ]
}

README.md

server.json

tile.json