Skip to content

Controlled AI editing and collaboration

Every change the AI makes goes through the same door: it proposes, you apply. There is no mode in which the AI edits your project without a person clicking a button — unless that person has switched auto-build on for a batch run, and even then only batches that pass validation go in.

A reply that would change the project comes with a Proposed changes card: one line of intent (“Add a bribe branch under Ferryman refuses with a trust check”) and the list of operations beneath it. The operations are a small, fixed vocabulary:

OperationDoes
add conversationA new conversation with its START node
add nodeA node under a parent, with dialogue, menu text, actor, condition, script
edit nodeChange any field on an existing node
link nodesA link between two nodes, including across conversations
delete nodeRemove a node (and dangling links to it)
add actor / add variableNew assets, with their initial values

Because the AI can only speak this vocabulary, it cannot do anything the editor could not — no format changes, no hidden fields, no rewrites of things it did not name.

In a project that targets LearnBrite, the AI also knows the space’s camera shots. Ask it to frame a conversation and it sets a default shot, overrides only the lines that need it, and says what it chose in plain words. See Camera shots and gaze.

Before you see the card, the proposal is run through a generation audit: the same checks as the validator plus a route check that every new node can reach an ending. Warnings are listed on the card; blocking problems disable Apply until the AI repairs them, and the project is untouched in the meantime.

  • Apply takes a snapshot first (before AI change in History), then applies the operations as one undo step. Ctrl+Z removes the whole batch.
  • Dismiss discards the proposal. Nothing happened.
  • If someone else is editing the same conversation right now, the card says who and holds; Apply anyway overrides.

After applying, the canvas replays the change: the AI’s ✦ cursor moves across the graph placing the new nodes, so you can see what landed where rather than hunting for it.

  • On the canvas — while a batch is being applied, a ✦ cursor with a name tag moves over the graph, and every other editor with the project open sees it too.
  • In the toolbar — the AI appears in presence alongside the people, so nobody is surprised by nodes appearing.
  • Yielding — if a writer is already working in a conversation the AI wants to change, the proposal waits for approval rather than applying automatically.
  • Ambient hints — with ⋯ → Show ✦ AI hints on, small ✦ pins appear on nodes where something looks off (an unreachable branch, a choice with no fallback). These are computed from the validator, not from a model, so they cost nothing and use no allowance.

Mention @ai in a reviewer note and it answers in the thread, with the scenario as context. It behaves as a reviewer: it reads and replies, it does not propose or apply changes from a note. Use it for “does this contradict the lobby scene?” or “suggest three alternative lines” — then take the one you like to the AI box if you want it applied.

Every applied proposal records a revision written by the AI, with the request that produced it. History shows it beside human revisions with an AI marker, so a month later the answer to “who added this?” is honest.

With Voice conversations switched on for the workspace, the AI box gains a microphone: dictate a request instead of typing, and optionally have replies read aloud. It uses the browser’s own speech services and no extra keys.

An admin can disable the AI copilot for the whole workspace under Settings & Labs. Projects keep every node the AI ever proposed — they are ordinary nodes — and the history entries remain.