Skip to content

Docs

Tofu builder

Describe the app you want in a few sentences. Tofu’s cloud coding agent builds it in a cloud workspace while you watch, shows it to you on a private preview, and puts it online when you say so. There is nothing to install.

What it is

The Tofu builder is Tofu's cloud coding agent, which writes your app's code for you. It runs in your browser at app.trytofu.ai/build, signed in with your Tofu account, and works in a cloud workspace of its own. It is already connected to your Tofu account, so there is nothing to set up first.

An app it makes goes into your Tofu dashboard like any other app, with the same safety check, versions, logs and settings. Already have code, or a coding agent you like? Connect your agent: any coding agent reaches the same Tofu, and the same apps.

Start

Three ways in, one sign-in.

  1. Open the builder

    On the homepage, under No app yet?, choose Describe one. In your Tofu dashboard, choose Build; New app also offers Describe it in the builder. Or open app.trytofu.ai/build directly.

  2. Sign in with Tofu

    The builder uses your Tofu account. If you are already signed in to Tofu, it uses that account; with no account yet, you can create one on the way. Your apps go online in that account.

  3. Describe it, and the builder starts

    Describe your app in the builder's message box, in your own words, and send it: the builder starts building, and you can stop it at any time. Your first message starts a session: Sessions and plans says what that includes.

The workspace

The chat on the left, your app on the right.

Your messages show as bubbles, the agent's words as plain text, and its work as quiet one-line rows, such as Edited 4 files or Installing packages. When a turn ends, a line says how long it took and what changed. A turn runs until the agent is done, so nobody has to press Continue.

  • Stop. While the agent works, Send becomes Stop.
  • Keep going. When the agent goes in circles, it pauses and asks first.
  • Ask to fix. A command that failed offers it.
  • Errors in your app. When the builder spots an error in your running app, it tells the agent by itself after a 10-second countdown. Fix it now sends it at once, and Not now cancels it.

Under the preview, a Code and Terminal drawer stays shut until you open it. Code shows your app's files, read-only. Terminal shows the commands the agent ran and what they printed.

The preview

Your app runs on a private preview address of its own, https://sb-….trytofu.page, which shows the app once it answers (Starting your app… until then) and reloads after every turn that changed files. Desktop, Tablet (768 × 1024) and Phone (390 × 844) sizes, a path field, reload and open in a new tab sit above it.

The address is unlisted, on a domain apart from Tofu's, so the preview never receives your Tofu sign-in. It stops working when the session's workspace closes.

An app that keeps data or signs people in shows Not connected yet in the preview and keeps sample data in your browser. Its real database and sign-in arrive when you put it online, which for now the builder does on a paid plan (Starter or Pro).

What the agent does

It builds web apps with React, TypeScript, Vite and Tailwind CSS. It starts from a simple static starter, and uses a full-stack starter only when your idea needs saved data, shared data or people signing in. It installs packages with npm, writes and edits files, runs commands, and checks every step by building the app, fixing errors before it says a step is done.

It replies in your language and keeps replies short: what it built, and what to try. It asks a question only when an idea is too unclear to start, begins with a first version of one page, and improves it in small steps as you ask.

Once your app is in Tofu, the agent can read how it stands without asking: whether it is online and its address, its versions, why an update failed, its visit counts, its uptime checks, its domains, the names of its keys (never their values) and, for code from GitHub, the GitHub state. It reads only the app you are building, never your other apps. Each read shows as a row, and a read changes nothing.

Versions and autosave

The builder saves each step. Its Versions sheet lists every step it saved, with Go back to this version and Undo the last step; going back adds a new version, so you can always come back. This is the builder's history of your code. Which version is live online is chosen on the dashboard's Versions page.

At the end of every turn, the app is saved with its whole history, so an app you have not put online is kept when the session ends: Your apps lists it under Not online yet. A single file over 5 MB is left out of the save, and the builder tells you.

Keys, payments and domains

Settings live in your Tofu dashboard, one press away.

Keys and passwords are typed only in Keys & settings in the dashboard, never in the chat, and your app gets them the next time it is put online (Environment variables). Payments are set up on the app's Payments page, where you connect your own payments account, and no payment key goes in the chat or the code (Payments). Domains, billing, rolling back a live app and deleting an app are done in the dashboard too.

Once an app is in Tofu, its tab in the builder's top bar shows its name, how it stands and its address. Its menu opens the matching page of the app in your dashboard: Overview, Versions, Analytics, Domains, Keys & settings, Database, Payments and Sign-in. While a workspace runs, they open in a new tab, so your session keeps going.

With your own coding agent

Same app, any door.

Apps from the Tofu builder and from any coding agent reach the same Tofu projects, safety check and versions. When your app is in Tofu, Use your own coding agent gives you a prompt to copy into any coding agent: it sets Tofu up there with one approval in your browser, finds your app by name, brings its code into a new folder with a git repository and a first commit, and runs it. The prompt asks your agent to check with you before it deploys, deletes or spends anything.

Continuing an app in the builder starts from the newest code Tofu holds, so changes your own coding agent sent come back too. Apps your coding agent sent, or that you imported from GitHub, are listed in the builder as well, and open there when they pass its checks (Apps from your own agent or GitHub).

What the builder does not do

  • Server code of its own. It makes web apps that run in the browser (React, Vite and Tailwind CSS), with no api, server or functions folder, no server framework and no custom build step. Saved data and sign-in come from Tofu once the app is online, which for now the builder does on a paid plan.

  • Another service’s secret key. A part that needs another service’s secret key is left out, and the agent says so plainly. It never asks for, or writes, a key, a password or a token.

  • Search the web. The agent works from your words and its own workspace.

  • Deceptive pages. It does not build pages meant to deceive, or pages that collect passwords or card details.

  • Change settings from the chat. Domains, keys, payments, billing, rolling back a live app and deleting an app are done in your Tofu dashboard, which the builder’s app menu opens.