What problem does it solve?
This Skill helps teams design and enforce clear Ruby application boundaries by identifying appropriate places for service layers, command objects, adapters, value objects, and integration seams to reduce hidden side effects, framework leakage, and tangled models.
Core Features & Use Cases
- Boundary Identification: Recommend which responsibilities belong in service objects, command objects, value objects, or adapters.
- Side-effect Management: Advise patterns that make side effects explicit and encapsulate them behind project-owned APIs.
- Integration Seams: Provide guidance for wrapping external services and extracting domain logic from framework glue to improve testability and maintainability.
- Use Case: Refactor a fat Active Record model into POROs and service objects, or wrap a third-party API in a project-owned adapter with clear value objects for domain data.
Quick Start
Ask the skill to analyze a selected Ruby file or directory and propose candidate service objects, command objects, adapters, and value objects with concise responsibilities and example public methods.