Skip to content

The agent

Ronja is two things: the product where your data lives, and the agent you talk to. This page is about the agent — the assistant who answers questions about your data, analyzes it, and, when you ask, builds things your whole team can keep using.

You work with Ronja in explorations — conversations where you ask questions in plain language. A fresh exploration greets you with “Let’s start analyzing” and a few example prompts; from there, you just type. Everything Ronja can reach is organized in features — named bundles of tables and related resources — and she uses them as her working context. If your organization has more than one Space, what she finds when she goes looking is what is in the Space you’re in. If you are an Admin, she can also look things up in Ronja’s own API when a question falls outside what her built-in tools cover — read-only, running as you with your own permissions, and with nothing to set up (see Let Ronja call your API).

Ronja doesn’t just hand you an answer. Each reply opens with a collapsible work block — “Thought for … · N steps” — where you can see the steps she took and the reasoning between them.

While she is still working, the steps she has finished fold into that block and the step in progress sits below it under a Thinking heading, with its step count and a running clock. Some single steps take a while — writing a whole app file, or a long query coming back — and during one of those nothing new appears on screen. When that happens the heading adds what she is still doing, such as still writing an app file, so a long quiet stretch reads as work in progress. It clears as soon as the next step lands.

In Standard and Deep analysis, a substantive answer arrives as a titled, laid-out answer rather than a wall of text, and it fills in as she writes: the title and the headline figures land first, the rest follows. Depending on the question, it can hold:

  • Key figures at the top — each with its label and, where there is something to compare against, the change.
  • A chart beside the sentences that explain it, rather than a chart and its explanation separated by a scroll. A chart or picture Ronja drew in her own Python can sit in the answer the same way, beside its explanation, rather than only in the card for the code she ran.
  • Caveats — a short strip naming the limits of the answer: a month that is missing, a currency that was not converted.
  • How this was computed, collapsed, holding the exact queries behind the numbers. Open it when you don’t yet believe a figure.
  • Sources, naming every table the answer drew on — with its row count and when it was last updated, taken as the answer landed rather than from an earlier look. A table nobody has refreshed in a week is badged stale, one whose last build failed build failed, one whose updates keep failing while it answers with its earlier data not updating, and one an upstream rebuild has invalidated needs rebuild — often the most useful thing on the page, because a broken build still shows a perfectly fresh date. On a computer, hovering a source tells you in one line what that table is, and why a failed build failed; on a touch screen the reason reads under the source instead. A table you don’t have access to is still named, without the figures.
  • Suggested follow-ups at the bottom, in two groups that do different things. Under Continue here, small outlined chips carry the obvious next question — click one and it is sent as your next message in this same conversation, word for word as it reads. Below them, the dark branch buttons (“Explore this in a separate thread.”) open a tangent instead: a private branch for a side question you don’t want to pull the main thread into. Either way you skip the retyping; the difference is whether the conversation you are in continues or a new one starts.

Not every reply is laid out that way, and nothing is missing when one isn’t: a short exchange — a clarifying question, a one-line confirmation — comes back as plain text, so does the Deep analysis turn in which Ronja writes the Methodology and hands the conversation back to you (the laid-out answer comes after you reply — see Standard, Deep analysis, and Build), replies in Build mode are always plain text, so is a Standard or Deep analysis turn that closes with an inline app (the finding is the text above the frame; the app is the part you poke at), and so is anything Ronja answers without you watching — the output of a Saved Agent or automation run, and her answers in Slack and Microsoft Teams.

Tables, charts, and reference pills appear throughout — inline links to the tables, workflows, and other resources she used or created. Clicking a resolved pill opens that resource in a side panel, so you can inspect it without leaving the conversation. The usual actions — copy, comment, “not helpful” — sit under the answer as they do under any reply.

When you ask for a picture rather than a chart — an illustration, a mockup, an icon — Ronja can also generate an image from your description and show it inline in the reply, saved as a file you can download. (Use charts, not generated images, for plotting data.) Image generation is rate-limited, so ask for one image at a time unless you specifically want variations.

A chart or picture Ronja draws in her own Python — an interactive chart, or a statistical plot — shows in the conversation too, in the card for the code she ran, and is saved as a file you can download. One run can draw more than one: each is its own chart, stacked under that same code card and headed by the title Ronja gave it. An interactive chart drawn this way has its own small toolbar: Download (saves it as a PNG), then — when the chart has axes to move — Zoom In, Zoom Out, Zoom, Pan and Reset, and last Expand, which lifts the chart over the conversation. Close it with Collapse, a click outside, or Esc. A pie or a 3D figure shows Download and Expand alone. It is not the toolbar a chart Ronja drew from a query has: there is no Show table and no Copy link to chart, because the chart is a picture of what the code drew — there are no rows behind it to show, and it has no page of its own to link to. A picture — a plot from a statistical library — shows as an image with a download chip under it, and opens full size in a new tab when you click it.

