Releases

Changelog

What each release of the kit added — and, because you will have renamed and rewritten your copy by the time you read this, how to bring it across.

First

How a release reaches your copy

You took a copy and cut it loose, so there is nothing to merge. There is something better: a copy knows which release it came from, and which parts of the kit it still has.

.rocketflare.json at the root of your app records both. Ask your coding agent for /rf-upgrade, or run it yourself:

zsh
pnpm kit:upgrade --apply
Lists what applies, what it skipped because you deleted it, and what it left for you to decide

It fetches the kit, rewrites its changes into your names, and drops everything belonging to a part you removed. The example agent you deleted stays deleted. Your database migrations, your Cloudflare configuration and your version number are yours and are left alone — it tells you what it left rather than guessing.

You do not have to remember to look. From 0.10.1 on, opening Claude Code in your app checks for a newer release once a day. When there is one, your agent mentions it once per session, with a line on what changed and a pointer to /rf-upgrade. It never starts an upgrade on its own, stays silent when you are offline, and ROCKETFLARE_UPDATE_CHECK=0 turns it off.

Then

The releases

Each one ships a porting note saying what changed and how to apply it. That note is what the upgrade reads, so it is the honest description — this list is the index.

  1. 0.21.0

    Agents can run at volume: many runs at once, batches of up to 100, fan-out inside a run, a usage row per model call with per-run budgets, and tool-loop policies that decide what happens when a run runs out. Plugin agents can ask people questions, and a replay script re-runs past runs against today’s code.

    Needs a change from you Schema change db · api · shared · cli · config · ui · docs

  2. 0.20.0

    Claude 5.x and GPT-6 work out of the box: each request now follows the model’s own rules for thinking, sampling and forced tools, OpenAI runs on the Responses API so tool calls work on every GPT-6 model, the defaults move to Claude Haiku 5.5 and GPT-6 Luna, and the cost estimates are corrected (Opus 4.5 to 4.8 were showing three times their real price).

    Needs a change from you api · shared · ui · docs

  3. 0.19.0

    Agents can ask typed questions with ctx.decide and branch in code on the answer and its confidence: TypeSafe Jev answers with calibrated probabilities as a new Decisions provider, every decision is recorded per run, and a triage-research example shows the pattern. Keyword search also stops tripping over the filler words in a question.

    Schema change api · shared · ui · db · config · docs

  4. 0.18.1

    The kit check now accepts a copy Launch has already provisioned with real KV ids, so a launched app passes its own gate without editing its tomls.

    config · docs

  5. 0.18.0

    A launch.kit.json contract describes how Launch scaffolds, develops, gates, ships and upgrades an app from the kit, and a conformance check runs in the kit and in every renamed copy.

    config · docs

  6. 0.17.8

    Wrangler moves up to 4.147, whose smaller CLI starts wrangler dev answering sooner and no longer calls GitHub when telemetry is off; your tomls don’t change.

    config

  7. 0.17.7

    Installing a plugin works in a freshly renamed app again: it checks a plugin’s minimum kit version against the kit release your app came from, not your app’s own 0.1.0.

    config

  8. 0.17.6

    The test suite now passes inside a coding sandbox’s ship gate: the bootstrap tests run as root, and the Neon relay test helper speaks TLS, so it reaches a remote Neon branch as well as your local Postgres.

    config

  9. 0.17.5

    A dropped Neon connection no longer takes the whole process down — the query fails and you retry it — and setting up database roles now waits for a fresh database instead of failing on its first connection.

    db · config

  10. 0.17.4

    Setup gets lighter in a coding sandbox: the bootstrap can skip steps it doesn’t need, --offline stops asking wrangler anything, and installs no longer download cloudflared until the first tunnel needs it.

    config · docs · scripts

  11. 0.17.3

    Tests stop timing out on slow machines: set TEST_LATENCY_FACTOR and every test, hook and teardown limit scales up — never down — so a coding sandbox running one test by hand gets the time it needs.

    config · docs

  12. 0.17.2

    CI waits on one runner, not two: the “already verified” check is now a step of the gate, a failed bundle upload no longer turns a live staging deploy red, and old release drafts are tidied away.

    config · docs

  13. 0.17.1

    Plugins bring their own packages: installing one adds the dependencies it declares, and upgrading it adds, re-ranges or removes them to match the new release.

    config

  14. 0.17.0

    Ship without waiting on the same checks twice: once an app’s code has passed, CI skips re-testing it, a version bump deploys on its parent’s green run, and production gets the exact build staging ran.

    config · docs

  15. 0.16.3

    Upgrades leave nothing for you to tidy: the kit writes its provenance file the way the linter wants it, so an upgraded app passes its own checks first time.

    config

  16. 0.16.2

    Your app numbers its own releases from day one: the rename starts it at 0.1.0 with an empty changelog, and the kit version it came from stays recorded for upgrades.

    config · docs

  17. 0.16.1

    Single sign-on only mode no longer signs people in on its own: the login page shows one Continue with button for your issuer, so signing in is always a click.

    ui · shared · docs

  18. 0.16.0

    One command, pnpm gate, is now every check an app has: the same gate before a commit, as its only CI job and in a coding sandbox, with app code proved to behave the same on the local and the deployed database driver.

    Needs a change from you api · db · config · docs

  19. 0.15.8

    The kit keeps its own tests to itself: a copy never inherits the checks that only make sense in the kit, so your app can release on its own version numbers without its test suite objecting.

    config · docs

  20. 0.15.7

    Run the whole test suite without Docker, against a throwaway Neon branch — so a coding agent in a container can prove its change before it ships — behind a safety check that refuses any database you didn’t explicitly name.

    config · db · docs

  21. 0.15.6

    Magic links survive corporate mail scanners: opening the link no longer uses it up, and signing in takes one press of a button, so Safe Links and Mimecast stop breaking every login.

    api · ui · docs

  22. 0.15.5

    Migrations run as a least-privilege database role: the role setup no longer tries to change attributes it cannot, so an app whose migration role lacks CREATEDB deploys cleanly.

    db

  23. 0.15.4

    An app’s deploy no longer fails its parity check: the deploy job runs the parity test alone, not the whole config suite that needs git history its shallow checkout lacks.

    config

  24. 0.15.3

    Apps deploy with one gate per commit: the default-plugins gate now runs only in the kit, a commit already green in CI skips the gate on deploy, and the neon test run no longer times out.

    api · config · docs

  25. 0.15.2

    Renaming the kit now works for any app name: hyphenated names get the right API-key prefix and a green gate, upstream references are kept, and CI proves a renamed copy on every pull request.

    api · config · docs

  26. 0.15.1

    A hyphenated app name no longer breaks the evals script after a rename, and a test now keeps the kit’s own name out of its code identifiers.

    config

  27. 0.15.0

    Choose your database driver per deployment. New apps deploy on Neon’s serverless driver with no Hyperdrive, which scales to fleets of apps and works from sandboxes with no TCP; existing apps keep postgres.js through Hyperdrive and can use any Postgres. Local development is unchanged, one command with no extra container, and CI now tests both drivers. Nothing to do on upgrade unless you want to switch.

    api · db · config · docs

  28. 0.14.0

    Sign in with your company identity provider: any OIDC issuer (Okta, Entra ID, Keycloak, Auth0) can be added beside or instead of the built-in sign-in. CI can deploy through an external deployer and hold no Cloudflare token or database credential. Bootstrap can use an existing Postgres such as a Neon branch with no Docker, dev ports are configurable, and migrations now run as Neon’s owner role. All of it is opt-in.

    api · ui · shared · db · config · docs

  29. 0.13.0

    Plugins can now ship agent skills. A plugin declares them in its manifest and they install into .claude/skills, so your coding agent can set up and run what the plugin adds. The connectors and analytics plugins are the first to use it.

    config · docs

  30. 0.12.0

    Plugins can now connect an organisation to outside systems: a callback route a third party can reach, a signed round trip for an admin’s consent, background checks of feature flags, and documents ingested by their upstream id so a re-sync updates rather than duplicates. The first plugins to use it connect Microsoft 365.

    Schema change api · db · docs

  31. 0.11.0

    Know whether a prompt or model change made the answers worse: eval suites run against the real chat and agents, score them with checks and model judges, and flag every regression against a baseline — and a thumbs-down from a real user becomes a new case in one command.

    Schema change api · shared · ui · db · cli · docs

  32. 0.10.1

    Your copy now tells you when the kit has moved on: open Claude Code and it mentions a newer release once per session, with what changed and where to start the upgrade.

    config · docs

  33. 0.10.0

    See why a run went wrong: every chat turn, agent run and AI job is now a span tree you can read from the terminal with one CLI command, and export as OpenTelemetry to Langfuse, Phoenix or any backend — your existing Langfuse keys keep working.

    Schema change api · shared · db · cli · config · docs

  34. 0.9.0

    A plugin can now offer a tool only to the organisations that turned it on, and keep each organisation’s own API key encrypted with the kit’s encryption rather than its own — the two things the new web-knowledge plugin needed to give agents web search.

  35. 0.8.1

    A coding agent working in a copy of the kit now starts lighter. The layer rules load only when it touches that layer, and the reference docs are named rather than pulled in whole, which leaves roughly 100k more tokens of context for your own work in every session.

  36. 0.8.0

    Writing a plugin no longer means guessing which kit releases it will work with. The kit publishes the surface it provides, a plugin records what it actually uses, and installing one compares the two — so an incompatibility is a named missing symbol with its replacement, found before a single file is copied, instead of a version range somebody has to keep true by hand.

    Needs a change from you config · docs · shared

  37. 0.7.0

    Writing a plugin is now writing against a contract rather than against the kit: it receives the database, the organisation, permissions and the rest as injected context, imports only from a handful of declared entries, and that surface has a version number and a generated reference of its own. Deleting an organisation now also removes what lives outside the database, which the cascade could never reach.

    Needs a change from you api · ui · shared · db · cli · config

  38. 0.6.1

    Install a plugin and the gate stays green. A plugin can now declare the lines a core file needs and the host writes them, so installing one leaves a project that builds — with nothing left on a checklist for you to remember.

    config · scripts · ci

  39. 0.6.0

    Analytics leaves the kit and becomes a plugin of its own — dashboards, cubes and the query API now arrive by installing a repository rather than by being born in your codebase. A fresh clone still gets all of it; what changed is that you can take it out.

    Needs a change from you Schema change shared · db · api · ui · cli · config · docs · scripts

  40. 0.5.0

    Plugins: a feature is a git repository copied into your app — never an npm package — that brings its own contracts, tables, routes, jobs, agent tools, pages and CLI commands. pnpm plugin installs, upgrades, removes and audits them; example-feature is the reference one, and it exists to be deleted.

    Schema change shared · api · ui · cli · db · config · docs · scripts · provisioning

  41. 0.4.0

    Human-in-the-loop agents: a run can stop and ask a person — approve this, which did you mean, fill this in — wait days for the answer, and carry on from where it parked. Every run has a page of its own that fills live while it works.

    Schema change shared · db · api · ui · config · docs

  42. 0.3.0

    Feature flags: ship a half-built surface to production dark, then turn it on for one customer at a time — a percentage rollout or a per-organisation override, changed from the admin area with no redeploy.

    Schema change shared · db · api · ui · cli · config · docs

  43. 0.2.0

    Groups: decide who in an organisation can see which documents and dashboards. Chat and agent runs now speak AG-UI on the wire, a long thread forgets deliberately instead of overflowing, and every document has a viewer.

    Needs a change from you Schema change api · ui · shared · config · docs

  44. 0.1.0

    The first release: the whole kit, and the upgrade path that lets a copy absorb what comes next.

    api · ui · shared · db · cli · config · docs

Every note lives in docs/upgrades/ — read them all. Your copy collects them as it upgrades, so the next person to open it can see what it has absorbed.