SkillTrust

← All skills

service-objects-vs-fat-models

100 / 100 · Low risk

Fine to try.

By MadBomber/experiments (GitHub) · other · 11 stars · scanned at commit 8139ff6

Decide when Rails logic stays in the model and when it earns a service object. Use when the user asks about service objects, fat models, "where does this logic go", refactoring a controller, extracting business logic, the Result pattern, interactor gem, dry-monads, command objects, or is about to write a class ending in Service / Manager / Handler / Processor. Also use proactively when reviewing any controller action with more than ~10 lines of business logic, or any model file exceeding ~200 l…

Works with any agent that supports SKILL.md skills.

What this skill can do

We found nothing in the files we read that matches our rules. That does not prove the skill is safe: see the limits of static scanning.

Install

Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.

if [ -e ~/.agents/skills/'service-objects-vs-fat-models' ] || [ -L ~/.agents/skills/'service-objects-vs-fat-models' ]; then echo 'A skill folder named service-objects-vs-fat-models already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/MadBomber/experiments' "$d" && git -C "$d" checkout --quiet '8139ff68e8895b544661aa2ba8b53268d68652bc' -- 'ai_misc/skills/rails-skills/03-service-objects-vs-fat-models' && mkdir -p ~/.agents/skills && cp -R "$d"/'ai_misc/skills/rails-skills/03-service-objects-vs-fat-models' ~/.agents/skills/'service-objects-vs-fat-models' && rm -rf "$d"; fi

Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'service-objects-vs-fat-models' ~/.claude/skills/'service-objects-vs-fat-models' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.

Badge for your README

The badge for MadBomber/experiments shows the score of its lowest-scoring skill.

SkillTrust badge for MadBomber/experiments

[![SkillTrust](https://zalavijaysinh.github.io/skilltrust/badges/MadBomber/experiments.svg)](https://zalavijaysinh.github.io/skilltrust/repos/MadBomber/experiments/)

Score history

DateVersionScore
2026-11-108139ff6100