Inspiration

Two problems that seem different but are actually the same: coding agents make bad decisions you can't undo, and going from idea to MVP takes too long. We wanted a tool where you could type an idea on your phone, watch an agent build it in real-time, and when it goes in the wrong direction — rewind to that moment and try a different approach. Not start over. Rewind. Like version control for agent decisions, but from your pocket.

## What it does

Rewind is a mobile-first web app for rapid MVP iteration using Omnara coding agents. The loop is simple: idea → launch → watch → fork → iterate.

You type a one-liner describing what you want to build. An Omnara agent spins up and starts working immediately. You watch every decision it makes in a visual timeline on your phone. When it makes a choice you don't like — wrong library, wrong architecture, wrong approach — you tap that decision point and type what you actually wanted. Rewind forks the session: it truncates the conversation at that exact moment, preserves all the context the agent had built up, and launches a fresh agent following your correction. Minutes later you have two different MVPs to compare.

Want to try three different approaches? Fork three times from the same point. You're not debugging — you're exploring the solution space in parallel, from your phone, while your laptop is closed.

## How we built it

Next.js 15 with TypeScript and Tailwind CSS. The backend chains five Omnara APIs together: session listing, message history, import-claude-session for conversation transplanting, session creation, and workspace launching. The import-claude-session endpoint is the core hack — it was built for migrating sessions, but we use it to splice conversation history at arbitrary points to enable mid-conversation forking.

Key features:

  • Idea launcher — type a prompt, agent starts building immediately
  • Live timeline — watch agent decisions stream in real-time, auto-detects decision points
  • One-tap forking — truncate, import, and relaunch in a single action
  • Inline preview — see the app the agent built rendered live in an iframe
  • Fork templates — pre-built correction prompts for common pivots
  • Session grouping — original sessions with their forks nested underneath

## Challenges

  • Omnara's import endpoint deduplicates on message IDs — we had to generate fresh UUIDs per fork to get new sessions instead of the original back
  • resume_session_id doesn't inherit conversation context — agent_session_id is the correct field to connect a sandbox to an imported session's history
  • Agent messages include status pings (agent_progress, agent_complete) that crash the import endpoint — our message mapper filters these out
  • The launch endpoint doesn't return agent session IDs immediately — we poll session detail until the agent appears

## What we learned

The fastest way to build an MVP isn't to get it right the first time — it's to get it built fast and fork when it's wrong. Omnara's API has a hidden superpower: the import-claude-session endpoint combined with message truncation creates a branching primitive for agent work that doesn't exist anywhere else. We turned "launch and hope" into "launch, watch, rewind, iterate."

Track

Omnara track — a branching and replay layer for agent sessions that makes failed runs reusable instead of disposable.

Built With

  • claude
  • import-claude-session
  • message-history
  • next.js-15
  • omnara-api-(session-management
  • tailwind-css-4
  • typescript
  • workspace-launching)
Share this project:

Updates