Skip to main content
Alongside Genie Apps and Genie Agents, a workspace can also hold Genie Tools — small internal apps with a screen, but nothing you build or deploy. You describe what you want to Genie AI (“a table of orders, and a form to add one”), and Genie renders it live, right there in the chat and on its own page in your workspace.
Open Projects in the workspace sidebar and choose Tools in the type menu to see every Genie Tool in the workspace, or open one directly at its own page under /workspace/<your-workspace>/tools.

How it’s different from an App or an Agent

The short version: an Agent runs on its own and has no screen; a Tool has a screen and only runs when someone opens it. Both can read and write the exact same data — a Genie Agent can drop new rows into a workspace table overnight, and a Genie Tool can show them the next morning, with nothing to wire up between the two.

Building one

There’s no separate form-based builder — Genie AI is how you create and change a Genie Tool, the same conversation you’d use for anything else in Genie:
  • “Build me a tool with a table of orders and a form to add one”
  • “Add a button that marks the selected order as shipped”
  • “Show a running total of orders at the top of the page”
Genie AI shows the tool working right in the chat as it builds it — a live table, a working form — not just a description of what it did. Once you’re happy with it, it’s saved and appears on the Tools page — private to you until you share it, the same as a Genie Agent: open its settings menu (⋯) and choose Everyone in the workspace or Only selected people. An Ask Genie AI button on the tool’s own page reopens the exact conversation you built or last edited it in, instead of starting a new one from scratch.
Because there’s no separate editor, changing a tool is always a conversation: “add a column for the customer’s phone number” or “remove the delete button, I don’t want anyone deleting orders by accident.”

What a Genie Tool can show

A tool’s page is built from a small set of building blocks, and Genie AI picks and arranges them for you: A Form can also have a photo field that takes a picture, and an AI step can look at it — photograph a meal and have the tool estimate its calories. KPI tiles keep a steady width as numbers load, so three KPIs sit in a row instead of full-width bands. Every block handles the in-between states on its own: a table shows a loading skeleton while it fetches, says plainly when it’s empty, and if something fails, the rest of the page still renders with the failure named next to whatever broke — one bad block never blanks the whole tool. A Table block is searchable and sortable, with sticky headers so a long list stays readable — and where the tool turns it on, a checkbox column lets you select rows to act on together, like exporting just the ones you picked. A cell holding a single link renders as a clickable thumbnail for an image, a named download link for a file, or a plain link for anything else, instead of raw text. A JSON block reads a value instead of dumping it: an object’s fields as label and value pairs, nested values under their key, and a list of objects as titled cards. Show raw JSON switches to exactly what came back. A Table can also show a whole class of your knowledge model — say, every contract Genie found in your documents — as a paged grid, sorted by name or by when it was created. It shows the total count (or “5,000+” once it’s past what’s counted), locks a row whose source documents you can’t all read, and links each entity to its full card. Export downloads the whole class, except when the class is too large to count, where the export is refused rather than cut short. A class grid has no search box or filters. Opening a page is faster the second time. When a page’s load asks Genie AI’s model the same question about the same data, it reuses its own earlier answer, for up to a day, instead of asking again — so a page that summarizes reports doesn’t wait on, or bill you for, the same answer on every open. The answer is fresh again as soon as the data it read changes, and pressing Refresh, Retry or running an action always asks again. Web searches and website downloads are never reused. Uploads — into an Import block, a file field in a Form, or picked from your knowledge base — take files up to 200 MB. Anything large is compressed automatically to keep things fast; ask Genie AI to turn that compression up or down for a specific file field if the default doesn’t suit what you’re uploading.

Selecting a record

Pressing a row in a List, Table, Calendar, Kanban, Org chart, or Map selects its record for the rest of the page: a Details block shows that record’s full fields, a Comments block shows its thread, a Form can follow it to edit or act on it directly, and any block can be shown only while the selected record matches something specific. A List can also be linked to another one — showing only the rows that belong to whatever’s selected, like a project’s own tasks under the project it belongs to. A Form that follows a selected record can also prefill itself with that record’s current values, for editing it in place rather than only creating new ones — only the fields you actually change are sent back, so a value another action changed while the form was open is never overwritten with a stale one.

Forms behind a button, and record sheets

