code-craftsmanship
v1.5.1Code quality and software design skills including Clean Code (Robert C. Martin), Refactoring patterns (Martin Fowler), A Philosophy of Software Design (John Ousterhout), The Pragmatic Programmer (Hunt & Thomas), Domain-Driven Design (Eric Evans), and Working Effectively with Legacy Code (Michael Feathers)
MIT1.9kupdated 4 hours ago
Source
git clone https://github.com/wondelai/skillsClone the source, then follow the repository's marketplace instructions for your runtime. The plugin root is plugins/code-craftsmanship/ inside the repository.
Layout
├── .codex-plugin/plugin.json├── plugin.json├── skills/clean-code/SKILL.md├── skills/domain-driven-design/SKILL.md├── skills/pragmatic-programmer/SKILL.md├── skills/refactoring-patterns/SKILL.md├── skills/software-design-philosophy/SKILL.md└── skills/working-with-legacy-code/SKILL.md
Skills6
Write readable, maintainable code through disciplined naming, small functions, and clean error handling. Use when the user mentions "clean up this code", "this function is too long", "code smells", "naming conventions", "boy scout rule", "single responsibility", or "unit test quality". Also trigger when reviewing a pull request for readability, untangling a messy function, debating comment styles, or improving error-handling patterns. Covers SRP, comment discipline, formatting, and unit testing. For refactoring techniques, see refactoring-patterns. For architecture and dependency rules, see clean-architecture.
Model software around the business domain using bounded contexts, aggregates, and ubiquitous language. Use when the user mentions "domain modeling", "bounded context", "aggregate root", "ubiquitous language", "anti-corruption layer", "context mapping", "domain events", "strategic design", "the code doesnt match the business", or "how do we split this big system". Also trigger when breaking a monolith into services, defining service boundaries, or aligning code structure with business processes. Covers entities vs value objects, domain events, and context mapping strategies. For architecture layers, see clean-architecture. For complexity, see software-design-philosophy.
Apply meta-principles of software craftsmanship: DRY, orthogonality, tracer bullets, and design by contract. Use when the user mentions "best practices", "pragmatic approach", "broken windows", "tracer bullet", "software craftsmanship", "avoid technical debt", "code ownership", or "how do I become a better developer". Also trigger when evaluating build-vs-buy decisions, designing estimation approaches, or choosing between reversible and irreversible architectural decisions. Covers estimation, domain languages, and reversibility. For code-level quality, see clean-code. For refactoring techniques, see refactoring-patterns.
Apply named refactoring transformations to improve code structure without changing behavior. Use when the user mentions "refactor this", "code smells", "extract method", "replace conditional", "technical debt", "move method", "inline variable", "decompose conditional", or "clean up this messy code". Also trigger when cleaning up legacy code, preparing code for new features by restructuring, or identifying which transformation fits a specific code smell. Covers smell-driven refactoring, safe transformation sequences, and testing guards. For code-quality foundations, see clean-code. For managing complexity, see software-design-philosophy.
Manage software complexity through deep modules, information hiding, and strategic programming. Use when the user mentions "module design", "API too complex", "shallow class", "complexity budget", "strategic vs tactical", "deep module", "information leakage", "pass-through method", "this code is over-engineered", or "simplify this design". Also trigger when reviewing an interface for simplicity, evaluating whether an abstraction is pulling its weight, deciding whether a comment is worth writing, or choosing between general-purpose and special-purpose approaches. Covers deep vs shallow modules, red flags for complexity, and comments as design documentation. For code quality, see clean-code. For architecture boundaries, see clean-architecture.
Safely change and test untested codebases using Feathers' "Working Effectively with Legacy Code". Use when the user mentions "legacy code", "no tests", "untested codebase", "how do I test this", "seams", "characterization tests", "golden master", "sprout method", "afraid to change this code", "monster method", "dependency breaking", or "inherited a messy codebase". Also trigger when changing code without tests safely, getting a class under test when constructors, statics, or singletons block it, adding features to tangled modules, or planning incremental test coverage for an old codebase. Covers the legacy-code change algorithm, seams, characterization tests, sprout/wrap, and dependency-breaking techniques. For refactoring code that already has tests, see refactoring-patterns. For day-to-day code quality, see clean-code.
Manifests2
{
"name": "code-craftsmanship",
"version": "1.5.1",
"description": "Code quality and software design skills including Clean Code (Robert C. Martin), Refactoring patterns (Martin Fowler), A Philosophy of Software Design (John Ousterhout), The Pragmatic Programmer (Hunt & Thomas), Domain-Driven Design (Eric Evans), and Working Effectively with Legacy Code (Michael Feathers)",
"license": "MIT",
"keywords": [
"clean-code",
"refactoring",
"code-quality",
"software-design",
"ddd",
"domain-driven-design",
"pragmatic",
"legacy-code",
"characterization-tests",
"seams",
"code-review",
"code-smells",
"technical-debt",
"over-engineered",
"untested-code"
],
"repository": "https://github.com/wondelai/skills",
"homepage": "https://github.com/wondelai/skills",
"skills": "./skills/"
}{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "code-craftsmanship",
"version": "1.5.1",
"description": "Code quality and software design skills including Clean Code (Robert C. Martin), Refactoring patterns (Martin Fowler), A Philosophy of Software Design (John Ousterhout), The Pragmatic Programmer (Hunt & Thomas), Domain-Driven Design (Eric Evans), and Working Effectively with Legacy Code (Michael Feathers)",
"author": {
"name": "Wondel.ai",
"url": "https://wondel.ai"
},
"homepage": "https://github.com/wondelai/skills",
"repository": "https://github.com/wondelai/skills",
"license": "MIT",
"keywords": [
"clean-code",
"refactoring",
"code-quality",
"software-design",
"ddd",
"domain-driven-design",
"pragmatic",
"legacy-code",
"characterization-tests",
"seams",
"code-review",
"code-smells",
"technical-debt",
"over-engineered",
"untested-code"
]
}