Datasette 1.0a30 Coordinated Release Suite · history
Version 1
2026-05-25 05:25 UTC · 18 items
What
On May 24, 2026, Simon Willison shipped a coordinated trio of releases built around Datasette 1.0a30 [1]: the core alpha introducing a keyboard-triggered "Jump to..." menu (press "/"), the datasette-agent 0.1a4 plugin that wires an AI chat interface directly into that menu [2], and datasette-fixtures 0.1a0, a new testing helper for plugin developers [4]. The releases are tightly interlocked — 1.0a30 introduced the plugin hooks (jump_items_sql() in Python, makeJumpSections() in JavaScript) that datasette-agent immediately exploits [1][2]. A live demo is available at latest.datasette.io, and the agent interface is accessible at agent.datasette.io for GitHub-authenticated users [2].
Why it matters
The release demonstrates a deliberate platform strategy: Willison is using Datasette's new extensibility hooks to make AI-assisted data exploration a first-class, plugin-delivered feature rather than baking it into the core. The fixture helper lowers the barrier for third-party plugin authors to write tests, signaling that the 1.0 plugin ecosystem is being treated as a serious developer surface worth investing in.
Open questions
How does datasette-agent 0.1a4 integrate with LLMs under the hood — which models or APIs does it call, and what are the privacy implications for data sent through the agent interface? [2][5]
Will the jump_items_sql() and makeJumpSections() hooks remain stable as Datasette moves toward a 1.0 stable release, or are they still considered experimental alpha API? [1]
Beyond the wontf1x retweet [3], has the broader data-tooling or AI community picked up on datasette-agent, and are other plugin authors already experimenting with the new jump menu hooks?
The datasette-fixtures plugin can run without a full Datasette install via uvx [4] — how does this interact with plugins that depend on Datasette internals, and what are the limits of that pattern?
Narrative
Simon Willison released three coordinated Datasette packages on May 24, 2026, each designed to reinforce the others. The anchor release, Datasette 1.0a30, adds a "Jump to..." overlay menu triggered by pressing "/" anywhere in the Datasette UI, currently live and testable at latest.datasette.io [1]. The menu is designed to be extensible from the start: a new Python plugin hook, jump_items_sql(), lets plugins inject custom search results into the overlay, and a companion JavaScript hook, makeJumpSections(), allows plugins to add whole new sections to the menu [1].
datasette-agent 0.1a4 is the flagship consumer of these new hooks. The plugin places a "Start a new agent chat" entry directly inside the Jump to menu, meaning any Datasette instance with the plugin installed gets a conversational AI entry point accessible via a single keystroke [2]. The agent interface is publicly hosted at agent.datasette.io and requires GitHub authentication [2]. Community amplification was immediate, with at least one Twitter account highlighting the release as a notable milestone in conversational querying over SQLite [3].
The third release, datasette-fixtures 0.1a0, targets a different audience: plugin developers writing test suites. Datasette 1.0a30 added an internal datasette.fixtures.populate_fixture_database(conn) helper, and datasette-fixtures wraps that API to make it directly importable in plugin test code without requiring a running Datasette server [4]. Willison notes it can be invoked via uvx with the --prerelease flag, meaning a plugin author can spin up a fixture database to test against without even installing Datasette as a dependency [4].
Taken together, the three releases sketch a platform arc: the core gets a general-purpose extensibility hook (the Jump menu), a flagship first-party plugin demonstrates its highest-value use case (AI chat), and a testing utility lowers the floor for third parties to build confidently on top of the new API surface. Whether the plugin ecosystem responds — and whether the hooks prove stable enough to build on before 1.0 stable — remains the open question.
Timeline
- 2026-05-23: Simon Willison announces the first alpha of Datasette Agent on Twitter; community amplification begins [6][3]
- 2026-05-24: Datasette 1.0a30 released with new '/' Jump to menu, jump_items_sql() Python hook, and makeJumpSections() JavaScript hook; demo live at latest.datasette.io [1][7]
- 2026-05-24: datasette-agent 0.1a4 released, integrating AI chat into the Jump to menu; live at agent.datasette.io with GitHub auth [2][8]
- 2026-05-24: datasette-fixtures 0.1a0 released, wrapping the new datasette.fixtures.populate_fixture_database() helper for plugin test suites [4]
Perspectives
Simon Willison
Presenting the three releases as a coordinated platform push: new extensibility hooks in 1.0a30 enable both the AI agent plugin and improved developer tooling for the broader plugin ecosystem. Tone is neutral and technically precise, emphasizing the live demo and the developer-experience improvements.
Evolution: consistent — single author, first synthesis
wontf1x (@wontf1x)
Positive amplifier framing datasette-agent as a meaningful milestone: 'conversational queries over SQLite, plugin-extensible, open source'
Evolution: consistent — single data point, first synthesis
Sources
- [1] datasette 1.0a30 — Simon Willison (2026-05-24)
- [2] datasette-agent 0.1a4 — Simon Willison (2026-05-24)
- [3] Simon Willison shipped the first alpha of Datasette Agent. Conversational queries over SQLite, plugin-extensible, open s... — reactive:datasette-1030-release (2026-05-23)
- [4] datasette-fixtures 0.1a0 — Simon Willison (2026-05-24)
- [5] Datasette Agent, an extensible AI assistant for Datasette - Datasette Blog — reactive:datasette-agent-launch
- [6] I released the first alpha of Datasette Agent — reactive:datasette-agent-launch
- [7] Release: datasette 1.0a30 — reactive:datasette-1030-release
- [8] Release: datasette-agent 0.1a4 — reactive:datasette-1030-release