Interactive example · from Working with Coding Agents
The dashboard that rots
I keep asking you for project status. Can I get some kind of dashboard instead?
Your status lives in structured files already. The question is whether the dashboard is a thing that runs, or a thing that gets generated.
Pick the agent's next move, then see where it leads:
Two months later: the dashboard won't start. npm is printing forty lines of peer-dependency errors.
The framework minor-versioned, two plugins didn't follow, and the build's been broken since. For a page you look at twice a week, we've been maintaining a running application. The maintenance didn't pause when the looking did.
An app answers a look-at-it problem with a keep-it-alive solution. The dependency churn runs whether or not anyone looks. That asymmetry is the whole case against it.
Page open: every project, status, next action. Generated 09:41, says so in the corner. The script lives in scripts/ with a --help. Any session can rerun it; say "fresh status" and it's two seconds. Nothing is running in between.
Six months later this still works?
It's forty lines of stdlib reading files you were keeping anyway. There's nothing in it that can rot.
The renderer is the asset: data stays canonical, the page is disposable output with its staleness visible (the timestamp is the contract), and maintenance is zero because nothing runs between looks. AF-03
That's really nice. Same again Thursday?
Thursday: regenerated from scratch. New session, so I re-read every project file and rebuilt the whole picture in tokens. Same answer, full price, and it scrolled away when the conversation moved on. Nothing was kept.
Describing instead of serving, on a schedule: the report is ephemeral, costs full context every time, and leaves no artifact. If it can be a page, make it a page, and keep the script that made it. AF-04