Commits

fix(desktop): include Linux package license and app metadata (#16597)

f4f148eb67 • Julius Marminge • 4d ago

chore(review): CodeRabbit gates outside contributors' pull requests (#16332)

c9b21b28e2 • Erik Thorelli • 4d ago

chore(tsconfig): turn off the Schema-over-JSON diagnostic in test files (#16375)

7bee189dfb • Erik Thorelli • 4d ago

feat(web): copy an environment's MCP URL for outside agents (#16337)

fbe5df2d4b • Julius Marminge • 4d ago

feat(server): outside agents sign in to the T3 MCP server with OAuth (#16336)

2c8be5893e • Julius Marminge • 4d ago

feat(server): every T3 MCP tool declares who may call it (#16335)

2f85686d9d • Julius Marminge • 4d ago

perf(web): diff panel no longer re-renders every file header each time a patch arrives (#16033)

f21d6da51c • Stevan Borus • 4d ago

feat(web): note anonymous usage data in onboarding and link the privacy policy (#16564)

115640ae49 • Julius Marminge • 4d ago

docs(marketing): disclose product usage data in the privacy policy (#16562)

3b44698d07 • Julius Marminge • 4d ago

fix(desktop): honor the telemetry opt-out from the shell profile (#16563)

78c9fcaafc • Julius Marminge • 4d ago

fix(web): diff panel keeps the chosen scope while a turn runs (#16571)

3dfe373fdd • Julius Marminge • 4d ago

fix(server): Rebase stack moves each layer onto the rebased layer below it (#16551)

1eae9c2efe • Julius Marminge • 4d ago

feat: choose the GitHub account per host, save a GitHub token, and fewer reads per PR action (#16322)

9ac8f33f16 • Julius Marminge • 4d ago

feat(server): source control, media and discovery use GitHub's API instead of gh (#16321)

649418f01f • Julius Marminge • 4d ago

feat(server): pull requests talk to GitHub's API instead of the gh CLI (#16320)

adc3c9327a • Julius Marminge • 4d ago

feat(server): GitHub API transport that uses gh only for the token (#16319)

1564aaa5d2 • Julius Marminge • 4d ago

fix(mobile): keep usage-limit notice opaque (#15602)

7bf6de1741 • Benedikt Rump • 4d ago

fix(desktop): build AppImage with the static runtime toolset (fixes libfuse2 launch failure) (#7765)

9b2c03ee25 • Lorenzo • 4d ago

fix(web): stop wide ordered list markers from clipping (#16523)

8c61e254fd • Utkarsh Patil • 4d ago

feat(web): reopen closed tabs across the app (#15207)

b83d731cab • Bilal Bakr • 4d ago

fix(web): show subagent effort and speed in hover cards (#13056)

29366ea29a • Bilal Bakr • 4d ago

fix(web): Apple logo no longer dips below the device host label (#14825)

9503155da6 • Jake Leventhal • 4d ago

fix(orchestration-v2): show reported subagent models (#14108)

eea9f7cfeb • Bilal Bakr • 4d ago

chore(deps): upgrade @effect/tsgo to 0.46.1 (#16360)

78552a8c61 • Erik Thorelli • 4d ago

fix(mcp): preserve thread command rejection reasons (#15627)

b38aa18365 • maria • 4d ago

fix(release): unblock nightly browser tests and cli builds (#16515)

fd1c3386c4 • maria • 4d ago

fix(mcp): mark declared tool failures as errors (#15617)

dff412c341 • maria • 4d ago

fix: restore service references breaking ci (#16495)

17c0878941 • maria • 4d ago

feat(preview): run the browser on the environment server (#15328)

ac8e9453ca • maria • 4d ago

fix(server): OpenCode 2 threads get T3 Code's MCP tools (#16142)

9bd1d8009a • Nikita Koynov • 4d ago

fix(shared): find versioned JetBrains macOS app bundles (#16246)

e6abc01788 • Sypher760-gif • 4d ago

fix(desktop): use the crypto service for screenshot IDs (#16415)

4fb04fe7fa • Yash Singh • 4d ago

fix(server): reject invalid explicit Bitbucket repositories (#15876)

9ae9f2ba1f • Arav Jain • 4d ago

fix(web): queued messages no longer split the composer notice stack (#16400)

4980ba282e • Tristan Manchester • 4d ago

fix(server): end clone options before the repository URL (#14781)

e65063ccf6 • Alex Southwell • 4d ago

fix(desktop): prevent browser screenshot filename collisions (#14784)

411cef0008 • Alex Southwell • 4d ago

fix(web): type in front of bold that starts a composer line (#13217)

d0dc45885c • Alex Southwell • 4d ago

fix(release): resolve version-qualified catalog overrides (#16411)

1f2b10c25b • Yash Singh • 4d ago

fix(orchestration-v2): let Stop recover stalled runs (#15442)

a7a2230c33 • Yash Singh • 4d ago

fix(server): avoid scanning completed history for pending secrets (#16409)

0290c4a04e • Yash Singh • 4d ago

fix(desktop): retry transient bearer bootstrap and degrade on session fetch failure (#12919)

76d3c96fd5 • James Villarrubia • 4d ago

fix(server): Pi thread titles use linked PR context (#16210)

4ae976dbae • Julius Marminge • 4d ago

fix(relay): export traces through one tracer, one request span each (#16382)

442735897f • Julius Marminge • 4d ago

refactor: Effect code gets UUIDs and SHA-256 from Effect's Crypto (#16377)

83b982a85c • Erik Thorelli • 4d ago

fix(web): bring back the live shimmer on work log rows (#16372)

8f75697b9e • Julius Marminge • 4d ago

fix(relay): error and deadline responses carry CORS headers (#16253)

0ecb78ed0d • Julius Marminge • 4d ago

fix(observability): T3 Connect tracing stops at the relay boundary (#16314)

25f0b2a1b7 • Julius Marminge • 4d ago

chore(lint): catch known tags with Effect.catchTags (#16361)

ff397a2952 • Erik Thorelli • 4d ago

fix(server): main's settings, keybindings and session tests compile again (#16363)

fad6732256 • Julius Marminge • 4d ago

fix(contracts): trimmed IDs round-trip (#16300)

2d162d157d • Julius Marminge • 4d ago

refactor(web): import connection storage as a namespace in its test (#16315)

efeeb7737b • Julius Marminge • 4d ago

fix(server): metrics count interrupted work on the monotonic clock (#16207)

c299308a83 • Julius Marminge • 4d ago

fix(shared): DrainableWorker keeps running after a failed item (#16223)

24e4b62c88 • Julius Marminge • 4d ago

chore: keep one copy each of undici 8 and ws 8 (#16211)

4b3568b775 • Julius Marminge • 4d ago

fix(server): the PR cache sweep only removes real entry files (#16285)

bfe40e6d25 • Julius Marminge • 4d ago

fix(server): one-shot initializers no longer race (#16260)

327a29ef56 • Julius Marminge • 4d ago

fix(server): caches and ids are written atomically (#16242)

eef36a67c3 • Julius Marminge • 4d ago

Add esthor to the list of GitHub users

3236d8ce73 • Julius Marminge • 4d ago

fix(server): Claude limits load again for users with large transcript histories (#16358)

255ac27d52 • Theo Browne • 4d ago

fix(server): project favicons stop being rescanned every minute (#16206)

24edd55d94 • Theo Browne • 4d ago

fix(server): main's startup auto-pull test compiles again (#16357)

61a0ec9eb0 • Theo Browne • 4d ago

perf(shared): scan PATH once per command before spawning, not on every spawn (#12600)

71964e670f • SkiTee3000 • 4d ago

fix(server): status polling no longer locks the git index (#14718)

447046b589 • ahalekelly • 4d ago

fix(observability): a failing trace disk no longer stalls the server (#13758)

570b72d839 • Theo Browne • 4d ago

fix(server): probe project favicon candidates concurrently (#12543)

b69f8b5ff0 • Ishaan Kothari • 4d ago

fix(server): return partial workspace index on timeout (#11500)

fec71c5ab4 • Michel Liao • 4d ago

fix(web): avoid blocking image preparation conversions (#13342)

ff2fda7d6d • Bilal Bakr • 4d ago

fix(server): stop the startup project sync from delaying the app window (#14912)

2103bfaa77 • Igor Makowski • 4d ago

fix(server): forks no longer merge into their upstream repo's project group (#16353)

017c9a0eb5 • Theo Browne • 4d ago

refactor(server): replay guards stay in CloudLink (#16349)

99db70cf1a • Julius Marminge • 4d ago

refactor(server): CloudLink fails with its own errors; the connect routes map them to HTTP (#16341)

68e50db20b • Julius Marminge • 4d ago

refactor(server): CloudLink keeps only the link lifecycle; pure checks live beside it (#16340)

ff873b2ec1 • Julius Marminge • 4d ago

chore(review): turn off CodeRabbit's docstring coverage check (#16328)

3a9c1a6df1 • Erik Thorelli • 4d ago

chore(review): point CodeRabbit at the web UI conventions (#16324)

c21f93e430 • Erik Thorelli • 4d ago

docs(relay): add the legacy tunnel cleanup rollout runbook (#13568)

204a639096 • Julius Marminge • 4d ago

feat(connect): tell users when an idle tunnel was removed (#13567)

6b456a9618 • Julius Marminge • 4d ago

perf(relay): delete expired tunnels four at a time within a time budget (#13566)

6bfc8baeb8 • Julius Marminge • 4d ago

feat(relay): clean up tunnels of hosts that never registered recovery (#13565)

41d2535a90 • Julius Marminge • 4d ago

feat(relay): measure the managed tunnel backlog (#13564)

7b32b2ca39 • Julius Marminge • 4d ago

fix(relay): stop forcing manual relay deploys by default (#13563)

18c1210810 • Julius Marminge • 4d ago

fix(web): recover from a closed IndexedDB connection (#16311)

9c49228f54 • Julius Marminge • 4d ago

feat(desktop): the renderer's bootstrap token rotates every 12 hours (#16275)

5afe18eaf9 • Julius Marminge • 4d ago

fix(web): a rejected desktop-local credential is not retried every poll (#16273)

f36df18524 • Julius Marminge • 4d ago

refactor(relay): import HookInboxObject once, as a namespace (#16307)

8bd7745f0a • Julius Marminge • 4d ago

chore(lint): require a reason on every lint and type-checker suppression (#16294)

31d0c8a4f4 • Erik Thorelli • 4d ago

docs: put the Effect and web UI review rules in the docs (#16286)

6262e5f500 • Erik Thorelli • 4d ago

chore(review): configure CodeRabbit in TypeScript (#16281)

ea54be7f85 • Erik Thorelli • 4d ago

refactor(server): one module per service instead of Services/ and Layers/ folders (#16295)

3d17862e58 • Julius Marminge • 4d ago

fix(web): inline HTML renders no longer trap the thread's scroll (#16283)

64275ae396 • Theo Browne • 4d ago

fix(web): sidebar drag and drop no longer snaps back (#16291)

db4d0a8e6e • Theo Browne • 4d ago

refactor(server): T3 Connect link capabilities live in a CloudLink service (#16265)

9422e2ee12 • Julius Marminge • 4d ago

refactor: layer variables are named layer or layerXyz (#16282)

ecfdda5fa8 • Julius Marminge • 4d ago

fix(pull-requests): PR detail reads no longer drain the GitHub quota (#16280)

4df84a7d03 • Theo Browne • 4d ago

perf(server): PR watches spend ~90% fewer GitHub points by checking a 1-point fingerprint first (#16270)

758dc290e9 • Theo Browne • 4d ago

perf(server): idle status polls and PR sweeps start fewer git processes (#16272)

dcbaf05279 • Theo Browne • 4d ago

feat(server,web): choose where new worktrees are created (#16231)

1024941575 • Julius Marminge • 4d ago

feat(server): log how long PR watches stay quiet before they end (#16262)

fc4ecc835e • Theo Browne • 4d ago

refactor(server): import service modules as namespaces, not aliased layers (#16267)

6302d66f77 • Julius Marminge • 4d ago

fix(server): a T3 Connect preferences save finishes even if the client disconnects (#16266)

ee6991ad50 • Julius Marminge • 4d ago

refactor(server,relay): webhook capabilities live in services, not handlers (#16232)

7a047d0136 • Julius Marminge • 4d ago