From fuse-solid
SOLID principles for Python 3.12+. Files < 100 lines, interfaces separated, modular architecture. Modules MANDATORY.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fuse-solid:solid-pythonThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Before ANY implementation, use `TeamCreate` to spawn 3 agents:
Before ANY implementation, use TeamCreate to spawn 3 agents:
Before writing ANY new code:
core/services/, core/interfaces/core/| Layer | Location | Max Lines |
|---|---|---|
| Routes | modules/[feature]/routes/ | 50 |
| Services | modules/[feature]/services/ | 100 |
| Repositories | modules/[feature]/repositories/ | 100 |
| Interfaces | modules/[feature]/interfaces/ | 30 |
| Models | modules/[feature]/models/ | 50 |
| Shared | core/{services,interfaces,models}/ | - |
NEVER use flat src/ structure - always modules/[feature]/
| Rule | Value |
|---|---|
| File limit | 100 lines (split at 90) |
| Routes | < 50 lines, delegate to services |
| Interfaces | interfaces/ directory ONLY |
| Docstrings | Every public function documented |
| Type hints | MANDATORY on all signatures |
| Protocols | Use typing.Protocol for interfaces |
| Small interfaces | 1-3 methods max |
| Topic | Reference | When to consult |
|---|---|---|
| SOLID Principles | principles.md | Quick reference for all 5 principles |
| Patterns & Structure | patterns.md | Directory layout, testing, typing |
| Anti-Pattern | Fix |
|---|---|
| Files > 100 lines | Split at 90 |
| Interfaces in impl files | Move to interfaces/ directory |
| Fat interfaces (4+ methods) | Split into small Protocols |
Flat src/ structure | Use modules/[feature]/ |
| Concrete dependencies | Use Protocol + dependency injection |
| Missing type hints | Add type annotations to all signatures |
npx claudepluginhub fusengine/agents --plugin fuse-solidApplies SOLID principles (SRP, OCP) with Elixir and TypeScript examples for designing maintainable modules, functions, and components.
SOLID principles for generic TypeScript, Bun, and Node.js projects. Files < 100 lines, interfaces separated, JSDoc mandatory. Use for CLI tools, libraries, scripts, hooks, and non-framework TypeScript code.
Applies Python design principles like KISS, SRP, composition over inheritance, and Rule of Three for designing services, refactoring monoliths, reducing coupling, and improving testability.