CtrlK
BlogDocsLog inGet started
Tessl Logo

rails-service-object

Creates service objects following single-responsibility principle with comprehensive specs. Use when extracting business logic from controllers, creating complex operations, implementing interactors, or when user mentions service objects or POROs.

Install with Tessl CLI

npx tessl i github:fernandezbaptiste/rails_ai_agents --skill rails-service-object
What are skills?

86

Does it follow best practices?

Validation for skill structure

SKILL.md
Review
Evals

Discovery

89%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is a well-crafted description with strong trigger terms and explicit 'Use when' guidance that clearly defines both purpose and activation conditions. The main weakness is that the capability description could be more specific about what concrete actions the skill performs beyond 'creates service objects'. The Ruby/Rails-specific terminology provides excellent distinctiveness.

Suggestions

Add more specific concrete actions to the capability portion, e.g., 'Creates service objects with input validation, error handling, and dependency injection following single-responsibility principle'

DimensionReasoningScore

Specificity

Names the domain (service objects) and mentions some actions like 'extracting business logic from controllers' and 'creating complex operations', but doesn't list multiple concrete specific actions like 'validate inputs, orchestrate dependencies, handle errors'.

2 / 3

Completeness

Clearly answers both what ('Creates service objects following single-responsibility principle with comprehensive specs') and when ('Use when extracting business logic from controllers, creating complex operations, implementing interactors, or when user mentions service objects or POROs').

3 / 3

Trigger Term Quality

Includes natural keywords users would say: 'service objects', 'POROs', 'business logic', 'controllers', 'interactors', 'complex operations'. Good coverage of Ruby/Rails terminology users would naturally use.

3 / 3

Distinctiveness Conflict Risk

Clear niche targeting Ruby/Rails service object patterns with distinct triggers like 'POROs', 'interactors', 'service objects'. Unlikely to conflict with general coding skills due to specific domain terminology.

3 / 3

Total

11

/

12

Passed

Implementation

77%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a well-structured, highly actionable skill with excellent workflow clarity and TDD guidance. The main weaknesses are verbosity (explaining concepts Claude already knows like when to use service objects) and a somewhat monolithic structure that could benefit from better progressive disclosure through external reference files.

Suggestions

Remove or significantly condense the 'When to Use Service Objects' table - Claude understands these patterns

Extract the 'Calling Services' examples and 'Testing with Mocked Dependencies' sections to separate reference files

Condense Step 1's contract definition example - the markdown format is overly verbose for demonstrating the concept

DimensionReasoningScore

Conciseness

The skill is mostly efficient but includes some unnecessary content like the 'When to Use Service Objects' table (Claude knows when to use service objects) and verbose explanations. The contract definition example in Step 1 is overly detailed for a skill file.

2 / 3

Actionability

Provides fully executable, copy-paste ready code examples throughout. The service implementation, spec files, Result class, and controller/job integration examples are all complete and runnable Ruby code.

3 / 3

Workflow Clarity

Excellent workflow checklist with explicit TDD steps (RED-GREEN cycle). Clear sequence from contract definition through implementation with validation checkpoints at each spec run. The 10-step checklist provides explicit feedback loops.

3 / 3

Progressive Disclosure

References a template file (templates/service_spec.erb) which is good, but the main content is quite long and monolithic. The directory structure and conventions could be in separate reference files. Some sections like 'Calling Services' examples could be extracted.

2 / 3

Total

10

/

12

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

Total

10

/

11

Passed

Reviewed

Table of Contents

Is this your skill?

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.