pragmatic
pragmatic — greenfield feature development constraint system
This skill enforces a specific engineering philosophy for greenfield, prototype, or framework-agnostic feature work. It is not generic advice — it is an opinionated constraint system derived from The Pragmatic Programmer by Andy Hunt and Dave Thomas.
For feature work in an existing codebase, use software-design instead. That skill is the canonical existing-codebase feature module and already includes this build discipline after its design gate.
The build discipline below intentionally duplicates software-design Phase 4 — skills install standalone, so the shared discipline must live in both files. If you change a rule here, mirror it there.
Read every rule before writing code. Every rule is testable — you should be able to look at a diff and answer yes/no.
When to use
Use when the task is a new standalone feature, prototype, spike, script, endpoint, module, or system and there is not enough existing architecture to justify the software-design explore/frame/design approval workflow.
Do not use for: