Skip to main content
The initial build gets you a working app. Iteration is where it becomes the app you actually want. The iteration model is the same chat you used to build the app — you describe what you want changed, the app builder changes it.

The build chat

Every custom-built app has a build chat attached to it. Open the app in your Dashboard, click into the builder, and you’re back in the same conversation. The agent has the full history and the current state of the app. You can iterate as much as you want. There’s no separate edit mode.

Requesting changes

Phrase changes the way you’d phrase them to a teammate. Concrete is better than abstract.

One change at a time

This is the single biggest unlock for iteration quality. A change request like “fix the form, change the colors, add a filter, and reorganize the dashboard” produces a slower build, a higher chance of regressions, and a harder time spotting what went wrong. Same four changes one at a time produces faster builds, cleaner results, and easier debugging if something breaks.
Watch the live preview after each change. If something looks wrong, say so before requesting the next thing. The agent has context on the most recent change and can fix it faster than it can untangle three changes back.

Approving gated tasks

Some tasks pause for your approval before executing. These are tasks that affect things outside the app itself — adding integrations, modifying workspace settings, anything that the agent flags as needing a human in the loop. When this happens, the chat will show a task card with an Approve or Skip choice. Read what the task does and decide.

Adding secrets and API keys

If your app needs to call an external service — Stripe, OpenAI, an internal API — the app builder asks for credentials mid-build. The build pauses on a form that names the secret, explains what it’s for, and gives you a field to paste the value.
Secrets you provide are stored encrypted and only available to your app at runtime. They aren’t exposed in the build chat or to other apps.
If you don’t have the credential handy when asked, you can skip the form and the build continues without that integration. You can add the secret later by re-running the build with the secret in hand, or by adding it from the app’s settings.