⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

a-philosophy-of-software-design

@ciembor⭐ 2.9k stars

Apply John Ousterhout-inspired software design rules when reducing complexity, designing module boundaries, or reviewing APIs and abstractions.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐⭐⭐⭐ 2.9kGitHub ↗

Very popular

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

Polish Repo badge skills.sh

About

MIT licensed universal project rules for coding agents.

This repository contains ready-to-use rule sets inspired by well-known books on software design, architecture, refactoring, legacy code, reliability, and data-intensive systems.

For editor-specific setup in Codex, Claude Code, and Cursor, see USAGE.md. It covers always-on vs on-demand usage, skills, scoped rules, and the preferred setup for each editor.

Each rule set is released in three tool-agnostic Markdown versions:

  • mini: the recommended version for most real task use
  • nano: the compact fallback for very tight context budgets
  • full: the canonical complete source and reference version

For constructive criticism from Reddit, see CRITICISM.md.

For release history, see CHANGELOG.md.

Installation as Skills

Prerequisite: install Node.js with npm. You can run the Skills CLI through npx without installing skills separately.

Install all book skills with the open Agent Skills CLI:

npx skills add ciembor/agent-rules-books --all

List available skills without installing:

npx skills add ciembor/agent-rules-books --list

Install one selected skill:

npx skills add ciembor/agent-rules-books --skill refactoring

Every book directory contains a standard SKILL.md entrypoint. The skill loads the corresponding mini rule set by default and keeps the full file available as deeper reference material.

If you prefer another setup, see USAGE.md for manual, scoped, always-on, and editor-specific installation patterns.

Release Matrix

Metrics:

  • lines: physical line count from wc -l
  • rules: Markdown list items counted with the deterministic release convention
  • size: raw bytes from wc -c
Rule SetFull fileFull linesFull rulesFull sizeMini fileMini linesMini rulesMini sizeNano fileNano linesNano rulesNano size
A Philosophy of Software Designfull37017713561 Bmini46285774 Bnano35172258 B
Clean Architecturefull51528917782 Bmini49315486 Bnano36182254 B
Clean Codefull29722013851 Bmini47293804 Bnano32141235 B
Code Completefull35418012407 Bmini56386717 Bnano41232544 B
Designing Data-Intensive Applicationsfull39320516084 Bmini55376949 Bnano34162575 B
Domain-Driven Designfull97952342424 Bmini48305683 Bnano39212266 B
Domain-Driven Design Distilledfull31715811351 Bmini56386438 Bnano41232535 B
Implementing Domain-Driven Designfull33717712848 Bmini57397333 Bnano37192723 B
Patterns of Enterprise Application Architecturefull40419615501 Bmini54368099 Bnano35172823 B
Refactoringfull43324217866 Bmini49315167 Bnano37191986 B
Release It!full38220413542 Bmini48306372 Bnano38202205 B
The Pragmatic Programmerfull35917913398 Bmini65477165 Bnano44262263 B
Working Effectively with Legacy Codefull37119313817 Bmini50325707 Bnano35171792 B
Refactoring.Gurufull76547862561 Bmini64466287 Bnano41232593 B

Books List

A Philosophy of Software Design

Author: John Ousterhout

The book focuses on fighting complexity through deep modules, simple interfaces, information hiding, and design choices that reduce cognitive load. This rule set is especially useful for API design, modul

// HOW IT'S BUILT

KEY FILES

a-philosophy-of-software-design/SKILL.mdREADME.md

// REPO STATS

2.9k stars

// ACTIONS

Rate this skill

login to rate

// SCORE

Pending review

// DETAILS

Categoryother
Author@ciembor
Versionversion unknown
PriceFree