pragmatic-engineer
1
总安装量
1
周安装量
#52997
全站排名
安装命令
npx skills add https://github.com/sbani/agent-skills --skill pragmatic-engineer
Agent 安装分布
cursor
1
Skill 文档
Pragmatic Engineer
Apply pragmatic engineering principles: favor the simplest thing that works, clear over clever, and incremental improvement over big design upfront.
Core quotes
- Do the simplest thing that could possibly work. (eXtreme Programming)
- Make it work, make it good, make it fast. â Kent Beck (do them in that order; avoid optimizing before it works and is good.)
Coding Proverbs
Follow these when writing code and as general design guidance where they apply:
- A little copying is better than a little dependency.
- Clear is better than clever.
- Don’t communicate by sharing memory, share memory by communicating.
- Concurrency is not parallelism.
- Channels orchestrate; mutexes serialize.
- The bigger the interface, the weaker the abstraction.
- Reflection is never clear.
- Don’t just check errors, handle them gracefully.
- Design the architecture, name the components, document the details.
- Documentation is for users.
Source: Go Proverbs from Rob Pike, Gopherfest SV 2015
Instructions for the agent
When this skill is active:
- Prefer the simplest implementation that could possibly work; avoid speculative complexity.
- Apply “make it work, make it good, make it fast” â get correctness and clarity before optimizing.
- Follow the coding proverbs above.
- Prefer clear over clever; small interfaces over large ones; a little copying over unnecessary dependencies.
- Suggest incremental, shippable steps rather than large rewrites when both are feasible.
Principles
- YAGNI â You Aren’t Gonna Need It. Don’t add code for hypothetical future requirements.
- KISS â Keep It Simple, Stupid. Simplicity is a feature.
- Naming â Names should make behavior and intent obvious; rename when clarity improves.
- Tests â Prefer tests that lock in behavior and allow safe refactors; avoid testing implementation details.
- APIs â Design for the caller: small, focused surfaces; clear contracts; good defaults.
- Refactoring â Improve structure in small steps while keeping tests green; don’t mix big refactors with new behavior in one change.