Highlight
The biggest change in this release is Rozenite for Lynx. @rozenite/lynx installs the device runtime in a Lynx app's background thread, and @rozenite/lynx-dev adds an rspeedy plugin that serves the Rozenite standalone app and bridges Lynx's DebugRouter transport to the inspector protocol the app already speaks — so the same DevTools panels, plugin catalogue and CLI now work against a Lynx app with no DevTools-side changes. Read more in the Rozenite for Lynx docs.
What's Changed
- chore: speed up validation and cut agent token usage by @V3RON in #435
- feat(cli): compile plugin entry points with tsc instead of Vite by @V3RON in #438
- chore: enforce formatting in CI and fix existing drift by @V3RON in #436
- ci: cache Turborepo artifacts, writing only from main by @V3RON in #439
- feat(cli): add rozenite agent tap to stream plugin messages to stdout by @V3RON in #433
- feat(testing): add @rozenite/testing for in-process plugin protocol tests by @V3RON in #434
- feat(middleware): rework agent console buffer, previews, and cursors by @V3RON in #432
- feat(lynx): add Rozenite for Lynx by @V3RON in #444
- feat(ui): add RozeniteLoader component by @V3RON in #446
- feat(ui): add ToggleGroup, VirtualizedList, and QueryField by @V3RON in #442
- feat(app): show a startup splash while connecting to the device by @V3RON in #451
- feat: name the framework being debugged in the Rozenite app by @V3RON in #449
- test: guard release bundles against shipping Rozenite code by @V3RON in #429
- feat(middleware): resolve a target's integration and let plugins declare support by @V3RON in #456
- feat: declare supported integrations for every official plugin by @V3RON in #457
- feat(require-profiler-plugin): migrate the panel to @rozenite/ui by @V3RON in #453
- feat(require-profiler-plugin): add package rollup, require chains and duplicate detection by @V3RON in #454
- feat(middleware): resolve per-target CDP capability profiles for agent sessions by @V3RON in #448
- fix(middleware): derive the debugger origin from Expo's dev server by @V3RON in #468
- fix(middleware): let a capability-filtered domain decline tools it does not own by @V3RON in #470
- fix(website): guard welcome screen effects against static generation by @V3RON in #471
- feat(playground-lynx): add a Lynx playground app by @V3RON in #469
- feat(middleware): aggregate React render reports and surface component errors by @V3RON in #472
- fix(playground): use the rozenite:// scheme for deep links by @V3RON in #475
- fix(middleware): re-bind the React outbound channel when a session reconnects by @V3RON in #477
- feat(middleware): report commit cost beyond render time in getProfileTimeline by @V3RON in #478
- feat(cli): scan every integration's default port in
rozenite openby @V3RON in #484 - fix(website): upgrade Rspress to 2.0.21 by @V3RON in #487
- fix(website): make the Storybook build a Turborepo task by @V3RON in #486
Full Changelog: v2.2.0...v2.3.0