What's Changed
- Bundle DM Sans and JetBrains Mono fonts instead of Google Fonts by @juliusmarminge in #3014
- Mute icons in labeled controls and suppress popup focus rings by @juliusmarminge in #3015
- Polish dialog/alert surfaces and unauthenticated provider banner by @juliusmarminge in #3016
- fix(marketing) : marketing showing wrong icons on linux by @ruzbyte in #2696
- Misc markdown styling improvements by @juliusmarminge in #3017
- Model picker UI Improvements, Virtualize Model List by @juliusmarminge in #3021
- Provider env vars table and reworked accent color picker by @juliusmarminge in #3026
- Polish branch picker trigger, scroll fade, and list layout by @juliusmarminge in #3024
- Polish web context menu fallback and sidebar icon actions by @juliusmarminge in #3025
- Composer polish: focus ring, send/stop buttons, command menu, context meter, answer panel by @juliusmarminge in #3018
- Extract changed files card with compact aligned diff stats by @juliusmarminge in #3023
- Misc chrome polish: header badges, plan sidebar, diff panel, empty state by @juliusmarminge in #3027
- Rework message metadata, timestamps, and tool work log rows by @juliusmarminge in #3022
- [codex] Sync app-server protocol, service tiers, and provider startup by @juliusmarminge in #3036
- [codex] Reduce Git status polling churn by @juliusmarminge in #3037
- Fix turn fold proejctions by @juliusmarminge in #3041
- fix(git): disable external diff for patch output by @stromseng in #2553
- [codex] Refine inline tool call timeline UI by @juliusmarminge in #3052
- [codex] fix slow websocket shutdown by @juliusmarminge in #2869
- Handle non-resumable pending user input by @mjc in #2766
- fix: avoid sending composer during IME enter by @HuakunShen in #2817
- [codex] Add integrated browser preview, annotations, and agent automation by @t3dotgg in #3053
- Fix Bitbucket source control availability toggle by @JustMarkDev in #3079
- Guard VCS status updates against stale targets by @juliusmarminge in #3084
- Wrap authorized clients in fading scroll area by @juliusmarminge in #3085
- Preserve diff surface when toggling right panel by @juliusmarminge in #3083
- fix(desktop): mac start:desktop crash from rewritten framework symlinks by @TheIcarusWings in #3058
- refactor: resolve host process state through Effect by @juliusmarminge in #2959
- Add workspace file browser and preview panel by @juliusmarminge in #3087
- Show disabled reasons for unavailable right panel surfaces by @juliusmarminge in #3093
- [codex] Fix first browser annotation capture by @t3dotgg in #3095
- Use
ffffor workspace search queries by @juliusmarminge in #3099 - [codex] Fix terminal line height for QR readability by @StiensWout in #3096
- [codex] Trace first-party relay clients by @juliusmarminge in #2995
- Stage fff native binaries in desktop builds by @juliusmarminge in #3109
- [codex] Add native mobile composer and markdown by @juliusmarminge in #3101
- Add DELETE-based MCP session termination by @juliusmarminge in #3113
- Parallelize VCS status refresh and status reads by @juliusmarminge in #3112
- fix(settings): disable auto-open of task sidebar by default by @jappyjan in #2421
- Double-click a sidebar thread row to rename by @TheIcarusWings in #3064
- Add file preview comments and task toggles by @juliusmarminge in #3115
- Add right-panel bulk close and tab context menu actions by @juliusmarminge in #3116
- Render the plan surface in the inline right panel by @juliusmarminge in #3118
- Improve inline panel, file preview, and MCP session handling by @juliusmarminge in #3121
- [codex] Make background VCS fetch non-interactive by @Andrew-Forster in #3133
- fix(mobile): bump react-native-shiki-engine to 0.3.12 by @skiniks in #3120
- fix: Adapt destructive menu icon to dark mode by @StiensWout in #3126
- Polish marketing homepage: nav, hero, and endorsements by @t3dotgg in #3137
- [codex] Rewrite client connection architecture by @juliusmarminge in #2978
- fix(web): Remove saved environments atomically by @mwolson in #2917
- Add archived threads and mobile file viewer by @juliusmarminge in #3155
- Add origin-based worktree bootstrap option by @juliusmarminge in #3157
- fix(server): use bound host for MCP endpoint by @D3OXY in #3114
- fix(ssh): fix support for remotes that use fnm by @soorria in #2641
- Avoid repeated theme DOM sync during startup by @mjc in #2779
- Migrate desktop auth to Clerk bridge by @juliusmarminge in #3092
- feat: allow disabling provider update checks by @repparw in #3130
- Use idiomatic Effect options for server secret reads by @cursor[bot] in #3110
- [codex] fix: show nightly badge from primary web server version by @StiensWout in #3103
- feat(composer): clickable PR pill next to branch selector by @TheIcarusWings in #3065
- Improve idiomatic Effect usage in config and Tailscale paths by @cursor[bot] in #3073
- feat(sidebar): worktree indicator on session rows by @TheIcarusWings in #3057
- Use Effect schema decoders for JSON parsing by @cursor[bot] in #3060
- Only show enabled providers in picker sidebar by @juliusmarminge in #3168
- Share thread state idle TTL across client atoms by @juliusmarminge in #3163
- Unify mobile typography tokens across the app by @juliusmarminge in #3162
- Harden preview ownership and option-based secret handling by @juliusmarminge in #3172
- [codex] Inline contracts request-context service shapes by @juliusmarminge in #3204
- [codex] Refactor desktop app Effect services by @juliusmarminge in #3185
- [codex] align relay foundation Effect services by @juliusmarminge in #3182
- [codex] Normalize server core Effect service modules by @juliusmarminge in #3187
- Add diff scope switching and provider update settings by @juliusmarminge in #3169
- [codex] Refactor primary HTTP Effect service by @juliusmarminge in #3205
- [codex] Normalize Desktop IPC Effect service by @juliusmarminge in #3203
- chore: run eas only when labelled by @Yash-Singh1 in #3208
- [codex] Refactor review and text generation services by @juliusmarminge in #3196
- [codex] Use namespace imports for desktop core services by @juliusmarminge in #3207
- [codex] normalize server process and preview Effect services by @juliusmarminge in #3191
- [codex] Standardize Effect protocol adapter services by @juliusmarminge in #3201
- [codex] align relay agent activity Effect services by @juliusmarminge in #3179
- [codex] align persistence Effect service modules by @juliusmarminge in #3184
- [codex] Refactor desktop window and update Effect services by @juliusmarminge in #3202
- [codex] Refactor agent awareness relay service by @juliusmarminge in #3197
- [codex] refactor server cloud Effect services by @juliusmarminge in #3183
- [codex] Align desktop preview Effect services by @juliusmarminge in #3199
- [codex] refactor desktop backend Effect services by @juliusmarminge in #3192
- [codex] Align diagnostics and telemetry Effect services by @juliusmarminge in #3189
- [codex] Complete relay agent activity Effect cleanup by @juliusmarminge in #3210
- [codex] Align terminal Effect service modules by @juliusmarminge in #3193
- [codex] Refactor checkpointing Effect services by @juliusmarminge in #3181
- [codex] Migrate server source control Effect services by @juliusmarminge in #3186
- Add Effect service conventions check by @juliusmarminge in #3212
- [codex] finish server process and preview Effect cleanup by @juliusmarminge in #3209
- [codex] Refactor client-runtime Effect services by @juliusmarminge in #3198
- Tighten structural Effect error checks by @juliusmarminge in #3213
- Preserve full cause chains in Effect error checks by @juliusmarminge in #3215
- [codex] Refactor desktop settings Effect services by @juliusmarminge in #3188
- Clarify Effect error discriminator modeling by @juliusmarminge in #3217
- Fix PR creation from origin-based worktrees by @juliusmarminge in #3218
- [codex] Close right panel when its last tab closes by @juliusmarminge in #3221
- Cosmetic fix: Sync web title with nightly server branding by @StiensWout in #3219
- Preserve observable Effect error semantics by @juliusmarminge in #3220
- [codex] Make settings environment-scoped by default by @juliusmarminge in #3216
- [codex] Refactor project and workspace Effect services by @juliusmarminge in #3190
- [codex] Refactor client runtime Effect services by @juliusmarminge in #3200
- [codex] Migrate desktop shell and SSH Effect services by @juliusmarminge in #3194
- [codex] Remove redundant Effect type annotations by @juliusmarminge in #3229
- [codex] Preserve workspace RPC error messages by @juliusmarminge in #3222
- [fix/feat:ui] Fix clipped chatbar provider badge by @sandersonstabo in #3224
- [fix/feat:ui] Use shared button for model favorites by @sandersonstabo in #3223
- [fix/feat:ui] Capitalize Work Log heading by @sandersonstabo in #3228
- [codex] Enforce canonical Node namespace imports by @juliusmarminge in #3238
- [codex] refactor desktop Electron Effect services by @juliusmarminge in #3178
- [codex] align server auth Effect services by @juliusmarminge in #3180
- [codex] Structure mobile native static-check failures by @juliusmarminge in #3302
- [codex] Structure macOS passkey signing failures by @juliusmarminge in #3303
- [codex] Preserve desktop user-data probe failures by @juliusmarminge in #3304
- [codex] Structure relay activity-row persistence errors by @juliusmarminge in #3305
- [codex] Structure bootstrap errors by @juliusmarminge in #3256
- [codex] Structure preview session key errors by @juliusmarminge in #3388
- [codex] Structure empty mobile pairing payload errors by @juliusmarminge in #3372
- [codex] Structure unavailable Bun PTY operations by @juliusmarminge in #3394
- [codex] Keep PTY spawn errors structural by @juliusmarminge in #3325
- [codex] Structure mobile notification setting failures by @juliusmarminge in #3391
- [codex] Preserve review path resolution failures by @juliusmarminge in #3357
- [codex] Split preferred editor precondition errors by @juliusmarminge in #3324
- [codex] Structure relay domain label errors by @juliusmarminge in #3347
- [codex] Structure catalog dependency resolution failures by @juliusmarminge in #3298
- [codex] Structure web diff worker failures by @juliusmarminge in #3356
- [codex] structure Electron theme source errors by @juliusmarminge in #3294
- [codex] Structure missing client cloud config errors by @juliusmarminge in #3346
- [codex] Preserve desktop update state read failures by @juliusmarminge in #3370
- [codex] Structure relay install confirmation conflicts by @juliusmarminge in #3365
- [codex] Structure OAuth scope encoding failures by @juliusmarminge in #3368
- [codex] Structure native view resolution failures by @juliusmarminge in #3353
- [codex] Structure mobile project thread validation errors by @juliusmarminge in #3387
- [codex] Preserve relay trace error causes by @juliusmarminge in #3377
- [codex] Structure Electron protocol teardown failures by @juliusmarminge in #3310
- [codex] Preserve mobile composer draft failures by @juliusmarminge in #3348
- [codex] Preserve detached desktop action causes by @juliusmarminge in #3371
- [codex] Structure desktop network interface failures by @juliusmarminge in #3313
- [codex] Structure relay environment link errors by @juliusmarminge in #3334
- [codex] Preserve desktop asset probe failures by @juliusmarminge in #3373
- [codex] Structure Electron app boundary failures by @juliusmarminge in #3301
- [codex] Structure process resource sampling failures by @juliusmarminge in #3415
- [codex] Structure desktop backend settings read errors by @juliusmarminge in #3379
- [codex] Structure missing provider command failures by @juliusmarminge in #3384
- [codex] Structure relay publish signature errors by @juliusmarminge in #3335
- [codex] structure Bitbucket API failures by @juliusmarminge in #3332
- [codex] Bound relay registration replay diagnostics by @juliusmarminge in #3420
- [codex] Type malformed Clerk public config failures by @juliusmarminge in #3422
- [codex] Simplify desktop client settings errors by @juliusmarminge in #3265
- [codex] Structure relay JWT failures by @juliusmarminge in #3270
- [codex] sanitize provider runtime failure diagnostics by @juliusmarminge in #3414
- [codex] Structure MCP snapshot failures by @juliusmarminge in #3423
- [codex] Structure Electron updater errors by @juliusmarminge in #3280
- [codex] Structure primary environment request failures by @juliusmarminge in #3409
- [codex] Structure Claude adapter failures by @juliusmarminge in #3406
- [codex] Structure mobile secure storage failures by @juliusmarminge in #3345
- [codex] Structure desktop server exposure errors by @juliusmarminge in #3269
- [codex] Structure preview config failures by @juliusmarminge in #3271
- [codex] Structure desktop Clerk bridge failures by @juliusmarminge in #3308
- Remove persistence error constructor wrappers by @juliusmarminge in #3398
- [codex] Structure remote pairing input errors by @juliusmarminge in #3393
- [codex] Preserve desktop shell environment probe failures by @juliusmarminge in #3383
- [codex] Remove project setup error constructor wrappers by @juliusmarminge in #3329
- Structure relay auth parsing errors by @juliusmarminge in #3290
- [codex] Structure process diagnostics failures by @juliusmarminge in #3389
- [codex] Structure release metadata failures by @juliusmarminge in #3296
- Structure server environment ID failures by @juliusmarminge in #3286
- [codex] Structure desktop bridge state errors by @juliusmarminge in #3381
- [codex] Structure APNs delivery queue errors by @juliusmarminge in #3326
- [codex] Structure preview URL failures by @juliusmarminge in #3275
- [codex] Enrich process runner errors by @juliusmarminge in #3268
- [codex] Preserve trace IDs across error causes by @juliusmarminge in #3426
- [codex] Structure terminal adapter startup defects by @juliusmarminge in #3425
- [codex] Bound shared schema diagnostics by @juliusmarminge in #3424
- [codex] Structure mobile external link failures by @juliusmarminge in #3363
- [codex] structure desktop IPC registration errors by @juliusmarminge in #3291
- [codex] Structure workspace file system errors by @juliusmarminge in #3274
- [codex] structure VCS process errors by @juliusmarminge in #3408
- [codex] Structure primary environment target failures by @juliusmarminge in #3413
- [codex] sanitize ACP native event diagnostics by @juliusmarminge in #3417
- [codex] Sanitize client error log diagnostics by @juliusmarminge in #3405
- [codex] Structure telemetry identity errors by @juliusmarminge in #3306
- [codex] Structure VCS project config failures by @juliusmarminge in #3315
- [codex] Structure client VCS action errors by @juliusmarminge in #3263
- [codex] Enrich Git VCS driver errors by @juliusmarminge in #3253
- [codex] Structure Codex app-server request errors by @juliusmarminge in #3258
- [codex] structure desktop preview failures by @juliusmarminge in #3244
- [codex] Structure Tailscale command failures by @juliusmarminge in #3257
- [codex] Structure reference repo sync failures by @juliusmarminge in #3281
- [codex] Structure dev-runner failures by @juliusmarminge in #3283
- [codex] add structured Electron dialog errors by @juliusmarminge in #3284
- [codex] Structure relay deploy output errors by @juliusmarminge in #3340
- [codex] Structure preview automation errors by @juliusmarminge in #3272
- [codex] structure workspace search failures by @juliusmarminge in #3352
- [codex] Structure pairing grant failures by @juliusmarminge in #3386
- [codex] Structure relay device persistence errors by @juliusmarminge in #3344
- [codex] Structure APNs client errors by @juliusmarminge in #3318
- [codex] Structure APNs delivery job errors by @juliusmarminge in #3322
- [codex] Structure relay Live Activity errors by @juliusmarminge in #3314
- [codex] Sanitize YAML schema diagnostics by @juliusmarminge in #3427
- [codex] Structure browser recording failures by @juliusmarminge in #3330
- [codex] Structure preview automation failures by @juliusmarminge in #3333
- [codex] Structure Electron menu failures by @juliusmarminge in #3317
- [codex] Structure relay delivery attempt errors by @juliusmarminge in #3312
- [codex] Structure Discord release webhook failures by @juliusmarminge in #3285
- [codex] Structure desktop browser session errors by @juliusmarminge in #3273
- [codex] Preserve native SQLite failure context by @juliusmarminge in #3428
- [codex] Structure Electron window failures by @juliusmarminge in #3276
- [codex] Structure Codex shadow home errors by @juliusmarminge in #3262
- [codex] Structure ACP transport errors by @juliusmarminge in #3251
- [codex] Structure relay auth persistence errors by @juliusmarminge in #3250
- [codex] Structure desktop persisted credential errors by @juliusmarminge in #3239
- Align text generation error catches by @juliusmarminge in #3292
- [codex] Audit managed endpoint error context by @juliusmarminge in #3245
- [codex] Structure desktop SSH prompt presentation failures by @juliusmarminge in #3429
- [codex] Enrich source-control errors by @juliusmarminge in #3248
- [codex] Sanitize text generation CLI errors by @juliusmarminge in #3431
- [codex] Structure managed endpoint allocation failures by @juliusmarminge in #3421
- [codex] Preserve workspace root stat failures by @juliusmarminge in #3278
- Preserve trace file read causes by @juliusmarminge in #3300
- [codex] enrich Git workflow errors by @juliusmarminge in #3241
- [codex] Structure preview automation boundary failures by @juliusmarminge in #3436
- [codex] Preserve cloud disconnect diagnostics by @juliusmarminge in #3437
- [codex] Fix desktop preview event delivery errors by @juliusmarminge in #3435
- [codex] Correlate protocol request failures by @juliusmarminge in #3433
- [codex] Structure server settings failures by @juliusmarminge in #3376
- [codex] Preserve desktop backend log failures by @juliusmarminge in #3375
- [codex] Structure client state key errors by @juliusmarminge in #3374
- [codex] Preserve terminal preview link failure context by @juliusmarminge in #3367
- [codex] Structure terminal PTY operation failures by @juliusmarminge in #3364
- [codex] Structure cross-client clipboard failures by @juliusmarminge in #3361
- [codex] Structure mobile notification navigation failures by @juliusmarminge in #3359
- [codex] Structure agent awareness registration errors by @juliusmarminge in #3328
- [codex] Structure server environment-label probe failures by @juliusmarminge in #3321
- Preserve PortScanner probe defects by @juliusmarminge in #3282
- [codex] Report markdown interaction failures by @juliusmarminge in #3355
- [codex] Structure web local storage failures by @juliusmarminge in #3350
- [codex] Structure mobile thread outbox failures by @juliusmarminge in #3341
- [codex] structure project CLI failures by @juliusmarminge in #3339
- [codex] Preserve mobile review highlighter failures by @juliusmarminge in #3337
- [codex] Structure server runtime-state failures by @juliusmarminge in #3319
- [codex] Structure rotating log sink errors by @juliusmarminge in #3279
- [codex] Structure mobile relay token-store failures by @juliusmarminge in #3309
- [codex] Fix terminal cwd error test construction by @juliusmarminge in #3440
- [codex] Diagnose desktop client settings read failures by @juliusmarminge in #3432
- [codex] Preserve checkpoint repository detection failures by @juliusmarminge in #3360
- [codex] structure desktop backend process errors by @juliusmarminge in #3254
- [codex] structure source-control repository failures by @juliusmarminge in #3336
- [codex] Structure persistence error correlation by @juliusmarminge in #3439
- Preserve asset access failure causes by @juliusmarminge in #3342
- [codex] Preserve PR materialization failure chains by @juliusmarminge in #3443
- [codex] Structure pull request link failures by @juliusmarminge in #3445
- [codex] Structure mobile waitlist enrollment failures by @juliusmarminge in #3446
- [codex] Preserve desktop backend output read failures by @juliusmarminge in #3444
- [codex] Preserve Linux icon resize fallback failures by @juliusmarminge in #3447
- [codex] Structure desktop update persistence errors by @juliusmarminge in #3261
- [codex] Migrate desktop app errors to Schema by @juliusmarminge in #3449
- [codex] Structure server CLI failures by @juliusmarminge in #3450
- [codex] Model asset access failures with distinct errors by @juliusmarminge in #3448
- [codex] Structure checkpoint diff failures by @juliusmarminge in #3453
- [codex] Split project command failures by @juliusmarminge in #3459
- [codex] Structure preview capability errors by @juliusmarminge in #3454
- [codex] Structure unroutable app-server messages by @juliusmarminge in #3463
- [codex] Structure GitLab CLI failures by @juliusmarminge in #3458
- [codex] Structure Bitbucket API errors by @juliusmarminge in #3457
- [codex] Structure workspace search cleanup failures by @juliusmarminge in #3465
- [codex] Structure release metadata failures by @juliusmarminge in #3467
- [codex] Structure mobile native static-check failures by @juliusmarminge in #3464
- [codex] Structure Azure DevOps CLI failures by @juliusmarminge in #3460
- [codex] Structure desktop build script failures by @juliusmarminge in #3452
- [codex] Structure release package updater failures by @juliusmarminge in #3468
- [codex] Structure theme synchronization failures by @juliusmarminge in #3466
- [codex] Structure GitHub CLI failures by @juliusmarminge in #3456
- [codex] Structure release output failures by @juliusmarminge in #3470
- [codex] Preserve child process termination context by @juliusmarminge in #3469
- [codex] Structure VCS process boundary errors by @juliusmarminge in #3476
- [codex] Preserve APNs delivery failure context by @juliusmarminge in #3475
- [codex] Preserve VCS project config error causes by @juliusmarminge in #3474
- [codex] Preserve desktop update state causes by @juliusmarminge in #3473
- [codex] Structure OpenCode text generation failures by @juliusmarminge in #3472
- [codex] Structure primary auth validation failures by @juliusmarminge in #3471
- [codex] Structure thread archive blocked error by @juliusmarminge in #3451
- [codex] Enforce Effect error handling conventions by @juliusmarminge in #3380
- [codex] add session context to credential errors by @juliusmarminge in #3349
- chore: remove
AnnotatableFileDiffleftovers, rename file by @ipanasenko in #3488 - [codex] fix: guard trace ID clipboard copy by @StiensWout in #3505
- [codex] fix: restore pending input keyboard activation by @StiensWout in #3501
- [codex] fix: preserve localhost preview hosts by @StiensWout in #3499
- [codex] Reject unsupported remote pairing protocols by @StiensWout in #3498
- Persist mobile composer selectors across drafts by @juliusmarminge in #3496
- Stabilize composer provider state while typing by @cursor[bot] in #3507
- feat: add persistent word-wrap setting for chat code blocks and tables by @imabdulazeez in #3480
- Add main sidebar toggle by @juliusmarminge in #3497
- [codex] Restore T3 Connect account controls by @juliusmarminge in #3492
- [codex] fix: guard DPoP fallback URL construction by @StiensWout in #3503
- Bump Clerk packages and refresh lockfile by @juliusmarminge in #3511
- [codex] fix: clarify Cursor CLI setup error by @StiensWout in #3519
- [codex] fix: ignore stale shell reducer events by @StiensWout in #3517
- Reduce ChatMarkdown settings rerenders by @cursor[bot] in #3536
- [codex] fix: show standalone element-pick context by @StiensWout in #3527
- [codex] Upgrade Legend List chat scrolling by @juliusmarminge in #3545
- Restore right panel inset when maximized by @juliusmarminge in #3555
- Fix Electron dev and packaged renderer startup by @juliusmarminge in #3557
- Route preview automation through live owner streams by @juliusmarminge in #3548
- [codex] Fix preview automation edge cases by @juliusmarminge in #3561
- fix(grok): Harden ACP resume with replay-idle load readiness by @mwolson in #3156
- Stabilize chat scroll anchoring after send by @juliusmarminge in #3564
- Fix native composer lag with revision-gated updates by @juliusmarminge in #3574
- Stabilize preview browser surfaces, automation, and recording by @juliusmarminge in #3565
- Desktop: parallel WSL + Windows backends with mode picker by @Jgratton24 in #2751
- Restore chat scroll affordances and add timeline minimap by @juliusmarminge in #3587
New Contributors
- @ruzbyte made their first contribution in #2696
- @stromseng made their first contribution in #2553
- @mjc made their first contribution in #2766
- @HuakunShen made their first contribution in #2817
- @JustMarkDev made their first contribution in #3079
- @TheIcarusWings made their first contribution in #3058
- @StiensWout made their first contribution in #3096
- @Andrew-Forster made their first contribution in #3133
- @skiniks made their first contribution in #3120
- @soorria made their first contribution in #2641
- @repparw made their first contribution in #3130
- @sandersonstabo made their first contribution in #3224
- @Jgratton24 made their first contribution in #2751
Full Changelog: v0.0.27...v0.0.28
What's Changed
- Bundle DM Sans and JetBrains Mono fonts instead of Google Fonts by @juliusmarminge in #3014
- Mute icons in labeled controls and suppress popup focus rings by @juliusmarminge in #3015
- Polish dialog/alert surfaces and unauthenticated provider banner by @juliusmarminge in #3016
- fix(marketing) : marketing showing wrong icons on linux by @ruzbyte in #2696
- Misc markdown styling improvements by @juliusmarminge in #3017
- Model picker UI Improvements, Virtualize Model List by @juliusmarminge in #3021
- Provider env vars table and reworked accent color picker by @juliusmarminge in #3026
- Polish branch picker trigger, scroll fade, and list layout by @juliusmarminge in #3024
- Polish web context menu fallback and sidebar icon actions by @juliusmarminge in #3025
- Composer polish: focus ring, send/stop buttons, command menu, context meter, answer panel by @juliusmarminge in #3018
- Extract changed files card with compact aligned diff stats by @juliusmarminge in #3023
- Misc chrome polish: header badges, plan sidebar, diff panel, empty state by @juliusmarminge in #3027
- Rework message metadata, timestamps, and tool work log rows by @juliusmarminge in #3022
- [codex] Sync app-server protocol, service tiers, and provider startup by @juliusmarminge in #3036
- [codex] Reduce Git status polling churn by @juliusmarminge in #3037
- Fix turn fold proejctions by @juliusmarminge in #3041
- fix(git): disable external diff for patch output by @stromseng in #2553
- [codex] Refine inline tool call timeline UI by @juliusmarminge in #3052
- [codex] fix slow websocket shutdown by @juliusmarminge in #2869
- Handle non-resumable pending user input by @mjc in #2766
- fix: avoid sending composer during IME enter by @HuakunShen in #2817
- [codex] Add integrated browser preview, annotations, and agent automation by @t3dotgg in #3053
- Fix Bitbucket source control availability toggle by @JustMarkDev in #3079
- Guard VCS status updates against stale targets by @juliusmarminge in #3084
- Wrap authorized clients in fading scroll area by @juliusmarminge in #3085
- Preserve diff surface when toggling right panel by @juliusmarminge in #3083
- fix(desktop): mac start:desktop crash from rewritten framework symlinks by @TheIcarusWings in #3058
- refactor: resolve host process state through Effect by @juliusmarminge in #2959
- Add workspace file browser and preview panel by @juliusmarminge in #3087
- Show disabled reasons for unavailable right panel surfaces by @juliusmarminge in #3093
- [codex] Fix first browser annotation capture by @t3dotgg in #3095
- Use
ffffor workspace search queries by @juliusmarminge in #3099 - [codex] Fix terminal line height for QR readability by @StiensWout in #3096
- [codex] Trace first-party relay clients by @juliusmarminge in #2995
- Stage fff native binaries in desktop builds by @juliusmarminge in #3109
- [codex] Add native mobile composer and markdown by @juliusmarminge in #3101
- Add DELETE-based MCP session termination by @juliusmarminge in #3113
- Parallelize VCS status refresh and status reads by @juliusmarminge in #3112
- fix(settings): disable auto-open of task sidebar by default by @jappyjan in #2421
- Double-click a sidebar thread row to rename by @TheIcarusWings in #3064
- Add file preview comments and task toggles by @juliusmarminge in #3115
- Add right-panel bulk close and tab context menu actions by @juliusmarminge in #3116
- Render the plan surface in the inline right panel by @juliusmarminge in #3118
- Improve inline panel, file preview, and MCP session handling by @juliusmarminge in #3121
- [codex] Make background VCS fetch non-interactive by @Andrew-Forster in #3133
- fix(mobile): bump react-native-shiki-engine to 0.3.12 by @skiniks in #3120
- fix: Adapt destructive menu icon to dark mode by @StiensWout in #3126
- Polish marketing homepage: nav, hero, and endorsements by @t3dotgg in #3137
- [codex] Rewrite client connection architecture by @juliusmarminge in #2978
- fix(web): Remove saved environments atomically by @mwolson in #2917
- Add archived threads and mobile file viewer by @juliusmarminge in #3155
- Add origin-based worktree bootstrap option by @juliusmarminge in #3157
- fix(server): use bound host for MCP endpoint by @D3OXY in #3114
- fix(ssh): fix support for remotes that use fnm by @soorria in #2641
- Avoid repeated theme DOM sync during startup by @mjc in #2779
- Migrate desktop auth to Clerk bridge by @juliusmarminge in #3092
- feat: allow disabling provider update checks by @repparw in #3130
- Use idiomatic Effect options for server secret reads by @cursor[bot] in #3110
- [codex] fix: show nightly badge from primary web server version by @StiensWout in #3103
- feat(composer): clickable PR pill next to branch selector by @TheIcarusWings in #3065
- Improve idiomatic Effect usage in config and Tailscale paths by @cursor[bot] in #3073
- feat(sidebar): worktree indicator on session rows by @TheIcarusWings in #3057
- Use Effect schema decoders for JSON parsing by @cursor[bot] in #3060
- Only show enabled providers in picker sidebar by @juliusmarminge in #3168
- Share thread state idle TTL across client atoms by @juliusmarminge in #3163
- Unify mobile typography tokens across the app by @juliusmarminge in #3162
- Harden preview ownership and option-based secret handling by @juliusmarminge in #3172
- [codex] Inline contracts request-context service shapes by @juliusmarminge in #3204
- [codex] Refactor desktop app Effect services by @juliusmarminge in #3185
- [codex] align relay foundation Effect services by @juliusmarminge in #3182
- [codex] Normalize server core Effect service modules by @juliusmarminge in #3187
- Add diff scope switching and provider update settings by @juliusmarminge in #3169
- [codex] Refactor primary HTTP Effect service by @juliusmarminge in #3205
- [codex] Normalize Desktop IPC Effect service by @juliusmarminge in #3203
- chore: run eas only when labelled by @Yash-Singh1 in #3208
- [codex] Refactor review and text generation services by @juliusmarminge in #3196
- [codex] Use namespace imports for desktop core services by @juliusmarminge in #3207
- [codex] normalize server process and preview Effect services by @juliusmarminge in #3191
- [codex] Standardize Effect protocol adapter services by @juliusmarminge in #3201
- [codex] align relay agent activity Effect services by @juliusmarminge in #3179
- [codex] align persistence Effect service modules by @juliusmarminge in #3184
- [codex] Refactor desktop window and update Effect services by @juliusmarminge in #3202
- [codex] Refactor agent awareness relay service by @juliusmarminge in #3197
- [codex] refactor server cloud Effect services by @juliusmarminge in #3183
- [codex] Align desktop preview Effect services by @juliusmarminge in #3199
- [codex] refactor desktop backend Effect services by @juliusmarminge in #3192
- [codex] Align diagnostics and telemetry Effect services by @juliusmarminge in #3189
- [codex] Complete relay agent activity Effect cleanup by @juliusmarminge in #3210
- [codex] Align terminal Effect service modules by @juliusmarminge in #3193
- [codex] Refactor checkpointing Effect services by @juliusmarminge in #3181
- [codex] Migrate server source control Effect services by @juliusmarminge in #3186
- Add Effect service conventions check by @juliusmarminge in #3212
- [codex] finish server process and preview Effect cleanup by @juliusmarminge in #3209
- [codex] Refactor client-runtime Effect services by @juliusmarminge in #3198
- Tighten structural Effect error checks by @juliusmarminge in #3213
- Preserve full cause chains in Effect error checks by @juliusmarminge in #3215
- [codex] Refactor desktop settings Effect services by @juliusmarminge in #3188
- Clarify Effect error discriminator modeling by @juliusmarminge in #3217
- Fix PR creation from origin-based worktrees by @juliusmarminge in #3218
- [codex] Close right panel when its last tab closes by @juliusmarminge in #3221
- Cosmetic fix: Sync web title with nightly server branding by @StiensWout in #3219
- Preserve observable Effect error semantics by @juliusmarminge in #3220
- [codex] Make settings environment-scoped by default by @juliusmarminge in #3216
- [codex] Refactor project and workspace Effect services by @juliusmarminge in #3190
- [codex] Refactor client runtime Effect services by @juliusmarminge in #3200
- [codex] Migrate desktop shell and SSH Effect services by @juliusmarminge in #3194
- [codex] Remove redundant Effect type annotations by @juliusmarminge in #3229
- [codex] Preserve workspace RPC error messages by @juliusmarminge in #3222
- [fix/feat:ui] Fix clipped chatbar provider badge by @sandersonstabo in #3224
- [fix/feat:ui] Use shared button for model favorites by @sandersonstabo in #3223
- [fix/feat:ui] Capitalize Work Log heading by @sandersonstabo in #3228
- [codex] Enforce canonical Node namespace imports by @juliusmarminge in #3238
- [codex] refactor desktop Electron Effect services by @juliusmarminge in #3178
- [codex] align server auth Effect services by @juliusmarminge in #3180
- [codex] Structure mobile native static-check failures by @juliusmarminge in #3302
- [codex] Structure macOS passkey signing failures by @juliusmarminge in #3303
- [codex] Preserve desktop user-data probe failures by @juliusmarminge in #3304
- [codex] Structure relay activity-row persistence errors by @juliusmarminge in #3305
- [codex] Structure bootstrap errors by @juliusmarminge in #3256
- [codex] Structure preview session key errors by @juliusmarminge in #3388
- [codex] Structure empty mobile pairing payload errors by @juliusmarminge in #3372
- [codex] Structure unavailable Bun PTY operations by @juliusmarminge in #3394
- [codex] Keep PTY spawn errors structural by @juliusmarminge in #3325
- [codex] Structure mobile notification setting failures by @juliusmarminge in #3391
- [codex] Preserve review path resolution failures by @juliusmarminge in #3357
- [codex] Split preferred editor precondition errors by @juliusmarminge in #3324
- [codex] Structure relay domain label errors by @juliusmarminge in #3347
- [codex] Structure catalog dependency resolution failures by @juliusmarminge in #3298
- [codex] Structure web diff worker failures by @juliusmarminge in #3356
- [codex] structure Electron theme source errors by @juliusmarminge in #3294
- [codex] Structure missing client cloud config errors by @juliusmarminge in #3346
- [codex] Preserve desktop update state read failures by @juliusmarminge in #3370
- [codex] Structure relay install confirmation conflicts by @juliusmarminge in #3365
- [codex] Structure OAuth scope encoding failures by @juliusmarminge in #3368
- [codex] Structure native view resolution failures by @juliusmarminge in #3353
- [codex] Structure mobile project thread validation errors by @juliusmarminge in #3387
- [codex] Preserve relay trace error causes by @juliusmarminge in #3377
- [codex] Structure Electron protocol teardown failures by @juliusmarminge in #3310
- [codex] Preserve mobile composer draft failures by @juliusmarminge in #3348
- [codex] Preserve detached desktop action causes by @juliusmarminge in #3371
- [codex] Structure desktop network interface failures by @juliusmarminge in #3313
- [codex] Structure relay environment link errors by @juliusmarminge in #3334
- [codex] Preserve desktop asset probe failures by @juliusmarminge in #3373
- [codex] Structure Electron app boundary failures by @juliusmarminge in #3301
- [codex] Structure process resource sampling failures by @juliusmarminge in #3415
- [codex] Structure desktop backend settings read errors by @juliusmarminge in #3379
- [codex] Structure missing provider command failures by @juliusmarminge in #3384
- [codex] Structure relay publish signature errors by @juliusmarminge in #3335
- [codex] structure Bitbucket API failures by @juliusmarminge in #3332
- [codex] Bound relay registration replay diagnostics by @juliusmarminge in #3420
- [codex] Type malformed Clerk public config failures by @juliusmarminge in #3422
- [codex] Simplify desktop client settings errors by @juliusmarminge in #3265
- [codex] Structure relay JWT failures by @juliusmarminge in #3270
- [codex] sanitize provider runtime failure diagnostics by @juliusmarminge in #3414
- [codex] Structure MCP snapshot failures by @juliusmarminge in #3423
- [codex] Structure Electron updater errors by @juliusmarminge in #3280
- [codex] Structure primary environment request failures by @juliusmarminge in #3409
- [codex] Structure Claude adapter failures by @juliusmarminge in #3406
- [codex] Structure mobile secure storage failures by @juliusmarminge in #3345
- [codex] Structure desktop server exposure errors by @juliusmarminge in #3269
- [codex] Structure preview config failures by @juliusmarminge in #3271
- [codex] Structure desktop Clerk bridge failures by @juliusmarminge in #3308
- Remove persistence error constructor wrappers by @juliusmarminge in #3398
- [codex] Structure remote pairing input errors by @juliusmarminge in #3393
- [codex] Preserve desktop shell environment probe failures by @juliusmarminge in #3383
- [codex] Remove project setup error constructor wrappers by @juliusmarminge in #3329
- Structure relay auth parsing errors by @juliusmarminge in #3290
- [codex] Structure process diagnostics failures by @juliusmarminge in #3389
- [codex] Structure release metadata failures by @juliusmarminge in #3296
- Structure server environment ID failures by @juliusmarminge in #3286
- [codex] Structure desktop bridge state errors by @juliusmarminge in #3381
- [codex] Structure APNs delivery queue errors by @juliusmarminge in #3326
- [codex] Structure preview URL failures by @juliusmarminge in #3275
- [codex] Enrich process runner errors by @juliusmarminge in #3268
- [codex] Preserve trace IDs across error causes by @juliusmarminge in #3426
- [codex] Structure terminal adapter startup defects by @juliusmarminge in #3425
- [codex] Bound shared schema diagnostics by @juliusmarminge in #3424
- [codex] Structure mobile external link failures by @juliusmarminge in #3363
- [codex] structure desktop IPC registration errors by @juliusmarminge in #3291
- [codex] Structure workspace file system errors by @juliusmarminge in #3274
- [codex] structure VCS process errors by @juliusmarminge in #3408
- [codex] Structure primary environment target failures by @juliusmarminge in #3413
- [codex] sanitize ACP native event diagnostics by @juliusmarminge in #3417
- [codex] Sanitize client error log diagnostics by @juliusmarminge in #3405
- [codex] Structure telemetry identity errors by @juliusmarminge in #3306
- [codex] Structure VCS project config failures by @juliusmarminge in #3315
- [codex] Structure client VCS action errors by @juliusmarminge in #3263
- [codex] Enrich Git VCS driver errors by @juliusmarminge in #3253
- [codex] Structure Codex app-server request errors by @juliusmarminge in #3258
- [codex] structure desktop preview failures by @juliusmarminge in #3244
- [codex] Structure Tailscale command failures by @juliusmarminge in #3257
- [codex] Structure reference repo sync failures by @juliusmarminge in #3281
- [codex] Structure dev-runner failures by @juliusmarminge in #3283
- [codex] add structured Electron dialog errors by @juliusmarminge in #3284
- [codex] Structure relay deploy output errors by @juliusmarminge in #3340
- [codex] Structure preview automation errors by @juliusmarminge in #3272
- [codex] structure workspace search failures by @juliusmarminge in #3352
- [codex] Structure pairing grant failures by @juliusmarminge in #3386
- [codex] Structure relay device persistence errors by @juliusmarminge in #3344
- [codex] Structure APNs client errors by @juliusmarminge in #3318
- [codex] Structure APNs delivery job errors by @juliusmarminge in #3322
- [codex] Structure relay Live Activity errors by @juliusmarminge in #3314
- [codex] Sanitize YAML schema diagnostics by @juliusmarminge in #3427
- [codex] Structure browser recording failures by @juliusmarminge in #3330
- [codex] Structure preview automation failures by @juliusmarminge in #3333
- [codex] Structure Electron menu failures by @juliusmarminge in #3317
- [codex] Structure relay delivery attempt errors by @juliusmarminge in #3312
- [codex] Structure Discord release webhook failures by @juliusmarminge in #3285
- [codex] Structure desktop browser session errors by @juliusmarminge in #3273
- [codex] Preserve native SQLite failure context by @juliusmarminge in #3428
- [codex] Structure Electron window failures by @juliusmarminge in #3276
- [codex] Structure Codex shadow home errors by @juliusmarminge in #3262
- [codex] Structure ACP transport errors by @juliusmarminge in #3251
- [codex] Structure relay auth persistence errors by @juliusmarminge in #3250
- [codex] Structure desktop persisted credential errors by @juliusmarminge in #3239
- Align text generation error catches by @juliusmarminge in #3292
- [codex] Audit managed endpoint error context by @juliusmarminge in #3245
- [codex] Structure desktop SSH prompt presentation failures by @juliusmarminge in #3429
- [codex] Enrich source-control errors by @juliusmarminge in #3248
- [codex] Sanitize text generation CLI errors by @juliusmarminge in #3431
- [codex] Structure managed endpoint allocation failures by @juliusmarminge in #3421
- [codex] Preserve workspace root stat failures by @juliusmarminge in #3278
- Preserve trace file read causes by @juliusmarminge in #3300
- [codex] enrich Git workflow errors by @juliusmarminge in #3241
- [codex] Structure preview automation boundary failures by @juliusmarminge in #3436
- [codex] Preserve cloud disconnect diagnostics by @juliusmarminge in #3437
- [codex] Fix desktop preview event delivery errors by @juliusmarminge in #3435
- [codex] Correlate protocol request failures by @juliusmarminge in #3433
- [codex] Structure server settings failures by @juliusmarminge in #3376
- [codex] Preserve desktop backend log failures by @juliusmarminge in #3375
- [codex] Structure client state key errors by @juliusmarminge in #3374
- [codex] Preserve terminal preview link failure context by @juliusmarminge in #3367
- [codex] Structure terminal PTY operation failures by @juliusmarminge in #3364
- [codex] Structure cross-client clipboard failures by @juliusmarminge in #3361
- [codex] Structure mobile notification navigation failures by @juliusmarminge in #3359
- [codex] Structure agent awareness registration errors by @juliusmarminge in #3328
- [codex] Structure server environment-label probe failures by @juliusmarminge in #3321
- Preserve PortScanner probe defects by @juliusmarminge in #3282
- [codex] Report markdown interaction failures by @juliusmarminge in #3355
- [codex] Structure web local storage failures by @juliusmarminge in #3350
- [codex] Structure mobile thread outbox failures by @juliusmarminge in #3341
- [codex] structure project CLI failures by @juliusmarminge in #3339
- [codex] Preserve mobile review highlighter failures by @juliusmarminge in #3337
- [codex] Structure server runtime-state failures by @juliusmarminge in #3319
- [codex] Structure rotating log sink errors by @juliusmarminge in #3279
- [codex] Structure mobile relay token-store failures by @juliusmarminge in #3309
- [codex] Fix terminal cwd error test construction by @juliusmarminge in #3440
- [codex] Diagnose desktop client settings read failures by @juliusmarminge in #3432
- [codex] Preserve checkpoint repository detection failures by @juliusmarminge in #3360
- [codex] structure desktop backend process errors by @juliusmarminge in #3254
- [codex] structure source-control repository failures by @juliusmarminge in #3336
- [codex] Structure persistence error correlation by @juliusmarminge in #3439
- Preserve asset access failure causes by @juliusmarminge in #3342
- [codex] Preserve PR materialization failure chains by @juliusmarminge in #3443
- [codex] Structure pull request link failures by @juliusmarminge in #3445
- [codex] Structure mobile waitlist enrollment failures by @juliusmarminge in #3446
- [codex] Preserve desktop backend output read failures by @juliusmarminge in #3444
- [codex] Preserve Linux icon resize fallback failures by @juliusmarminge in #3447
- [codex] Structure desktop update persistence errors by @juliusmarminge in #3261
- [codex] Migrate desktop app errors to Schema by @juliusmarminge in #3449
- [codex] Structure server CLI failures by @juliusmarminge in #3450
- [codex] Model asset access failures with distinct errors by @juliusmarminge in #3448
- [codex] Structure checkpoint diff failures by @juliusmarminge in #3453
- [codex] Split project command failures by @juliusmarminge in #3459
- [codex] Structure preview capability errors by @juliusmarminge in #3454
- [codex] Structure unroutable app-server messages by @juliusmarminge in #3463
- [codex] Structure GitLab CLI failures by @juliusmarminge in #3458
- [codex] Structure Bitbucket API errors by @juliusmarminge in #3457
- [codex] Structure workspace search cleanup failures by @juliusmarminge in #3465
- [codex] Structure release metadata failures by @juliusmarminge in #3467
- [codex] Structure mobile native static-check failures by @juliusmarminge in #3464
- [codex] Structure Azure DevOps CLI failures by @juliusmarminge in #3460
- [codex] Structure desktop build script failures by @juliusmarminge in #3452
- [codex] Structure release package updater failures by @juliusmarminge in #3468
- [codex] Structure theme synchronization failures by @juliusmarminge in #3466
- [codex] Structure GitHub CLI failures by @juliusmarminge in #3456
- [codex] Structure release output failures by @juliusmarminge in #3470
- [codex] Preserve child process termination context by @juliusmarminge in #3469
- [codex] Structure VCS process boundary errors by @juliusmarminge in #3476
- [codex] Preserve APNs delivery failure context by @juliusmarminge in #3475
- [codex] Preserve VCS project config error causes by @juliusmarminge in #3474
- [codex] Preserve desktop update state causes by @juliusmarminge in #3473
- [codex] Structure OpenCode text generation failures by @juliusmarminge in #3472
- [codex] Structure primary auth validation failures by @juliusmarminge in #3471
- [codex] Structure thread archive blocked error by @juliusmarminge in #3451
- [codex] Enforce Effect error handling conventions by @juliusmarminge in #3380
- [codex] add session context to credential errors by @juliusmarminge in #3349
- chore: remove
AnnotatableFileDiffleftovers, rename file by @ipanasenko in #3488 - [codex] fix: guard trace ID clipboard copy by @StiensWout in #3505
- [codex] fix: restore pending input keyboard activation by @StiensWout in #3501
- [codex] fix: preserve localhost preview hosts by @StiensWout in #3499
- [codex] Reject unsupported remote pairing protocols by @StiensWout in #3498
- Persist mobile composer selectors across drafts by @juliusmarminge in #3496
- Stabilize composer provider state while typing by @cursor[bot] in #3507
- feat: add persistent word-wrap setting for chat code blocks and tables by @imabdulazeez in #3480
- Add main sidebar toggle by @juliusmarminge in #3497
- [codex] Restore T3 Connect account controls by @juliusmarminge in #3492
- [codex] fix: guard DPoP fallback URL construction by @StiensWout in #3503
- Bump Clerk packages and refresh lockfile by @juliusmarminge in #3511
- [codex] fix: clarify Cursor CLI setup error by @StiensWout in #3519
- [codex] fix: ignore stale shell reducer events by @StiensWout in #3517
- Reduce ChatMarkdown settings rerenders by @cursor[bot] in #3536
- [codex] fix: show standalone element-pick context by @StiensWout in #3527
- [codex] Upgrade Legend List chat scrolling by @juliusmarminge in #3545
- Restore right panel inset when maximized by @juliusmarminge in #3555
- Fix Electron dev and packaged renderer startup by @juliusmarminge in #3557
- Route preview automation through live owner streams by @juliusmarminge in #3548
- [codex] Fix preview automation edge cases by @juliusmarminge in #3561
- fix(grok): Harden ACP resume with replay-idle load readiness by @mwolson in #3156
- Stabilize chat scroll anchoring after send by @juliusmarminge in #3564
- Fix native composer lag with revision-gated updates by @juliusmarminge in #3574
- Stabilize preview browser surfaces, automation, and recording by @juliusmarminge in #3565
- Desktop: parallel WSL + Windows backends with mode picker by @Jgratton24 in #2751
- Restore chat scroll affordances and add timeline minimap by @juliusmarminge in #3587
New Contributors
- @ruzbyte made their first contribution in #2696
- @stromseng made their first contribution in #2553
- @mjc made their first contribution in #2766
- @HuakunShen made their first contribution in #2817
- @JustMarkDev made their first contribution in #3079
- @TheIcarusWings made their first contribution in #3058
- @StiensWout made their first contribution in #3096
- @Andrew-Forster made their first contribution in #3133
- @skiniks made their first contribution in #3120
- @soorria made their first contribution in #2641
- @repparw made their first contribution in #3130
- @sandersonstabo made their first contribution in #3224
- @Jgratton24 made their first contribution in #2751
Full Changelog: v0.0.27...v0.0.28