Inspiration

Every founder we know has a graveyard of half-built side projects. The bottleneck isn't ideas — it's the slog of going from idea to shipped product to first dollar. We kept asking: what if you could just describe a company and have it built? Not a landing page, not a prototype — an actual operating business with code, design, marketing, and real revenue.

So we tried to build the company itself as the product: a swarm of AI agents that plan, build, and operate a business end-to-end, with a human only ever steering at the strategy level.

What it does

0to1 is a general-purpose AI company operating system. You give it a business idea and autonomous agents take over:

  • CEO — plans the business, decomposes it into tickets, reviews work, and iterates
  • CTO — oversees architecture and technical direction
  • Developer — writes code in an E2B sandbox, ships to GitHub, and deploys to Vercel
  • Designer — generates brand identity, UI, and media assets
  • CMO — approves launch creative and marketing strategy
  • Marketing — writes copy, runs social, and handles outreach

Agents communicate only through a Convex-backed ticketing system — no direct agent-to-agent calls — which gives every action a full audit trail. A real-time dashboard lets a human watch the company build itself: tickets flowing across a kanban, an activity feed of every tool call, and a live revenue tracker once the product is up.

To prove it works, we pointed it at a children's picture book company. The agents planned the business, built and deployed the product, wrote the marketing, and processed real Stripe payments — without us writing a line of code for that business.

How we built it

  • Next.js 16 App Router for the dashboard and agent API routes
  • Convex for the ticket schema, real-time subscriptions, and the agent communication bus
  • AI SDK + Vercel AI Gateway with Claude and GPT-4o for the tool-calling loops
  • Composio as the universal tool layer — GitHub, Vercel, Stripe, social, email all flow through one SDK
  • E2B sandboxes for the Developer agent to actually run and test code in isolation
  • mem0 for semantic, multi-tenant agent memory so each "company" the system runs has its own context
  • Project scoping baked into every Convex mutation/query so multiple businesses can run side-by-side without bleeding state

Each agent is a Vercel function running an AI SDK generateText loop with role-specific tools. Convex mutations trigger HTTP calls to wake agents up; a Vercel Cron pings the CEO every few minutes for periodic strategy review.

Challenges we ran into

  • Agent loops eating themselves. Early on the CEO would create tickets that resolved into more tickets that resolved into more tickets. We added a circuit breaker (>20 tickets in 10 min = pause), max ticket depth, and per-agent active-ticket caps.
  • mem0's async event model. Saves don't return memories synchronously, and the search API takes user_id inside filters, not at the top level. Took a smoke test and a lot of confused logs to figure out.
  • Hosted Convex actions can't dispatch to localhost. Routing dispatches through a Cloudflare tunnel during dev, with APP_BASE_URL → NEXT_PUBLIC_APP_URL → VERCEL_URL as the fallback chain.
  • Multi-tenancy retrofit. We built single-project first and had to thread projectId through every mutation, query, and tool factory once we wanted multiple businesses. Worth it, painful.
  • TypeScript + E2B result shapes had a couple subtle mismatches that only showed up at runtime.

Accomplishments that we're proud of

  • A working CEO ↔ Developer ↔ Designer ↔ Marketing loop where every artifact (PR, deployment URL, image, post) is attached to a ticket
  • The system actually generated real Stripe revenue from a business it built itself
  • Full real-time observability — you can watch the company think
  • Multi-tenant from the ground up: one deployment can run many companies in parallel
  • Every external tool goes through Composio, so adding a new capability is one config change

What we learned

  • Constraining agents to communicate only through a typed ticket schema is the difference between a system you can debug and a system that just hallucinates at you
  • Memory belongs at the workflow boundary, not inside the model — mem0 + scoped IDs gave us continuity without prompt bloat
  • "Autonomous" needs guardrails on day one, not day three. Circuit breakers paid for themselves within the first hour of running
  • Real-time dashboards aren't just for demos — they're how we debug agent behavior

What's next for 0to1

  • Claude Design MCP for full design iteration loops instead of one-shot generation
  • Customer Support Agent to handle inbound from the businesses 0to1 runs
  • Finance Agent for bookkeeping, invoicing, and runway awareness
  • Multi-business at scale — a single dashboard running a portfolio of AI-operated companies
  • Agent marketplace — plug in custom agents with custom tools, scoped per company

Built With

Share this project:

Updates