Better with Kent · draft
Papercut CI for humans + agents
Hook
renderToString · python
http.server
Uploaded as the onboarding walkthrough. kody#1890 · friction #1893
Next morning
Kent called it out. The loop answered.
Named principle
Treat DX pain like a failing test
Inspiration
Agents log friction when they hit it
wevm/frog · frog.fm · entries become owned GitHub issues
The loop
Issues labeled
friction
are the log.
policy
File it
kody:@kentcdodds/friction-log/create
return await createFrictionIssue({
title: 'what hurt',
whatHappened: '...',
whatYouWanted: '...',
howToReproduce: '...',
cost: '...',
})
Sample:
samples/create-friction-issue.ts
·
package
Schedule
Four outcomes
friction-skippedHuman gate
friction-skipped
Next run stays skipped until that label comes off.
Kent still comments close / ship / different approach · unskip is removing the label.
Ship
Receipt · 1
git push --no-verifykody#1789 · cursor bot · Aug 27
Receipt · 1 continued
Receipt · 2
Port :3742 was dead
Receipt · 3
/health hungrenderToString / python
http.server)
Friction #1893 · kody-bot · Aug 31
Scope honesty
Frame
Papercut CI · not ops trivia
Sibling triggers: product Observe · prod errors · friction. verification
Homework
Better with Kent
Subscribe · comment · get better with me