The assistant
Apps/Assistant and plans/The assistant

The assistant

A coding agent built into the dashboard. It works on one app environment at a time: it reads and edits the files, reads and writes the records, and checks Problems, the way an agent on your computer would through ib-apps dev and the MCP server.

Opening it

Every app page has the assistant's pill in the middle of the top bar. Click it or press ⌘K for the palette: type what you want and press Enter to start a conversation, resume an earlier one from the history, or use Go to to jump to a file or action that matches what you typed. The conversation docks on the right of the page, so Files, Preview and Logs stay in view while it works. Conversations are kept per environment.

KeyDoes
⌘KOpen the palette
TabIn the palette: switch between Build and Ask
⌘PIn the palette: Plan only
⌘.Stop the run
⌘↵Approve the waiting step (Run), or keep the changes
⌘⌫Decline the waiting step (Not yet), or revert the changes

Build, Ask and Plan

ModeWhat it does
BuildReads and changes the environment's files and data to do what you asked.
AskOnly reads: answers questions about the app's code, records and logs.
Plan onlyReads, then writes a plan as a checklist and changes nothing. Your reply is the go-ahead: it builds from the plan and ticks the steps off as it goes, shown as 4 of 6 in the pill.

In production the assistant only reads, whichever mode you pick: production's files change only by a deploy.

What it can do

  • Files: list, read, search, write, edit and delete the environment's files. Its edits are saves like the dashboard editor's: they sync to ib-apps dev, hot-reload development's dev server, and appear in Logs as sync events from the dashboard.
  • Data: the environment's MCP tools except vector search: list models, find, get and count records, create, update and delete them, run actions and read the event log. These calls are mcp events in Logs.
  • Problems: the environment's TypeScript and Shopify release problems, so it can check its own work after a change.

Records it writes are not embedded: a sourced vector field's stale value is dropped, as for a dashboard edit (see Vector fields).

Approvals

Some steps wait for you before they run, with Run and Not yet:

  • deleting a file;
  • changing a model's schema, since development's records are read through it as soon as it saves;
  • creating, updating or deleting records, and running actions.

Schema changes in development can be allowed for the rest of the conversation with Always allow schema changes in development, which the browser remembers.

Keep or revert

The first time the assistant changes a file, the copy from before is kept. Files marks what it changed (M modified, A added) and shows each file as an inline diff against that copy. Keep or revert each file, or all of them at once. Reverting puts back the copy from before, and works even after the conversation ends. Record writes and action runs aren't undone by a revert.

Long runs

One run makes at most 60 model calls and lasts about eleven minutes. Then it pauses and asks whether to carry on; continuing picks up where it stopped. Stopping, closing the tab or an approval it waits on never loses the conversation.

Who pays

The assistant uses anthropic/claude-sonnet-5.5. Every call is an ordinary request billed to the team as its Apps assistant key: a system key in the team's default project (or an internal Apps project when the team has none), made on first use. Its requests go through Directives, appear in the gateway's Logs under that key, and the panel shows each conversation's usage. It isn't part of the Apps plan.

Revoke the Apps assistant key on that project's API Keys page to turn the assistant off for the team. Keep and revert still work on what it already changed.