Better with Kent · draft
Design Primitives Agents Can Actually Use
Systems design is the job — not prompt engineering.
create
combine
delete
expand
Cold open
Same agent. Different playground.
When the system has good primitives, agents are effective.
When it doesn't, they improvise — and improvisation is where things break.
Reframe
The bottleneck moved
- Models got better fast — implementation got cheaper
- The scarce work is systems design
- Build a playground with operations agents can safely invoke
Four moves
Create
→
Combine
→
Delete
→
Expand
Create
When the capability doesn't exist yet
- Missing primitive → agent finds a workaround
- Workarounds are broad, brittle, and hard to audit
- Kody: community packages needed RBAC primitives first
Combine
When two things should be one
- PayPal: three combobox components → one → downshift
- Fewer concepts for humans and agents to reason about
- Kody: skills + saved apps → packages
Delete
When less surface area is the win
- Instagram: Foursquare clone → success by removing features
- Every primitive is something an agent might call
- Kody: pulled email handler out → simple event system
Expand
When an existing primitive is almost right
- Kody: packages gained event subscriptions
- Email narrowed to: emit events, packages subscribe
- Simpler primitives that combine cleanly
Expand
Event bus shape
flowchart LR
email["email ingress"] --> bus["event system"]
bus --> pkgA["package A"]
bus --> pkgB["package B"]
Why it works
Good primitives shrink the action space
- Composable ops instead of improvised scripts
- Pre-audited boundaries instead of god-mode access
- Agents effective because the system is well-shaped
Homework
Ask your agent
"What primitives exist in this system?
What should we create, combine, delete, or expand?"
Better with Kent
Durable skills for people who ship software
- Design the system agents play in
- Create · combine · delete · expand until the primitives are right
Subscribe · like · comment · share