README.md

May 22, 2026 · View on GitHub

Polish Repo badge

AI agent rules from programming books

AI agents Rules / Skills from
Programming Books v0.5

AGENTS.md rules / skills for Codex, Cursor, Claude Code, distilled from classic software engineering books about refactoring, architecture, DDD and code quality.

About · Rules / Skills · Books List · Usage · Books Compatibility

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, MCP or RAG patterns, 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.

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, module design, and refactoring shallow abstractions.

Clean Architecture

Author: Robert C. Martin

The book describes designing systems around stable boundaries, the dependency rule, and the separation of business policies from details such as frameworks, databases, and UI. This rule set helps keep code resistant to technology churn.

Clean Code

Author: Robert C. Martin

The book focuses on readability, naming, small functions, responsibilities, tests, and simplicity. This rule set is a strong default for everyday coding and code review.

Code Complete

Author: Steve McConnell

The book covers a broad range of software construction practices: routine design, variables, classes, control flow, defensive programming, coding standards, and testing. This rule set helps agents make disciplined implementation decisions.

Designing Data-Intensive Applications

Author: Martin Kleppmann

The book covers reliability, scalability, consistency, replication, partitioning, transactions, data streams, and schema evolution. This rule set is intended for systems where data ownership, event flows, and consistency semantics matter.

Domain-Driven Design

Author: Eric Evans

The book introduces domain modeling, ubiquitous language, bounded contexts, tactical patterns, and strategic design. This rule set helps agents think in terms of the business model rather than tables, controllers, or DTOs.

Domain-Driven Design Distilled

Author: Vaughn Vernon

The book is a short, practical introduction to DDD. It focuses on subdomains, bounded contexts, context mapping, and basic tactical patterns. This rule set is a good fit when you want the benefits of DDD without excessive ceremony.

Implementing Domain-Driven Design

Author: Vaughn Vernon

The book shows how to apply DDD in real systems: aggregates, domain events, contexts, integrations, and application architecture. This rule set is more implementation-focused than domain-driven-design-distilled.

Patterns of Enterprise Application Architecture

Author: Martin Fowler

The book catalogues enterprise application patterns: layers, service layer, transaction script, domain model, data mapper, repository, unit of work, identity map, DTO, and integration patterns. This rule set helps choose an appropriate pattern instead of mixing responsibilities accidentally.

Refactoring

Author: Martin Fowler

The book describes safe ways to improve code structure without changing observable behavior. This rule set emphasizes small steps, tests, code smell detection, and keeping refactoring separate from feature changes.

Refactoring.Guru

Source: Refactoring.Guru

The site provides a practical refactoring process, code smell catalog, and catalog of refactoring techniques. This rule set is useful when an agent needs to diagnose smells, choose a safe treatment, preserve behavior, and stop before cleanup turns into uncontrolled redesign.

Release It!

Author: Michael T. Nygard

The book focuses on systems that survive production reality: failures, overload, timeouts, retries, circuit breakers, bulkheads, backpressure, observability, and deployment behavior. This rule set is useful for services, APIs, queues, integrations, and critical production paths.

The Pragmatic Programmer

Authors: Andrew Hunt, David Thomas

The book describes a pragmatic approach to software development: responsibility, DRY at the knowledge level, orthogonality, automation, fast feedback, prototyping, and adaptability. This rule set works well as a general engineering layer.

Working Effectively with Legacy Code

Author: Michael Feathers

The book explains how to safely change difficult, poorly tested code: characterization tests, seams, dependency breaking, sprout method, wrap method, and incremental risk reduction. This rule set is best for legacy work where the first goal is regaining control.

For choosing rule sets, skills, and delivery patterns, see USAGE.md. For combining multiple books, see COMPATIBILITY.md. For the book extraction workflow, see ADDING_THE_BOOK.md.

Does it work?

The first validation experiment used vibe-coded-crap, a deliberately generated helpdesk CLI project. The project as vibe-coded application generated with Codex, GPT-5.4 mini, reasoning medium, through continuous development across 80 tasks from BACKLOG.md. The project exists specifically for testing different AGENTS.md files and skills in refactoring workflows.

The experiment compared two separate refactors of the same application, both focused on A Philosophy of Software Design:

# OBEY A Philosophy of Software Design by John Ousterhout

For each branch, Codex first generated a PLAN.md refactoring plan with GPT-5.5, reasoning extra high. The full plan was then executed with the same model, reasoning high. The resulting codebases were passed to ChatGPT with the prompt: “which code better implements the principles from A Philosophy of Software Design, and by how much?”

ChatGPT rated the mini rules refactor at roughly 74/100, versus 46/100 for the branch that only mentioned the book. The result suggests that listing concrete rules from the book is more effective than merely naming the book when the goal is to make an agent apply the author's design principles during refactoring.

The result should be treated as an early qualitative signal, not a benchmark. A secondary Reek code-smell check showed only a small difference in generic static-analysis output: the original branch had 1083 detected smells, while the mini refactor had 1077. This suggests that the advantage of the mini rules did not show up clearly in raw smell counts. In this experiment, the difference was more visible in architectural judgment: module depth, responsibility boundaries, information hiding, and whether the refactor reduced the amount of code a reader needs to understand at once.

Deeper measurements and equivalent experiments for other books are not planned at this stage because they would require substantial token budget and a large amount of manual review time.

Important Note

These rules are inspired by the books listed above. They are not official materials from the authors or publishers, and they are not a substitute for reading the books.

The files in this repository are practical engineering instructions written for AI coding tools. They intentionally avoid reproducing book text. Use them as lightweight working agreements, not as summaries or study notes.

FAQ

What are AI coding agent rules?

AI coding agent rules are project-level instructions that guide tools like Codex, Cursor, Claude Code, and GitHub Copilot when generating, reviewing, or refactoring code.

What are AI coding agent skills?

AI coding agent skills are task-specific instruction packs that agents load only when a workflow needs them, such as refactoring, reviewing, legacy-code changes, reliability work, or domain modeling.

What is AGENTS.md?

AGENTS.md is a Markdown file used to give coding agents project-specific instructions, workflows, constraints, and coding standards.

Can I use these as Claude Code rules or skills?

Yes. You can copy selected rule sets into CLAUDE.md as project memory or turn a focused mini rule set into a Claude Code skill.

Can I use these as Cursor rules?

Yes. You can adapt the rule sets into Cursor project rules or keep them as AGENTS.md-style instructions.

Can I use these as GitHub Copilot custom instructions or skills?

Yes. The rules and skills are plain Markdown and can be adapted into GitHub Copilot custom instructions, prompt files, or reusable task-specific guidance.

AI coding agent rules, Agent skills, AGENTS.md examples, Claude Code rules, Cursor rules, Codex rules, GitHub Copilot custom instructions, CLAUDE.md, software engineering rules for AI coding assistants, Clean Code rules for AI, Refactoring rules for AI agents, Domain-Driven Design rules, Clean Architecture rules.

License

The code and rules in this repository are released under the MIT License.

See LICENSE for details.

Author

Maciej Ciemborowicz