Both of those are still pictures, and there is a third answer for when a picture isn’t one. Ask to change what you are looking at — filter it, pick a period, move a slider — and Ronja answers with an inline app: a small interactive app written into the conversation, yours to work rather than read.

She can work from a file as well as from a description. Attach a photo and ask for a variation of it, point her at a slide in a PDF or a deck, or ask her to change an image she just made — she uses the file itself, not a description of it. Images and document pages are used as visual references; a spreadsheet or CSV is read as data, so it can inform what the picture shows without being drawn as a grid of numbers. The card above each generated image lists what it was based on.

Ronja checks the figures she writes from her queries and metrics — anywhere in a reply, not only in a laid-out answer. When a figure comes from the query results and metrics she read for this answer (a total, an average, a share, a change between two periods), she writes it together with the calculation behind it. Sometimes she writes only the calculation and the figure is worked out for her; sometimes she writes her own figure beside it, and it is recomputed to check. Either way the figure is recomputed from those results and underlined — in a sentence as soon as it arrives, and in a laid-out answer (the key figures at the top, a highlighted box, the caveats) once the answer has finished arriving.

Hover over an underlined figure, or move to it with the Tab key, and a small card tells you where it came from:

  • VALUE — the figure as it reads in the reply.
  • COMPUTED FROM — what it was calculated from, in words: for example “sum of units across 12 rows of ‘Monthly units 2026’”, with the filter when only some rows count (“where region = ‘South’”).
  • FORMULA — the arithmetic, when there is more to it than one total or average.
  • NOTE — shown when there is something to know (see below).

A solid underline is a figure recomputed from the query results or metrics: one Ronja asked to have calculated, or one she wrote herself that matched. Three other looks mean something needs your attention:

  • Corrected — an amber underline with a small !. The figure Ronja first wrote didn’t match her own query results, so you see the recomputed value instead. The card’s NOTE says “Ronja corrected this from …” and names the figure she originally wrote.
  • Not verified — a dashed grey underline. This is the figure exactly as Ronja wrote it, and it has not been checked. It appears when the figure could not be recomputed, or when the query results don’t settle which reading is right — for example whether a column already holds thousands, or already holds a percentage — so the figure is shown as written rather than guessed at. A percentage read straight from a metric can show as not verified for the same reason, when the metric’s definition can’t settle whether its values are already percentages. The card’s NOTE says “Not verified — the number the assistant wrote”.
  • Couldn’t compute — a wavy amber underline with a small !, showing the calculation itself in place of a number, because there was no number to show. The card shows the EXPRESSION and a NOTE saying why when Ronja can tell — “Ronja couldn’t compute this: too long to compute”, “Ronja couldn’t compute this: a column not in this answer’s queries” or “Ronja couldn’t compute this: a filter matched no rows” — and otherwise “Ronja couldn’t compute this from the query results”.

While a reply is still arriving, a figure Ronja is still working out shows briefly as a grey …. Plain arithmetic that doesn’t come from your data — a square root, a product of two numbers she typed — is shown as a plain number, without an underline. Press Esc to close a card.

In a conversation, when a figure in a reply was corrected, couldn’t be computed, or was shown as written because the results couldn’t settle its reading, Ronja adds a short correction at the end of her reply once she has finished: which figures changed, and anything she had concluded from them that no longer holds. Nothing she already wrote is rewritten — the flagged figures stay as they are, and the correction follows them.

A number with no underline was not checked this way. That includes figures that did not come from the queries and metrics Ronja read for this reply — a figure from an earlier reply, from a note, or from your own message. The tables and charts in an answer are not underlined either: they are drawn straight from the query results rather than written by Ronja.

Outside the chat, figures are plain numbers. A reply posted in Slack or Teams carries the figure the chat would show — the recomputed value, where there was a correction — without the underline, and the short correction follows the reply in the same message, as its own paragraph. The same goes for the summary an automation’s run records, and for the answer an agent hands back: each carries the checked value. Before any of these goes out, a figure in it that doesn’t match the query results is sent back to Ronja once to fix, so she rewrites the reply around the right number rather than having it swapped into a sentence she wrote around the wrong one. In an email, a note or any other message Ronja writes for you, a figure she had calculated is filled in with the calculated value, and a figure she wrote herself goes out as she wrote it, unchecked. Copying a reply copies each figure as it reads on screen, and a reply that got a short correction is copied with the correction after it.

