> Documentation index: https://docs.beetl.io/llms.txt

# Release notes

> What changed, newest first.

Source: https://docs.beetl.io/getting-started/release-notes/
Last updated: 2026-11-10

Newest first, dated by the day each change shipped. Beetl ships continuously, so there are no
numbered releases.

## November 2026

**2026-11-09: Documents.** A File Set now stores your files, and a file processor turns them into a
dataset. CSV, NDJSON and Parquet files import automatically, as before. PDFs, Office files, images
and other documents are read by AI into the fields you define, one row per document, and a review
tab lets you correct what Beetl is unsure about. Excel workbooks can be mapped by cell ranges
instead, with no AI. File processors appear on Home, and the assistant and MCP clients can read
processors and their extracted records. File Sets no longer have processing options or an import
status, and a changed schema no longer deletes and recreates the dataset. See
[Documents and spreadsheets](https://docs.beetl.io/sources/documents) and [File Sets](https://docs.beetl.io/sources/file-sets).

**2026-11-03: Connect SDK 0.6 and write mode.** Integration packages built before SDK 0.5 are
rejected and must be rebuilt with the current SDK. You now choose a sync's write mode, Append or
Replace, in Beetl for each sync, and Merge is no longer available for syncs. An Append sync
continues from its last checkpoint, and a Replace sync starts over and writes the full output. See
[Build integrations](https://docs.beetl.io/connect).

**2026-10-27: Standalone apps.** An app can open full screen at its own address, with an assistant
beside it that can change only that app's own settings and inputs. Right-click an app on Home and
choose **Copy standalone URL** to share the address with colleagues. See [Apps](https://docs.beetl.io/apps).

## October 2026

**2026-10-23 — Reports.** Reports build PDF documents from your data with a Typst layout and SQL
bindings, on demand or on a schedule, and appear as nodes on Home. Automations list their findings
and can render them through a report template as a PDF. The assistant shows reports and data-flow
views beside the chat, and MCP clients can read and manage reports and trace lineage. See
[Reports](https://docs.beetl.io/reports) and [Automations](https://docs.beetl.io/automations).

**2026-10-21 — Apps.** Apps are applications Beetl provides. They read your datasets, run on a
schedule or when a dataset updates, and publish results back as datasets. Pallet Planner is the
first. The assistant can operate app screens, with your confirmation for changes, and MCP clients
can read apps and their runs. See [Apps](https://docs.beetl.io/apps) and [Tool reference](https://docs.beetl.io/mcp/tool-reference).

**2026-10-20 — Schedules follow daylight saving time.** Automation and sync schedules run
correctly across clock changes, and timezone fields have a searchable picker. The default managed
model is now Claude Haiku 5.5. See [Automations](https://docs.beetl.io/automations).

**2026-10-12 — Notebooks over Flight SQL.** Python notebooks can query your datasets directly with a
read-only Flight SQL key created under Settings → User.

**2026-10-09 — Monthly usage.** Settings → Tenant → Usage shows the month's sync runs, pipeline
minutes and AI credits against your plan.

**2026-10-05 — Long chats are summarized.** When a conversation nears the model's context window,
earlier turns are summarized, and a context meter in the composer shows how much is used.

**2026-10-01 — The assistant gets tenant instructions and a stop button.** A TenantAdmin can write
up to 4,000 characters of workspace conventions under Settings → Tenant → AI, and the assistant
reads them on every turn. Chat turns can be stopped while they run. See
[AI in a tenant](https://docs.beetl.io/concepts/ai-settings#assistant-instructions).

## September 2026

**2026-09-29 — Managed AI.** A new tenant gets working AI with no setup, paid from monthly plan
credits. A tenant can bring its own key instead, and users choose the model and effort per chat
session and per automation. See [AI in a tenant](https://docs.beetl.io/concepts/ai-settings).

**2026-09-24 — External datasets.** A TenantAdmin can register a PostgreSQL database, and users
register its tables as datasets that are queried live, with nothing copied.
See [External datasets](https://docs.beetl.io/sources/external-datasets).

**2026-09-22 — Automations over MCP.** MCP clients can create, run and read automations, and
connect at `https://app.beetl.io/mcp`. A `read` key now lists only the read tools. See
[MCP setup](https://docs.beetl.io/mcp/setup).

**2026-09-15 — Registered datasets.** Delta, Parquet, CSV or JSON files already in your object
store can be registered and queried in place. See [Registered datasets](https://docs.beetl.io/sources/registered-datasets).

**2026-09-10 — Integrations run in Beetl's sandbox.** Every build, connection test, OAuth step and
sync of a Connect package runs in an isolated sandbox that can reach public hosts over HTTPS. See
[The sandbox](https://docs.beetl.io/connect/sandbox).

**2026-09-08 — Ingestion rebuilt.** Connection Types, Connections, Configured Syncs, File Sets and
Output Links replace the old connection model. Webhook is the only built-in connection type; every
other system arrives as a Connect package. The older built-in connection types (PostgreSQL, HTTP
Feed, Server-Sent Events, Business Central and SAP Business One), the edge connector and file
connections were removed. Files now go into File Sets, up to 5 GiB per file. Connections can be
edited after creation, syncs have their own schedules, and sync runs have history and logs.
Existing connections were not migrated; their datasets were kept. See
[Connection types, connections and syncs](https://docs.beetl.io/concepts/connections-and-integrations).

## August 2026

**2026-08-27 — Bring your own object storage.** A TenantAdmin can register the tenant's own
S3-compatible buckets under Settings → Tenant → Object storage. Beetl's hosted store remains the
default. See [Use your own bucket](https://docs.beetl.io/concepts/tenants-and-roles#use-your-own-bucket).

**2026-08-25 — The assistant edits the page you are looking at.** The assistant can read and change
what is on screen in Query, Home, the pipeline editor and the automation editor. Edits flash where
they landed and can be reverted for the turn. See
[Building with the assistant](https://docs.beetl.io/chat/building-with-the-assistant).

**2026-08-25 — API key scopes collapsed from three to two.** `read_only` and `draft` both became
`read`; `production` became `write`. Existing keys keep working.

**2026-08-20 — Scheduled automations run on time.** A fault that could hold back scheduled runs was
fixed. Each run now reads a shortened version of the previous run's report rather than its full
transcript.

**2026-08-19 — A simpler sidebar, and optional pipeline destinations.** The sidebar is now Home,
Chat, Automations, Dashboards and Query, and connections, datasets and pipelines are managed from
the Data Landscape graph on Home. Separately, a pipeline can now have no destination at all, which
makes a sources-and-stages exploration pipeline a first-class thing.

**2026-08-18 — Tags on connections, datasets and pipelines.** Tags are set per entity and filtered
from the graph toolbar on Home. See [Data Landscape](https://docs.beetl.io/query/data-landscape).

**2026-08-16 — Automations shipped.** A recurring, observe-only investigation described in plain
language, with a cron schedule, a test-before-save run, and a report that links every query it ran
to the result behind it. Automations belong to the workspace rather than to the person who created
them. See [Automations](https://docs.beetl.io/automations).

**2026-08-14 — The previous interface was retired.** The app at `/web` is now the only interface.

**2026-08-13 — New sign-in.** You now sign in on a dedicated sign-in page, and signing out ends the
session there as well. The app itself has no password fields.

**2026-08-13 — MCP for your own clients.** Each user creates their own MCP API keys, and each key
has a scope that decides which tools a client can call. See [MCP setup](https://docs.beetl.io/mcp/setup).

**2026-08-11 — "Connector" was retired from the UI.** "Integration" is the official term for a
custom connector, and "Connection" remains the link to one source system. See
[Connection types, connections and syncs](https://docs.beetl.io/concepts/connections-and-integrations).

**2026-08-05 — The assistant can read a wiki.** The assistant can read and search the platform
reference documentation and a generated page for each deployed pipeline. It cannot write to them.

## July 2026

**2026-07-30 — Per-tenant object stores.** Each tenant has its own object stores. Datasets stay in
the store they were written to, and changing the default store does not move existing data.

**2026-07-24 — The assistant became persistent.** A collapsible right-hand panel on every page
keeps one ongoing assistant conversation per user, and the page you are on can share what it shows
with the assistant.

**2026-07-20 — A new app.** The product moved to a new interface, with the Data Landscape graph as
the home page and embedded Superset dashboards as a new section.

## Earlier

**2026-06-03 — Chat asks before it deploys.** Before the assistant deploys a pipeline, chat shows an
Allow or Deny card, and nothing deploys until you choose Allow.

**2026-06 — Pipeline variables and run context.** A Variables panel for `vars.*`, a run-values
dialog for `run.*`, `fn.today()` / `fn.now()` / `fn.uuid()` helpers, and per-source trigger
mapping. See [Template variables](https://docs.beetl.io/pipelines/template-variables).

**2026-05-23 — One file, one connection, one dataset.** File upload was rebuilt around explicit
user-supplied dataset names, a schema-checked Replace operation, and a clear refusal of unsupported
formats.

**2026-05 — Saved query results, charting, and lineage.** Every query result is saved for 7 days
with its own URL, can be charted, and shows where each cell's value came from, with drill-down to
the records behind it.

**2026-05 — Server-Sent Events connections.** Beetl could subscribe to an event stream and write its
events to a dataset. This connection type was removed on 2026-09-08.
