tracer-bullets
8
总安装量
5
周安装量
#35337
全站排名
安装命令
npx skills add https://github.com/oakoss/agent-skills --skill tracer-bullets
Agent 安装分布
claude-code
5
opencode
4
gemini-cli
4
github-copilot
4
codex
4
kimi-cli
4
Skill 文档
Tracer Bullets
Build features as vertical slices through all layers, verifying each slice before starting the next. From The Pragmatic Programmer: get feedback as quickly as possible. Don’t build horizontal layers in isolation (all endpoints, then all UI, then all tests). Build one thin vertical path, verify it works, then expand.
Skip for single-layer changes, one-file bug fixes, or work already decomposed into ordered vertical slices by a task tracker.
Quick Reference
| Principle | Practice |
|---|---|
| Vertical over horizontal | Build one slice through all layers, not one layer across all features |
| Verify before advancing | Tests pass, page renders, round-trip works before next slice |
| One slice per session | Each slice should be completable in a single agent session |
| First feature sets pattern | First CRUD establishes conventions; subsequent CRUDs go faster |
| Check before building | Task trackers may already decompose the work into slices |
| Skip when trivial | Single-layer work or proven patterns don’t need this ceremony |
CRUD Feature Slices
| Slice | Scope | Verifies |
|---|---|---|
| 1 | Backend/API + tests (no UI) | Data layer works, conventions set, tests prove it |
| 2 | List page with real data | Data flows DB -> server -> rendered page |
| 3 | Create dialog | Full round-trip: form -> server -> DB -> refresh |
| 4 | Edit + delete | Full CRUD cycle, mutation patterns, confirm dialog |
| 5 | E2E test | Locks in the whole feature |
Non-CRUD Adaptations
Same principle, different slices:
- Import flow: parse one row -> display one row -> validate + dedupe -> review + commit
- Dashboard: one widget with real data -> empty/onboarding state -> layout with all widgets
- Search/palette: one entity type -> all entity types -> quick actions
- Multi-step wizard: first step end-to-end -> add steps one at a time -> final submission
Common Mistakes
| Mistake | Correct Pattern |
|---|---|
| Building all API endpoints before any UI | Build one endpoint + its UI + its test, then the next |
| Starting UI before the backend is tested | Slice 1 is backend-only with tests; prove the data layer first |
| Building the full create/edit/delete UI in one pass | Create dialog first (slice 3), then edit + delete (slice 4) |
| Skipping verification between slices | Run tests and check output before starting the next slice |
| Making slices too large for one session | Split further; a slice that can’t finish in one session is too big |
| Applying tracer bullets to trivial single-layer work | Skip for one component, one utility, or patterns already proven |
Delegation
- Decompose into subtasks: Use the project’s task tracker to create ordered vertical subtasks before writing code
- Isolate each slice: Delegate each slice to a subagent so failures stay contained and context stays fresh
- Find slice boundaries for non-CRUD work: Pick the smallest path through all layers as slice 1, then expand
References
No reference files. Source: Tracer Bullets: Keeping AI Slop Under Control