a-philosophy-of-software-design
About a-philosophy-of-software-design
A design skill for developers working on modules, APIs, and abstractions. It focuses on information hiding, abstraction depth, and cognitive load, with a deeper reference for difficult design tradeoffs.
Key features
- 01Module design guidance
- 02API design
- 03Information hiding
- 04Abstraction depth and cognitive load
Use cases
- 01Design module interfaces
- 02Reduce cognitive load in abstractions
- 03Refactor shallow interfaces
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ ciembor/ agent-rules-books --skill a-philosophy-of-software-designAfter installing, type/a-philosophy-of-software-designin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
a-philosophy-of-software-design.mda-philosophy-of-software-design.mini.mda-philosophy-of-software-design.nano.mdDetails
From the project READMEA Philosophy of Software Design Skill
Use this skill when a task involves module design, API design, information hiding, abstraction depth, cognitive load, or refactoring shallow interfaces.
Before making design or code decisions, read and apply a-philosophy-of-software-design.mini.md. Use a-philosophy-of-software-design.md only as a deeper reference when the mini rules are not enough for the current design tradeoff.