service-objects-vs-fat-models
100 / 100 · Low risk
Fine to try.
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…
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
[](https://zalavijaysinh.github.io/skilltrust/repos/MadBomber/experiments/)
Score history
| Date | Version | Score |
|---|---|---|
| 2026-11-10 | 8139ff6 | 100 |