I run a tiny coffee subscription out of a garage. Twice a week I owe my subscribers a "featured origin" page — a standalone web page: the farm story, tasting notes, a buy button. The page was never the hard part. The idea was. Tuesday morning, espresso not yet poured, staring at an empty editor trying to remember why I'd cared about that Yirgacheffe lot. I'd burn an hour on the opening line. The loop I stumbled into with x-rush's text module ate that hour: a daily push drops the hook, a chat develops the angle, a template turns it into a published page. Three features, one teal accent (#00D4AA, the text module's signature), about twenty minutes end to end.
The hook, delivered at 8am (T-2 Auto Content)
The first leg is the one I didn't expect to need. Open /workbench/text/auto and you land on the Content tab — a feed of every push the agents have made for you. Eight sub-tabs across the top: All, then one per agent (Tarot, Trivia, Zodiac, Fitness, Study, MBTI, Nutrition). I keep two on: Trivia and Study. Both push by default with zero setup, because they don't need to know anything about me.
Tuesday 08:00, a Trivia card lands. Cards I haven't opened yet wear a bright bar down the left edge — that's the unread marker. I click it. Two things happen at once: the bar fades (it's marked read), and a structured detail modal opens. For trivia it's a clean fact block. Here's the kicker — the link at the bottom of every detail modal: Continue chatting.
That link is the handoff, and it's the reason the loop works. I'm not copying a fact into a separate chat and re-explaining the context. The link carries the card with it.
Developing the angle (T-3 AI Chat)
Click Continue chatting and you land at /workbench/text/chat?agent=trivia&context=<the-card-id>. Two things are already done for you: the Trivia agent is selected in the left sidebar (a 240px rail, no hunting), and a ContextCard is pinned to the top of the thread — "📎 Referenced from Auto Content," quoting the card's title and body. Minimize it, close it — your call; I usually leave it.
Because that agent's history is empty, the assistant opens with a first turn that references the shared content, so your first real message has something to bite into. And here's the part most chat tools get wrong and this one doesn't: each agent keeps its own history (the code calls it messagesByAgent). I switch from Trivia to a custom agent and back, and the Trivia thread is exactly where I left it. Nothing resets.
I did make a custom agent — that's where T-3 earns its keep for me. Hit Create Custom Agent and the form has the fields that actually matter: Name, Description, and System Prompt — the behavior instruction where the personality lives. Mine is "a coffee copywriter who writes tasting notes like a novelist, never uses the word 'notes' twice, and refuses to say 'bold'." It works. (I also set a chat background to a warm #C8A27A so the thread feels like a kraft envelope. Small thing. Helps me think.)
So now I've got the trivia hook — "the first espresso machine patent was filed in 1884 by Angelo Moriondo" — and a copywriter agent that knows my voice. Ten minutes of back and forth — "give me three openers, lead with the machine not the bean, drop the patent date by line three" — and I've got a concrete angle and a draft intro.
From draft to a published page (T-1 HTML Pages)
Last leg. /workbench/text/html. I hit Create from Scratch, paste the copywriter's intro into the prompt, then pick a template from the 12-category library — "Product Hero," dark, centered headline, two buttons. Use Template drops me into the editor.
Two panes: Monaco on the left (a real editor with a file tree, not a toy textarea), live preview on the right. The preview has four device tabs — Desktop, Tablet (768), Mobile (375), and Code — so I flick to Mobile to make sure the buy button doesn't collapse under the headline. I paste the full draft over the placeholder copy. It renders before my finger leaves the key.
Here's where I expected to bounce off: styling. Instead I open the AI assistant panel (right side), type "make the buy button #00D4AA, sticky on mobile, and pull the tasting notes into a two-column grid below the hero." The assistant has read the current file plus the file tree (it says so explicitly), and replies with a diff — green for added, red for removed, the way git shows it. Not a wall of code dumped on me. I hit Apply. The grid appears. I didn't write a line.
The safety net matters more than the magic. I didn't like the spacing on a follow-up edit. Hit Reject, then a couple of undos — and I'm back to the clean original template. The undo chain runs all the way back, so the AI can't brick your starting point. That's the difference between "AI edits your file" and "AI edits your file without ruining it."
Cmd+S to save. Publish. A toast, and a public URL: /p/yrg-7f3a. Anyone — subscribers, my mom, no login required — can open it. Take it offline and republish later; the URL stays the same. And x-rush keeps your last 10 publish snapshots, so when I bungled the button color an hour later, I rolled back to the 9am version in two clicks. No re-editing.
Morning hook to published page. Roughly twenty minutes. I never left the text module.
Why the loop beats the parts
Each feature alone is fine. The loop is the product.
- T-2 is a current, not a queue. Seven agents on a schedule (
pushTimelike08:00, frequency daily / weekdays / custom days) generate content whether you open the workbench or not. The personalized five — Zodiac, Fitness, Study, MBTI, Nutrition — get precise once you fill in your sign / goal / type / prefs; the web-wide two (Tarot, Trivia) need nothing. Inside/workbench/*the global chat bubble is hidden, so pushes land in a feed you check on your terms, not when they nag. - T-3 hands off without re-explaining. The
?agent=&context=injection means the agent already knows what it just generated. Per-agent history (messagesByAgent) means switching never costs you a thread. Up to 10 custom agents, each with systemPrompt + description + avatar + chatBackground. (Hit 10 and the create entry goes quiet — delete one first.) - T-1 closes it with a real artifact. Publish to a standalone public URL at
/p/{id}, no login to view, rollback across 10 snapshots, four-device preview with a console error count, and an AI assistant that diffs instead of dumps. The published page is the proof the loop produced something.
Pro tips I picked up the hard way
- Fill the profile fields before you judge the personalized agents. A Nutrition agent with no dietary prefs gives you "drink water." With prefs, it gives you a three-meal macro ring with swap suggestions. Same agent, different inputs.
- Set pushTime to when you actually create, not when you wake up. I moved Trivia to
08:00because that's when I sit down to write. A push at 6am just sits unread and goes stale. - The toggle on a task card is optimistic — flip it and the UI updates instantly. If the server later disagrees, it snaps back. Don't panic when a toggle flickers; that's the confirm catching up.
- Write the system prompt like you're hiring someone, not describing a vibe. "Snarky copywriter" is useless. "Coffee copywriter, novelist tone, never repeats 'notes', refuses 'bold'" gets you pages you'd actually publish.
- Undo is your friend before Reject. If an AI edit applied but you want to walk it back gradually, undos step through cleanly. Reject throws out the whole proposal. Different tools for different regrets.
The models behind it (one paragraph, then I'll stop)
x-rush plugs into the industry's top-tier models — Claude Fable 5, GPT-5.6, Gemini 3.5, Qwen3.7 Max, and the rest — and smart-routes each task to the one that fits. The morning trivia push and the chat replies run on Qwen3.7 Max (1–3 seconds, a fraction of the cost, #1 in China on Artificial Analysis), and when the copywriter agent needs to actually reason about structure, the router escalates without me asking. The pool refreshes as the world moves; whatever ships next, the router uses it where it wins. I never pick a model. I just notice the replies are good.
Go deeper
The docs go further than I have room for:
- Text module overview — the full three-feature surface and how they chain together
- Auto content generator — the push system, the seven agents, the task scheduler
- AI characters & chat — custom agents, per-agent history, context injection
- Smart page generator — templates, the AI assistant diff, publish and rollback
I came in needing an opening sentence for a coffee page. I stayed because the loop keeps producing pages worth publishing. Try the loop yourself — the first push is free, and a blank editor is a terrible way to start a Tuesday.