Long task: a Claude Code job that runs for hours while no one watches.
Decision: The page is an overnight radio station that only broadcasts while the visitor's tab is hidden, calls them back through the tab title like a singer, and gives them the night's tape when they return.
Two a.m. on a station nobody hears. The job is the host.
Every log line goes out as a voice. Every tool call is a cart: a click, a jingle.
Dead air is the only failure. A long silence means it is stuck.
You tune a dial and drop in at any hour. You hear what is on air now and nothing earlier.
I want the hiss under it. Real tape noise. That is what makes four hours feel like four hours.
The page only works while you are not on it.
Switch tabs and it builds. Come back and it freezes, mid-stroke.
Black text on grey. One line every few seconds. It would run on a phone from 2011 over a train's wifi.
The machine is a plotter drawing one long line across a strip of paper.
Watching it is what stops it. You learn to leave.
Three rooms, left to right. I have drawn them.
Room one: the desk at dusk. A prompt on a card, a cold mug, the lamp still on.
Room two: the gallery after closing. Nobody in it. The work moves on its own.
Room three: morning. The result under glass, with a small label of what it cost.
The feeling I am guarding is coming home to a house where someone worked while you slept.
I have sailed past singers. You do not fight them. You tie yourself down and keep the oars moving.
The visitor sets the course, then binds their own hands. One click, and the cursor is rope.
The page sings to them. "Step in. It is failing. Only you can fix it." Lies, mostly.
If they cut the rope and steer, the ship turns toward the rocks.
What is left when you strip it all away: the hard part of a long voyage is keeping your hands off the tiller.
The page is an overnight radio station that only broadcasts while the visitor's tab is hidden, calls them back through the tab title like a singer, and gives them the night's tape when they return.
Concept: Graveyard Shift
visibilitychange event to drive one state machine with three states, dusk, shift, morning. Advance the fake job log only while document.hidden is true. Store each aired line with a timestamp in localStorage. Gaps longer than 90 seconds count as dead air.speechSynthesis reading every fifth line. If AudioContext fails, show a scrolling paper-tape transcript instead.
2026-10-15
2026-10-14
2026-10-13
2026-10-12
2026-10-11
2026-10-10
2026-10-09
2026-10-08
2026-10-07
2026-10-06
2026-10-05
2026-10-04
2026-10-03