Skip to main content
A document with the table format is an editable typed grid. The data lives in the document body as an ordinary markdown pipe table, so it reads sensibly even without the grid. Ask your agent for a table and it creates the document with the right columns — see Document formats.
A table holds its own data. A base holds none — its rows are other documents in the brain, queried live. Both render as grids, so pick by what the rows are: values you are recording, or documents you already have.

The markdown underneath

The body is exactly one table: a header row, a separator row, then data rows. Context about what the table is for belongs in the document’s description field, not in the body.

Typed columns

Every column has a type, declared alongside the document. A column with no declared type is plain text. The types are enforced on every write, whether it comes from you editing a cell or an agent rewriting the whole document, so a number column cannot quietly accumulate text.

Formula columns

A formula column computes its value from the row’s number columns using simple arithmetic: revenue / spend, or (revenue - spend) / spend. Tatara computes the values and writes them into the markdown as ordinary cell text, rounded to two decimal places, so anyone reading the raw document — agent or human — sees the numbers without recomputing anything. A row with a blank input gets a blank result. Because values are materialized at write time, formulas are deliberately simple: numbers, references to number columns, and + - * /. There are no time-dependent functions — a today() would be stale the moment it was written.

Working with a table in the app

Click a cell to edit it. Committing a text, number, or date cell moves focus down to the same column in the next row, so you can fill a column top to bottom without reaching for the mouse. Checkbox and select cells commit as soon as you choose a value, and focus stays where it is. Add row appends a blank row at the bottom. Deleting a row that holds data asks you to confirm first; an empty row goes immediately. The toolbar carries a Filter button and a chip for each active filter. Text columns filter with “contains”, checkbox columns filter on checked or unchecked, and everything else matches exactly. Filters are view settings stored beside the document, not in the body, so filtering never removes a row from the document. A per-column menu handles structural changes to columns. Formula columns are computed and their values are saved back into the markdown, the same as on any other write.
A number that is too large or too precise to store in a cell is rejected with a toast: That number can't be stored in a table cell (too large or too precise). Use a plain value like 4200 or -1.5.
A table document has no properties rail and no width control, and its title is read-only on the document page. Rename it from the sidebar.

Bases

A live view over the brain’s other documents, rather than data of its own.

Agent skills

Install the skill that teaches your agent the table grammar.