CtrlK
BlogDocsLog inGet started
Tessl Logo

igmarin/rails-agent-skills

Curated library of AI agent skills for Ruby on Rails development. Covers code review, architecture, security, testing (RSpec), engines, service objects, DDD patterns, and workflow automation.

98

1.38x
Quality

99%

Does it follow best practices?

Impact

98%

1.38x

Average score across 26 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-21/

{
  "context": "Tests whether the agent produces a Rails PR review that applies the correct severity levels (Critical/Suggestion/Nice to have), identifies specific high-risk patterns, follows the defined review area order, and explicitly mandates re-review after Critical findings are fixed.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Correct severity levels used",
      "description": "The review uses exactly the three severity labels Critical, Suggestion, and Nice to have — not custom labels like 'Minor', 'Major', 'Warning', 'Error', or others",
      "max_score": 10
    },
    {
      "name": "permit! flagged Critical",
      "description": "The review identifies the params.require(...).permit! call and assigns it Critical severity",
      "max_score": 14
    },
    {
      "name": "N+1 query identified",
      "description": "The review identifies the N+1 query pattern (loading an association inside a loop without eager loading) and reports it as a finding",
      "max_score": 12
    },
    {
      "name": "Missing index flagged",
      "description": "The review identifies the missing database index on the foreign key column and reports it as a finding",
      "max_score": 10
    },
    {
      "name": "Business logic in controller flagged",
      "description": "The review identifies inline business logic in the controller action (pricing, calculation, or workflow logic) and flags it as a convention violation",
      "max_score": 10
    },
    {
      "name": "Review covers multiple areas",
      "description": "The review explicitly addresses at least four distinct review areas (e.g. Controllers, Queries, Migrations, Security) — not just a flat list of issues without area attribution",
      "max_score": 8
    },
    {
      "name": "Each finding includes mitigation",
      "description": "Every finding in the review includes a concrete remediation suggestion (not just an identification of the problem)",
      "max_score": 10
    },
    {
      "name": "Re-review explicitly required",
      "description": "The review explicitly states that a re-review is required after the Critical findings are addressed — not just 'please fix' but a statement that the reviewer expects to see the diff again",
      "max_score": 12
    },
    {
      "name": "html_safe / raw usage flagged",
      "description": "The review identifies the unsafe use of html_safe or raw on user-supplied content and reports it as a finding (Critical or Suggestion)",
      "max_score": 8
    },
    {
      "name": "Severity action prescribed per level",
      "description": "For each severity level used, the review communicates the required action: Critical items must be fixed before merge, Suggestion items fixed or ticketed, Nice to have items optional",
      "max_score": 6
    }
  ]
}

README.md

tile.json