A form doesn’t have to sit on the page. A Table, List, Calendar, Kanban, Org chart, or Map can offer its forms as buttons — an Add on its heading row, or the first thing you see when it’s empty — and the form opens in a dialog or a side sheet, whichever suits it, so the grid stays the star of the page. On a Kanban a card added from a lane starts in that lane, and on a Calendar an event added from a day starts on that day. Opening a row opens its record as a sheet: the record’s fields, its edit form, its comments, and anything else on the page that’s about the selected record are gathered there instead of waiting in cards under the grid. Submitting a form in the sheet closes it and confirms with a short message. Every Table has a sheet, so a row whose cells cut a long value short can always be read in full. A page that reads your knowledge base runs steps that write or send only from their own button — opening or paging the page never triggers one.

A tool from a class of your knowledge

A knowledge model class can become a tool without anyone describing it. Choose Open as tool on a class in the Ontology’s classes panel and Genie builds a list page — a paged grid of the class’s entities — plus a record page for each one: its card, its process when the class has one, and an edit form. Or choose Build with Genie AI and ask Genie AI to shape it further. A form on such a page can ask for its fields automatically: one field per property of the class, typed the way the class defines it, so a property you add later is in the form on its next load. Everything runs as you — what you can’t read or edit in the knowledge model, the tool can’t either. When Genie AI presses one of a tool’s actions from the chat, the result is a card naming the action, the tool, the values sent, and the tool’s answer, with a link to the page. A tool can also have an import block that reads one spreadsheet (Excel, Numbers, CSV, or TSV) into a class of your knowledge: you pick the file, map its columns to the class’s properties, and Genie creates or updates one entity per row.

Building a page’s flow

A form field can be conditional — asked only when an earlier answer matches, so a form can branch without a separate page for every path — or hidden, sending a fixed or templated value with no question asked at all. A field can also start with a default value, and a select or multiselect can read its options straight off another block’s rows instead of a fixed list you type in. Group blocks with Columns (2–4 side by side) or Tabs to keep a busy page organized, and add static blocks — a header, hero, call to action, feature list, partner logos, a pricing table, or link cards — for a tool that doubles as a small landing page. A Custom code block lets Genie AI write sandboxed HTML, CSS, and JavaScript for the rare view none of the above blocks cover; it runs isolated from the rest of the page and can’t reach your data or the network beyond what it was handed. A grid over one of your workspace’s tables gets a Mentions column once its rows hold free text. Each chip is a person, project or company the row’s words name; open it to see the entity, or press Not this one to take a wrong link off the row. See Knowledge model.

Pages, and a form that asks one thing at a time

A tool with a lot going on isn’t one long scroll: a page that’s both long and mixing different jobs — importing data, managing it, reading a chart — is automatically split into focused pages, typically Dashboard, Upload, Manage, and Analytics, each carrying just the blocks it needs. The page you’re on is part of the tool’s URL, so a link to a tool can point at one specific page, and a tool keeps up to 10 pages (see Limits). From six pages on, inside a workspace the tool’s pages appear in the workspace sidebar under a single Back row, instead of a bar above the tool. A page can also run as a form: instead of one long form block, it’s drawn one question at a time with a progress line, ending on a thank-you screen once it’s submitted — the same shape as a typeform.

Where the data lives

A Genie Tool’s data lives in your workspace’s own tables — a schemaless place to keep records that doesn’t require a Genie App or a Genie Cloud database at all. Ask Genie AI for “a tool with a table of leads” and it creates the table the first time something is written to it; there’s no schema to design up front, and adding a new field later is just as conversational as asking for the tool itself. These same workspace tables are also available as a step inside a Genie Agent — so an agent can gather leads overnight and insert them, and a Genie Tool can list them the next morning, both reading and writing the exact same rows. A table can also link to another table’s rows — a task pointing at its project, say. Ask Genie AI to link them and it keeps the link honest: a task can only point at a project that exists, a project that still has tasks can’t be deleted by accident (or, if you prefer, deleting it just clears the links), and blocks can show the linked project’s name right in the task’s row and sort or filter by it. Big tools stay fast to change: Genie AI edits just the pages and blocks you asked about instead of rewriting the whole tool, and refuses an edit that would overwrite a change someone else saved in the meantime.
A Genie Tool always runs using your own access — opening one, or having someone else open it, never hands out anyone else’s data or credentials. If a tool reads from one of your connected integrations, it does so with your own connection, exactly as if you’d asked Genie AI for that information directly.

Limits

Ask Genie AI things like “list our Genie Tools” or “add a row to the leads table” — it can read, build, run, and edit tools and their underlying tables on your behalf, the same as you can from the Tools page.

Genie Agents

Backend automations that share the same data nodes as a Genie Tool, including workspace tables.

Workspaces overview

Find your way around the workspace and its sidebar.