Review and update existing Rails controllers and generate new controllers following professional patterns and best practices. Covers RESTful conventions, authorization patterns, proper error handling, and maintainable code organization.
46
50%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/controller-patterns/SKILL.mdQuality
Discovery
50%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description adequately identifies its domain (Rails controllers) and lists relevant concerns, but lacks an explicit 'Use when...' clause which limits its effectiveness for skill selection. It would benefit from more concrete action verbs and natural trigger terms that users would actually say when needing this skill.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user asks to create, refactor, or review Rails controllers, or mentions controller actions, before_action filters, or strong parameters.'
Include more natural trigger terms and variations such as 'Ruby on Rails', 'controller action', 'strong parameters', 'before_action', 'respond_to', and '.rb controller files'.
Replace broad category mentions like 'proper error handling' with concrete actions like 'add rescue_from blocks, implement flash messages, return appropriate HTTP status codes'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Rails controllers) and lists some actions ('review and update', 'generate new controllers'), plus mentions specific concerns like RESTful conventions, authorization patterns, error handling, and code organization. However, these are more categories than concrete actions. | 2 / 3 |
Completeness | The 'what' is reasonably covered (review, update, generate Rails controllers with best practices), but there is no explicit 'Use when...' clause or equivalent trigger guidance telling Claude when to select this skill. | 2 / 3 |
Trigger Term Quality | Includes relevant terms like 'Rails controllers', 'RESTful', 'authorization', and 'error handling' that users might mention. However, it misses common variations like 'Ruby on Rails', 'controller action', 'before_action', 'strong parameters', 'routes', or specific file extensions. | 2 / 3 |
Distinctiveness Conflict Risk | Specifying 'Rails controllers' provides some distinctiveness, but it could overlap with general Rails skills, Ruby code review skills, or broader web framework skills. The mention of authorization and error handling could also conflict with more general Rails or backend skills. | 2 / 3 |
Total | 8 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, executable Rails controller patterns with good structural organization and a useful decision tree. However, it suffers significantly from verbosity and repetition — the same CRUD pattern appears nearly identically in three places (Quick Reference, RESTful Action Patterns, Complete Examples), and many patterns described are standard Rails knowledge Claude already possesses. The content would benefit greatly from deduplication and splitting advanced/reference material into separate files.
Suggestions
Eliminate the redundant 'Complete Examples' section entirely — the Quick Reference already shows a complete CRUD controller, and the RESTful Action Patterns section repeats the same actions individually.
Remove the individual RESTful Action Patterns breakdown (section 3) since these are standard Rails patterns Claude already knows; keep only the Quick Reference template and the anti-patterns table.
Split advanced patterns (state controllers, bulk operations) and the common mistakes table into separate referenced files to reduce the main skill's token footprint.
Add explicit verification steps to the 'Generating New Controllers' workflow, such as 'verify policy class exists' and 'confirm routes are defined in routes.rb'.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose at ~400+ lines with significant repetition. The 'Complete Examples' section repeats the exact same CRUD pattern shown in 'Quick Reference'. RESTful action patterns are spelled out individually despite being standard Rails knowledge Claude already possesses. The same authorization patterns are shown 3+ times across different sections. | 1 / 3 |
Actionability | All code examples are fully executable Ruby with correct syntax, specific method names, proper Rails conventions, and copy-paste ready patterns. The examples include routes, views (button_to/form_with), controller code, and strong parameter definitions — everything needed to implement. | 3 / 3 |
Workflow Clarity | The 'Agent Instructions' section provides a clear decision tree and checklist for reviewing controllers, but lacks explicit validation/verification steps. For generating controllers, it lists steps but doesn't include checkpoints like 'verify routes exist' or 'run tests after generation'. The review checklist is good but presented as a static list rather than a sequenced workflow with feedback loops. | 2 / 3 |
Progressive Disclosure | The content is organized with clear headers and a logical progression from quick reference to advanced patterns, but it's monolithic — all content is inline in a single file with no references to external files. Given the length (~400+ lines), the advanced patterns, complete examples, and common mistakes table could be split into separate reference files to keep the main skill lean. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (641 lines); consider splitting into references/ and linking | Warning |
metadata_version | 'metadata.version' is missing | Warning |
Total | 9 / 11 Passed | |
4d83977
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.