Every exploration runs in one of three modes, chosen when you start (Build can also arrive mid-conversation — see the modes page): Standard for everyday analysis, Deep analysis for rigorous, methodology-first investigations, and Build for creating durable resources. See Standard, Deep analysis, and Build for what each unlocks and who gets Build.

Ronja acts autonomously for reads and analysis, but consequential actions pause for you. When she proposes a gated action, the conversation stops and a strip appears above the composer with a plain-language summary — “Send 1 email”, “Clear table” — and up to three choices: Reject, Approve, and Approve for session (approve this and don’t ask again for these tools in this conversation). Expand the strip to review exactly what will happen: draft changes, an email preview, or the full set of things a delete would affect.

A short list of actions asks every time and cannot be remembered — changing the organization policy, granting access to an Access Group, a Feature’s tables or a folder in Files, opening an Automation’s email trigger to any sender, creating a Ronja API credential, and making or refreshing a managed database’s dev copy. On a strip carrying one of those, Approve for session is not shown: the choices are Approve and Reject, and the strip says which action cost it the button. Those same approvals also need a person signed in to Ronja — see Asking Ronja in a chat is not a way round it.

A turn can mix gated and ungated steps. The strip only ever asks you to approve the gated ones — the rest go ahead while the strip waits, so a read or a lookup Ronja lined up alongside a gated action doesn’t sit idle waiting for your click. You’ll see those steps complete in the conversation as usual.

Work in your own private feature doesn’t stop to ask

Section titled “Work in your own private feature doesn’t stop to ask”

Whether a step pauses depends on who else it affects. Inside a feature that is private and yours, Ronja edits, publishes and deletes without asking: none of your colleagues can see that feature (only your admins can), everything she deletes goes to the trash for 30 days, and you can restore it yourself. Building there should feel continuous, not like signing a form every minute.

The moment the same action touches something shared — a note, table, data app, secret or Agent in an organization feature — the strip comes back. So does anything in someone else’s private feature: even as an admin, editing a colleague’s private work asks you first. And if Ronja can’t tell what she’s about to touch — a stale reference, a resource she can’t read — she asks rather than assumes.

Deleting a whole feature, clearing a table, and sending email always pause, private or not.

Where a step genuinely does wait on your click — because it can’t happen until the approved action has — it’s listed below the buttons as “Also in this turn: …”. It needs no approval of its own and simply runs once the action is approved, and Approve for session never covers it. Expand the strip and those steps appear too, under “For context — included in this turn, no approval needed” — there to read, not to decide on.

Most approvals don’t happen in the chat at all. When a workflow needs a person to sign off before it does something consequential, it stops part-way through its run and asks — and that decision is made on the run’s own page, not on the strip. See Approve a workflow run.

Sometimes Ronja needs information rather than permission. In that case she presents a form to fill in, and the conversation waits until you submit it.

Every completed assistant reply has a thumbs-down button — “Not happy with this response”. Pressing it posts a visible chip in the thread, and Ronja immediately analyzes what went wrong in the same conversation. The Ronja team is also notified, so recurring problems get fixed at the source.

Some users see a Model dropdown and an Effort pill (Low / Medium / High) above the composer. The dropdown names each model and where it runs (a Claude model also shows its running version), for example Opus 5.5 · EU; every model runs in the EU. A model marked Experimental (today GLM) is less proven than the others: answers and tool use can be less reliable. Availability is governed: your administrators decide who can change these, and organization policy may adjust what actually runs — you’ll see a banner such as “Running {applied model} instead of {requested model} due to company policy” when it does. See Credits and AI spend for how this is managed.

Not every model has an adjustable effort level: the Effort pill is greyed out for Haiku, which doesn’t use thinking effort. Your model choice still applies as normal.

A Saved Agent carries its own model tier and reasoning effort, set by asking Ronja when you package or edit it — or from your own code over the API. Those are what it runs with wherever it runs: from an automation, from a workflow, and in the Chat with Agent panel on its detail page, where you work with it directly. The composer’s Model dropdown and Effort pill govern ordinary conversations with Ronja, not a Saved Agent’s own settings — including the conversation that Edit in chat opens, which is a chat about the Agent rather than the Agent running.

One naming distinction worth learning early: “Ronja” and “the agent” always mean the assistant you chat with. A Saved Agent is a resource — a reusable prompt, model tier, reasoning effort, and set of tool grants that you create by asking Ronja to package one, then run from other conversations or automations. See Create a saved agent.