Repository navigation
Releases: reboot-dev/reboot
Release list
1.7.1
What's Changed
- Find a clause list's 'with' or 'has' outside a value by @benh in #283
- Work under a project path that contains a space by @benh in #281
- Don't let a stuck task, a dropped signal, or a cancelled sweep hold up
rbt dev runor an application on the way out by @benh in #282 - Preferred mcp view by @rileysdev in #286
- Move to Vite 8 and serve
reboot.bddweb apps through Envoy on--port 0by @benh in #284
Full Changelog: 1.7.0...1.7.1
Reboot 1.7.0
What's Changed
state_managers: fix two read-only transaction participant bugs by @rjhuijsman in #162- Let a method's
descriptionbe rewritten freely by @rileysdev in #188 - Widen the features page by @rileysdev in #191
- Python:
reactively()yields(response, aborted)and never raises by @rileysdev in #204 - Make Claude Review action be triggerable by an action by @onelxj in #211
- React Web:
.reactively()returns{ response, aborted }by @rileysdev in #208 - Add Google Tag Manager to docs.reboot.dev by @rileysdev in #212
- Use the visible origin in MCPJam setup by @jean-de-bot in #209
- Fix LuaJIT and rework signals by @onelxj in #189
- Skills and dashboard fixes and improvements by @onelxj in #186
- Claude/shared pydantic models by @onelxj in #197
- Give the dashboard's pyright enough heap and say when it fails by @benh in #233
- Describe the fix when
schedule()orspawn()gets the wrong context by @rileysdev in #195 - Fix mypy errors in generated code by @rileysdev in #231
- Type-check a Reboot application before
rbt dev runby @rileysdev in #196 - Dashboard auto open by @rileysdev in #192
- Agents: raise a cancelled run's
ClosedResourceErroras a cancellation by @benh in #179 - Upgrade nodejs to 26.x by @onelxj in #229
- Propagate
context.authacross calls within an application by @benh in #257 - Stop concurrent aborts from wedging the database; bound and surface a startup that waits on it by @onelxj in #210
- Don't cap protoc-gen-es output buffer in protoc-gen-es-with-deps by @benh in #232
- Listen on the loopback everywhere, not just on macOS by @benh in #234
- Node: retry the
pip installof Reboot on failure by @benh in #264 - One frontend:
UI(path=...),--frontend-url, and the web app at/by @benh in #262 - Docs: one tunnel, to the backend, now that it serves the web app by @benh in #265
- reboot.bdd: a variable is replaced by its value's JSON text, everywhere by @benh in #246
- Dashboard as an MCP App + sign-in and a tunnel by @rileysdev in #245
- Drop transaction retry handling from the React reader direct call by @benh in #255
- Finish a participant's database prepare even if its RPC is cancelled by @onelxj in #263
- Package
reboot.std.oauthin the Python wheel by @mtrifiro in #267 - Skills: every Reboot app gets an AGENTS.md and a CLAUDE.md by @mtrifiro in #235
- Give a terminated subprocess time to stop before sweeping its process group by @benh in #273
- Name the frontend and the dashboard
frontend-<app>anddashboard-<app>by @benh in #274 - Prepare 1.7.0 for release by @onelxj in #276
New Contributors
- @jean-de-bot made their first contribution in #209
- @mtrifiro made their first contribution in #267
Full Changelog: 1.6.0...1.7.0
Reboot 1.6.0
What's Changed
- Upgrade to Bazel 8.7.0 by @rjhuijsman in #144
- Deflake
concurrent_transactions_same_stateby allowing retries by @rjhuijsman in #152 bazel: type check against first-party external repositories by @rjhuijsman in #151- Fix several Maestro test flakes by @rjhuijsman in #153
- Docs overhaul by @rjhuijsman in #154
- Dev release fixes by @onelxj in #161
- Give field-less pydantic errors their
typein TypeScript by @onelxj in #163 - Add
reboot.bdd: write Reboot tests in Gherkin with pytest-bdd by @benh in #149 - Update Envoy, Istio, and various CLIs by @rjhuijsman in #160
- Resolve transaction deadlocks with wait-die on transaction age by @benh in #166
- Pubsub: let a queue subscribe to the same topic more than once by @rjhuijsman in #168
state_managers: shield a transaction's outcome from its waiters by @rjhuijsman in #158- CI: deflake
Check Code Styleby moving it to Depot by @rjhuijsman in #167 - Let the graph's cards be dragged and its boxes resized by @rileysdev in #175
- Pin anthropic SDK for pydantic agent by @onelxj in #172
- Dashboard fixups by @rileysdev in #176
reboot/server: skip an already-committed participant inRecoverTransactionsby @rjhuijsman in #174- Dashboard: find the agents an application runs, and draw them by @benh in #169
- Prepare 1.6.0 for a release by @onelxj in #178
- Update lockfiles for 1.6.0 by @onelxj in #181
Full Changelog: 1.5.0...1.6.0
Reboot 1.5.0
What's Changed
- Bugfix: workflow transactions recovered before commit were not exactly-once by @rjhuijsman in #98
- Dockerfile: install the Ory CLI on workstations by @rjhuijsman in #135
- auth: let the Ory provider send the browser to a separate origin by @rjhuijsman in #138
- Fix two transaction hangs, and other CI flakes by @rjhuijsman in #134
- Reboot DDD Dashboard by @rileysdev in #125
- Add native (React Native) OAuth sign-in by @onelxj in #123
- Properly escape specific symbols in TS by @onelxj in #139
- Fix readmes in examples by @onelxj in #142
- Prepare proto for a new Reboot Cloud feature by @onelxj in #143
- Method call static analysis by @benh in #137
- Bump 1.5.0 for a release by @onelxj in #148
- Update lockfiles for 1.5.0 by @onelxj in #150
Full Changelog: 1.4.1...1.5.0
Reboot 1.4.1
What's Changed
- Get started with Agent for web apps in docs by @onelxj in #114
- Fix PreToolUse hook failing on Codex (allow decision rejected) by @onelxj in #119
- Fix start hook for Codex by @onelxj in #120
- Claude review for PRs by @onelxj in #117
- Strip a trailing slash from $CLAUDE_PLUGIN_ROOT in auto-approve by @onelxj in #121
- Add GitHub token to the Claude Review run by @onelxj in #122
- local-reboot: print the registry-host env var in the publish message by @rjhuijsman in #124
- Transactions fixes by @onelxj in #129
- Fix uncertain idempotency on transaction should retry without backoff by @benh in #127
- Update lockfiles for 1.4.1 by @onelxj in #133
New Contributors
Full Changelog: 1.4.0...1.4.1
Reboot 1.4.0
What's Changed
- Update lockfiles for 1.3.0 by @onelxj in #101
- CI: harden container builds against transient registry and CDN failures by @rjhuijsman in #100
- Add billing exemption to the organizations proto by @rileysdev in #94
- Hosting frontend on Cloudflare skills by @onelxj in #93
- Some cleanup by @onelxj in #102
- Run fork PR CI with
pull_request_targetbehind maintainer approval by @rjhuijsman in #103 - OAuth: deliver identity provider claims to
Userstate viaSetClaimsby @rjhuijsman in #99 - Cancel superseded Development Containers CI runs per PR by @rjhuijsman in #107
- Fix broken docs link in missing-authorization warning by @atimmer in #97
- Bazel: harden third-party archive fetches against transient download failures by @rjhuijsman in #108
- OAuth: add Ory support, including "reactive" claims by @rjhuijsman in #104
- Make clear TS is alpha by @onelxj in #110
- Docs improvements by @rileysdev in #89
- Rework the app-building skills from measured agent behaviour by @onelxj in #111
- Prepare 1.4.0 for release by @onelxj in #112
- Update lockfiles for 1.4.0 by @onelxj in #113
Full Changelog: 1.3.0...1.4.0
Reboot 1.3.0
🌠 Hello, MCP makers and mobile mavens!
What's new in 1.3.0:
:mobile_phone: React Native Support
rbt generate --mobile now emits a React Native client, so the same generated hooks you use on the web run in your Expo app too. The bank-pydantic and chat-room examples now ship mobile/ apps to show the way.
🌐 Web Apps Sign In Through OAuth
The Reboot OAuth server now speaks the browser flow too: cookie-backed sessions, useSignIn() / useSignOut() hooks, automatic token refresh, and single sign-on across surfaces — sign in on the web and your MCP session is signed in too (and vice versa).
🛡️ Exact-Match CORS via allowed_origins
Apps with oauth= no longer serve permissive CORS: pass Application(allowed_origins=[...]) to allow-list your frontend's origin. (Required in production; localhost is allowed automatically under rbt dev run.)
:frame_photo: useUser enhancements
No more "Connecting to MCP host..." placeholder: your UI renders right away, while a no-id hook like useUser() reports { user, isLoading } until the default id resolves.
🧪 One-Call Test Impersonation
await rbt.create_external_context_as(name, user_id) mints a real OAuth access token and auto-constructs the User as a side effect — so TokenVerifierForTest is gone.
🔍 rbt inspect
Inspect the state of any running Reboot app straight from the CLI — made for agents (and humans) that previously had to hand-script the chunked inspect API.
🚀 Keep signing in once. Keep shipping everywhere — web, MCP, and now mobile.