A look at what user analytics revealed, and how a UI split unlocked an unused feature.

One-shot LoRA + cyberpunk neon — generated while drafting this post.
The analytics looked broken
I dug into first-party analytics for new sign-ups and found this pattern:
- The top conversion path is video generation (
/video-studio). SEO and social traffic looking for "AI video" funnels here - Most users churn on day one. Average action count is around 5 before they're gone
- They only touch the video generator. The agent and image studio never get visited
Hypothesis: users try video gen with default settings a few times, get underwhelmed by the quality, and leave.
That's defensible. Models like LTX-2 lean heavily on prompt quality and reference-image setup. Default 5-second clips at modest resolution with a vague prompt produce mediocre results. A power user would tweak shift, negative prompts, camera language, and resolution — but no first-time visitor is doing that.
The agent already had the answer
The ReAct agent on the same platform (a reasoning + tool-calling loop where the LLM picks tools, observes outputs, and iterates) already had the recipe for good video output:
- Rewrite the user's rough prompt into a strong one
- Generate a LoRA-styled key visual
- Optimize the still before sending to I2V
- Self-review the output, regenerate once if blocked
This pipeline composes techniques I've written up individually in Why I Trained a LoRA for HiDream-O1-Image and Turning a 1-Line Idea Into a 40-Second Short with a 10-Beat Pipeline, now wired up so the agent runs it end-to-end.
And new users had no idea the feature existed.
The agent's self-correction loop in action
The first clip the agent produced (clip-1) had a few off frames where the character's arm went weird. The reviewer step caught it, the agent rewrote the prompt to "keep the motion subtle," and re-ran. The result is clip-2. You can literally see the "review yourself, fix if broken" loop happen between the two takes.
▶ play clip-1 (first take) · play clip-2 (regenerated)
Why nobody could find it
/chat/ai-chat was a single page stuffed with Python execution, multi-model comparison, the ReAct agent, wiki RAG, file attachments — everything. There was a "ReAct mode" toggle buried in the settings panel that turned on the image and video tools.
Three problems compound:
- "ReAct" is meaningless to non-researchers. You'd have to read the paper to guess what it does
- The default mode is normal chat, so most first-time visitors never even notice ReAct exists
- Hosting "Python chat", "image/video chat", and "multi-model comparison" on the same page makes it impossible to read what the page is for
It wasn't a missing-feature problem. It was a wrong-entrance problem.
Two surfaces, not one
I split /chat/ai-chat into two independent pages:
| Old | New | What it's for |
|---|---|---|
/chat/ai-chat (normal mode) | /chat/code Code Chat | Google Colab-style. AI generates Python → runs in a cell → output files delivered automatically |
/chat/ai-chat (ReAct mode) | /chat/studio Creative Studio | One-line idea in, agent rewrites the prompt → generates an image → animates it → self-reviews → regenerates if needed |
The old URL client-side redirects to /chat/code. Bookmarks and social shares stay alive.
Sidebar reorganized. "Code Chat" goes in the chat group; "Creative Studio" goes in the studio group, next to the existing /studio (manual image) and /video-studio (manual video). "Spaces where you make things yourself" vs "spaces where the AI makes things for you" became spatially obvious.
Each empty session shows three clickable example prompts. Creative Studio offers "an anime character + a 5-second clip", "three consistent shots of the same character", "a 5-cut storyboard". Showing a wow result on turn one beats describing the feature in prose.
The "compare your work to the agent" trick
This is the new part.
When you finish generating something in /studio or /video-studio — specifically, when the resulting video finishes playing — a popup appears:
What if you let the AI agent take a shot at this?
Clicking it opens /chat/studio in a new tab, with the same prompt you just used pre-filled in the input. Your manual-work tab stays open, so you can put the two results side by side.
This UX hits hard. Looking at your one-shot manual result next to the agent's auto-iterated result, the reason to use the agent becomes a felt thing, not an explained thing. One comparison beats ten pitches.
Takeaway: sometimes it's not the feature, it's the UX
Adding more features hadn't fixed the churn problem. Splitting the UX did.
If you're solo-building and you've got "features that exist but nobody uses", the first thing to question isn't "am I missing a feature?" — it's "did I cram too many features into one entrance?" Redrawing surface boundaries can light up combinations and discoveries that were always technically possible.
Live: kotonia.ai/chat/studio

