# Commit history · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commits/92972640b36286a7e1ea47853e007bf86694bd8e)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 92972640b36286a7e1ea47853e007bf86694bd8e

Requested commit: 92972640b36286a7e1ea47853e007bf86694bd8e

- [fix\(provider\): retain install ownership through process exit and cleanup](https://git.cafe/pingdotgg/t3code/commit/92972640b36286a7e1ea47853e007bf86694bd8e?format=markdown) — 92972640b36286a7e1ea47853e007bf86694bd8e; maria-rcks

- [Merge remote-tracking branch 'origin/main' into t3/background-provider-updates-int](https://git.cafe/pingdotgg/t3code/commit/838d87b967be86e9bca1d65d2628961c101305ef?format=markdown) — 838d87b967be86e9bca1d65d2628961c101305ef; maria-rcks

- [fix\(server\): a reused process id never keeps a stale install lease alive](https://git.cafe/pingdotgg/t3code/commit/b574fd0b3a2358cbab0987f6bc84583b62d96b0f?format=markdown) — b574fd0b3a2358cbab0987f6bc84583b62d96b0f; maria-rcks

- [Merge remote-tracking branch 'origin/main' into t3/background-provider-updates-int](https://git.cafe/pingdotgg/t3code/commit/ccc10147e7ad8d3bdeeb402db9c7dbe7430bd3b2?format=markdown) — ccc10147e7ad8d3bdeeb402db9c7dbe7430bd3b2; maria-rcks

- [fix\(server\): turns already holding the install lock never wait behind a waiting install](https://git.cafe/pingdotgg/t3code/commit/2934544e9f71cfa18be32aff69e7d499719a1b17?format=markdown) — 2934544e9f71cfa18be32aff69e7d499719a1b17; maria-rcks

- [fix\(server\): installs drain readers, ignore foreign symlinks, and bound installer logs](https://git.cafe/pingdotgg/t3code/commit/35b7f96ebdefd008c09277a721430c90649f0a7b?format=markdown) — 35b7f96ebdefd008c09277a721430c90649f0a7b; maria-rcks

- [test\(server\): keep the host install gate test in a temporary cache](https://git.cafe/pingdotgg/t3code/commit/7ebddc7fddfd942bfb6fc4029907b437ec50d4eb?format=markdown) — 7ebddc7fddfd942bfb6fc4029907b437ec50d4eb; maria-rcks

- [fix\(server\): pull request review guides wait for provider installs like other text generation](https://git.cafe/pingdotgg/t3code/commit/8507ed64497bc20e52f8d0d08034f91bbcd86cad?format=markdown) — 8507ed64497bc20e52f8d0d08034f91bbcd86cad; maria-rcks

- [Merge remote-tracking branch 'origin/main' into t3/background-provider-updates-int](https://git.cafe/pingdotgg/t3code/commit/d389a5df0dea542f1e8e977b17f7280f12d667cb?format=markdown) — d389a5df0dea542f1e8e977b17f7280f12d667cb; maria-rcks

- [fix\(server\): a provider install keeps admission until its last child exits, even when the server is removed or the disk is full](https://git.cafe/pingdotgg/t3code/commit/87199d08257aacb7d9c9677037ea3b1d46e12c43?format=markdown) — 87199d08257aacb7d9c9677037ea3b1d46e12c43; maria-rcks

- [docs: describe the detached provider install supervisor](https://git.cafe/pingdotgg/t3code/commit/4910b1803269582902b4576c40369d52da002c4a?format=markdown) — 4910b1803269582902b4576c40369d52da002c4a; maria-rcks

- [fix\(server\): a detached supervisor finishes provider installs after the server quits or crashes](https://git.cafe/pingdotgg/t3code/commit/fe27fa05ce36a1c32a5f7489f0928564d5849464?format=markdown) — fe27fa05ce36a1c32a5f7489f0928564d5849464; maria-rcks

- [fix\(mobile\): writable project settings follow write destinations and continuous input reports activity once](https://git.cafe/pingdotgg/t3code/commit/7e66636ce54a726394b79010b73925893388b0cf?format=markdown) — 7e66636ce54a726394b79010b73925893388b0cf; maria-rcks

- [fix\(server\): background updates recognize native pi, grok symlinks, CODEX_HOME, bun, volta and vite-plus installs](https://git.cafe/pingdotgg/t3code/commit/a2a5a16e0dee14799176f92acfe4c61462dea9f4?format=markdown) — a2a5a16e0dee14799176f92acfe4c61462dea9f4; maria-rcks

- [fix\(server\): older clients no longer show background provider installs as manual updates](https://git.cafe/pingdotgg/t3code/commit/1e0c9e69d4396219518291733ecbf48f51a020d7?format=markdown) — 1e0c9e69d4396219518291733ecbf48f51a020d7; maria-rcks

- [fix\(server\): background provider installs no longer stall or admit CLIs mid-install](https://git.cafe/pingdotgg/t3code/commit/38703ecba4232e1e38802674a3a806e354ac5afb?format=markdown) — 38703ecba4232e1e38802674a3a806e354ac5afb; maria-rcks

- [Merge remote-tracking branch 'origin/main' into t3/background-provider-updates-int](https://git.cafe/pingdotgg/t3code/commit/15afd9049634004ece12d83e74733572a03c9553?format=markdown) — 15afd9049634004ece12d83e74733572a03c9553; maria-rcks

- [test\(server\): other providers keep launching during a Codex first install](https://git.cafe/pingdotgg/t3code/commit/b74de4728456a7e72f67ec7fc666a8b987bb65d2?format=markdown) — b74de4728456a7e72f67ec7fc666a8b987bb65d2; maria-rcks

- [fix\(server\): a manual update waiting for running turns says so](https://git.cafe/pingdotgg/t3code/commit/dbbc727dfa27968729db1024b40ff795099eb722?format=markdown) — dbbc727dfa27968729db1024b40ff795099eb722; maria-rcks

- [fix\(server\): only servers share the user-wide provider install gate](https://git.cafe/pingdotgg/t3code/commit/9c22c2a6ef512ad65b4afdf39f9a41cb5cd72478?format=markdown) — 9c22c2a6ef512ad65b4afdf39f9a41cb5cd72478; maria-rcks

- [fix\(server\): a standalone Codex reached through a linked home still updates automatically](https://git.cafe/pingdotgg/t3code/commit/0226f3ce329304681d1c7d635f7b4d38fa638fe6?format=markdown) — 0226f3ce329304681d1c7d635f7b4d38fa638fe6; maria-rcks

- [fix\(web\): background provider updates stay out of the way in clients](https://git.cafe/pingdotgg/t3code/commit/e55e0fd7c63100a5b0f3f6832dc4f761837ee005?format=markdown) — e55e0fd7c63100a5b0f3f6832dc4f761837ee005; maria-rcks

- [fix\(server\): every provider CLI launch waits for a running install](https://git.cafe/pingdotgg/t3code/commit/ee29b4290d9c4b14664ba97c1ccb7ba2761135ff?format=markdown) — ee29b4290d9c4b14664ba97c1ccb7ba2761135ff; maria-rcks

- [fix\(server\): provider installs wait for turns on every T3 server on the host](https://git.cafe/pingdotgg/t3code/commit/4ae068e30bb75b1b2d3d9bf536624bc811d6c345?format=markdown) — 4ae068e30bb75b1b2d3d9bf536624bc811d6c345; maria-rcks

- [fix\(server\): background provider installs only update installs they own](https://git.cafe/pingdotgg/t3code/commit/8f13ec7106d8b0f06b5760ba2a97a331fc44b59c?format=markdown) — 8f13ec7106d8b0f06b5760ba2a97a331fc44b59c; maria-rcks

- [Merge remote-tracking branch 'origin/main' into t3/background-provider-updates](https://git.cafe/pingdotgg/t3code/commit/5948330b23bf66114bc9228c2cec95a1d77611a9?format=markdown) — 5948330b23bf66114bc9228c2cec95a1d77611a9; maria-rcks

- [fix\(opencode\): a configured OpenCode server never updates the local CLI](https://git.cafe/pingdotgg/t3code/commit/660fa8467370520727297059c3d52abbe8e97c0b?format=markdown) — 660fa8467370520727297059c3d52abbe8e97c0b; maria-rcks

- [fix\(server\): background provider installs never stall or race a provider launch](https://git.cafe/pingdotgg/t3code/commit/c4511883ab87dc0b072b929fbae7668852f1ea6e?format=markdown) — c4511883ab87dc0b072b929fbae7668852f1ea6e; maria-rcks

- [fix\(server\): background updates wait for agent background work and returning users](https://git.cafe/pingdotgg/t3code/commit/4fc9c54dc38ee716ff0b936993a7503d90041bbb?format=markdown) — 4fc9c54dc38ee716ff0b936993a7503d90041bbb; maria-rcks

- [fix\(server\): an unreadable settings file keeps automatic updates off](https://git.cafe/pingdotgg/t3code/commit/2b347172546c0465442c1bb3d80fc16a37760a05?format=markdown) — 2b347172546c0465442c1bb3d80fc16a37760a05; maria-rcks

- [docs\(server\): keep the scheduled task poll comment on listDueTasks](https://git.cafe/pingdotgg/t3code/commit/f38785969bd0a45c3cdd562b9bd815a126bac2c8?format=markdown) — f38785969bd0a45c3cdd562b9bd815a126bac2c8; maria-rcks

- [fix\(server\): a corrupt scheduled task no longer closes the update window](https://git.cafe/pingdotgg/t3code/commit/d0fb53f7d7d2e0b873c4855b287839a746ae7298?format=markdown) — d0fb53f7d7d2e0b873c4855b287839a746ae7298; maria-rcks

- [fix\(server\): only a live owning session keeps background tasks blocking updates](https://git.cafe/pingdotgg/t3code/commit/d36093c71e9cc442eddb9acd3aca2f32db3b6012?format=markdown) — d36093c71e9cc442eddb9acd3aca2f32db3b6012; maria-rcks

- [fix\(server\): queued runs and incompatible releases no longer stall background updates](https://git.cafe/pingdotgg/t3code/commit/7b9e2f9e3bcb7aadb7601e5c2ba0ce3d0cb71bc0?format=markdown) — 7b9e2f9e3bcb7aadb7601e5c2ba0ce3d0cb71bc0; maria-rcks

- [fix\(server\): keep background updates from stalling](https://git.cafe/pingdotgg/t3code/commit/973dbe5f1b2d649e2a80bec30c4ce9287ed30cfa?format=markdown) — 973dbe5f1b2d649e2a80bec30c4ce9287ed30cfa; maria-rcks

- [fix\(server\): a canceled provider update no longer blocks background updates](https://git.cafe/pingdotgg/t3code/commit/1bec6f306621932fe9f25e9488bbbbe7946357a7?format=markdown) — 1bec6f306621932fe9f25e9488bbbbe7946357a7; maria-rcks

- [fix\(server\): frequent scheduled tasks no longer hold back background updates](https://git.cafe/pingdotgg/t3code/commit/e2fec1d844b4cf229a91374c475b7e412d02443f?format=markdown) — e2fec1d844b4cf229a91374c475b7e412d02443f; maria-rcks

- [refactor\(server\): simplify background provider updates](https://git.cafe/pingdotgg/t3code/commit/ce07c8670e26f504e9555e6f6a5935894bb139cc?format=markdown) — ce07c8670e26f504e9555e6f6a5935894bb139cc; maria-rcks

- [chore\(updates\): keep simulation tooling local](https://git.cafe/pingdotgg/t3code/commit/37abc15e670593acee77eb885dc9cb4333e61ddf?format=markdown) — 37abc15e670593acee77eb885dc9cb4333e61ddf; maria-rcks

- [chore\(server\): carry lab project recovery](https://git.cafe/pingdotgg/t3code/commit/db712fd1e10ae788de09bf7ef402cdd4477b1c96?format=markdown) — db712fd1e10ae788de09bf7ef402cdd4477b1c96; maria-rcks

- [chore\(server\): carry update lab host guard](https://git.cafe/pingdotgg/t3code/commit/4234eee939e06293ae4475c8801249fd5d0f3daf?format=markdown) — 4234eee939e06293ae4475c8801249fd5d0f3daf; maria-rcks

- [chore\(server\): sync provider updates with main](https://git.cafe/pingdotgg/t3code/commit/82e6ca2d6f22653da8e18e5af83c06cf721985fb?format=markdown) — 82e6ca2d6f22653da8e18e5af83c06cf721985fb; maria-rcks

- [fix\(server\): preserve maintenance admission effect types](https://git.cafe/pingdotgg/t3code/commit/aac65cfc630499d469872c2dec7fabeb9a15152d?format=markdown) — aac65cfc630499d469872c2dec7fabeb9a15152d; maria-rcks

- [fix\(server\): clear canceled provider install queues](https://git.cafe/pingdotgg/t3code/commit/bc2441fed3bd1372f20f5ac6b8b94e3a35dae5d3?format=markdown) — bc2441fed3bd1372f20f5ac6b8b94e3a35dae5d3; maria-rcks

- [fix\(server\): serialize manual installs with background updates](https://git.cafe/pingdotgg/t3code/commit/82a96439c3d5c7d08ef05856462060f3d7e3b676?format=markdown) — 82a96439c3d5c7d08ef05856462060f3d7e3b676; maria-rcks

- [fix\(server\): wait for background installs before provider startup](https://git.cafe/pingdotgg/t3code/commit/bd670c71c75cc158fe17f8002a2dc92ec0cd2535?format=markdown) — bd670c71c75cc158fe17f8002a2dc92ec0cd2535; maria-rcks

- [Merge branch 't3/update-lab' into t3/background-provider-updates](https://git.cafe/pingdotgg/t3code/commit/19f854c649611a65d3f2d9707a8b110cfac2b9f4?format=markdown) — 19f854c649611a65d3f2d9707a8b110cfac2b9f4; maria-rcks

- [fix\(server\): keep background updates behind pending work](https://git.cafe/pingdotgg/t3code/commit/08d378e1c1060c6d6495e473d89369bfbe7db07d?format=markdown) — 08d378e1c1060c6d6495e473d89369bfbe7db07d; maria-rcks

- [Merge branch 't3/update-lab' into t3/background-provider-updates](https://git.cafe/pingdotgg/t3code/commit/8e693e8d04f4f9417cdf6200a82465532e00dfc6?format=markdown) — 8e693e8d04f4f9417cdf6200a82465532e00dfc6; maria-rcks

- [feat\(server\): update provider CLIs in the background when nothing is running](https://git.cafe/pingdotgg/t3code/commit/25b6b08e4b4c9b126551f336df879f27c27625b4?format=markdown) — 25b6b08e4b4c9b126551f336df879f27c27625b4; maria-rcks

- [feat\(dev\): add an update lab for multi-environment update testing](https://git.cafe/pingdotgg/t3code/commit/9d6b5ea2b6b14d398f6fcb95685463e102d354e3?format=markdown) — 9d6b5ea2b6b14d398f6fcb95685463e102d354e3; maria-rcks

- [fix\(web\): chat content keeps pace with sidebar resizing \(\#17383\)](https://git.cafe/pingdotgg/t3code/commit/a6698271a41a4c1f2c42f25ca5d69cd7d1fa9c30?format=markdown) — a6698271a41a4c1f2c42f25ca5d69cd7d1fa9c30; oliver

- [feat\(web\): assign a thread details panel shortcut \(\#16694\)](https://git.cafe/pingdotgg/t3code/commit/b1508672a63c4799fed6d9091001de00175d9316?format=markdown) — b1508672a63c4799fed6d9091001de00175d9316; maria

- [fix\(web\): distinguish project filter from new project \(\#12113\)](https://git.cafe/pingdotgg/t3code/commit/22ccf8a3dfc9094b4ccdb689e128c67bacbbcdf5?format=markdown) — 22ccf8a3dfc9094b4ccdb689e128c67bacbbcdf5; Lakshmi Tanmay

- [fix\(web\): settled and snoozed lines line up with the messages above them \(\#17191\)](https://git.cafe/pingdotgg/t3code/commit/a947f7c099dd279108a4bdfc5e0cced6c5c30b71?format=markdown) — a947f7c099dd279108a4bdfc5e0cced6c5c30b71; Rakshith Bhat

- [fix\(web\): keep chat banners inside the lane beside the docked details card \(\#17094\)](https://git.cafe/pingdotgg/t3code/commit/c5d4d2d04cce7c7fa60ac1c51974c4328cbaa8e5?format=markdown) — c5d4d2d04cce7c7fa60ac1c51974c4328cbaa8e5; maco

- [fix\(web\): Local environment switch stays reachable after turning it off \(\#17359\)](https://git.cafe/pingdotgg/t3code/commit/2cf0ff0643e23d13658114fbf3a7e76753559755?format=markdown) — 2cf0ff0643e23d13658114fbf3a7e76753559755; Scott Norteman

- [fix\(connect\): Cloudflare and other VPN addresses no longer show as Tailscale \(\#17158\)](https://git.cafe/pingdotgg/t3code/commit/ec80933ac8cd02fec5c97b342462ccc9567cdb1e?format=markdown) — ec80933ac8cd02fec5c97b342462ccc9567cdb1e; shivam

- [fix\(server\): relay client updates no longer drop the host off T3 Connect \(\#17366\)](https://git.cafe/pingdotgg/t3code/commit/101f8b2f55df50d4f8d70ed8e6b8e0edf71a2f31?format=markdown) — 101f8b2f55df50d4f8d70ed8e6b8e0edf71a2f31; Theo Browne

- [refactor\(provider-acp-registry\): move the ACP Registry into its own package \(\#17405\)](https://git.cafe/pingdotgg/t3code/commit/43f8a8de17a7ac1baa7a3cf36d681856de2d8add?format=markdown) — 43f8a8de17a7ac1baa7a3cf36d681856de2d8add; Julius Marminge

- [test\(provider-pi\): cover continuation offers through the driver \(\#17407\)](https://git.cafe/pingdotgg/t3code/commit/cb46c62504aca99295a4a8879644625a20685b7f?format=markdown) — cb46c62504aca99295a4a8879644625a20685b7f; Julius Marminge

- [fix\(server\): reconcile Pi native session rewinds \(\#13839\)](https://git.cafe/pingdotgg/t3code/commit/7a2b1c72beed4f560aebb41aa7b26e0792eeb938?format=markdown) — 7a2b1c72beed4f560aebb41aa7b26e0792eeb938; Wout Stiens

- [fix\(server\): keep the Claude MCP token out of process arguments \(\#17408\)](https://git.cafe/pingdotgg/t3code/commit/c908cea52510ed29199c3cc477204da425601301?format=markdown) — c908cea52510ed29199c3cc477204da425601301; Julius Marminge

- [fix\(server\): Pi loads every selected skill without losing prompt text \(\#17194\)](https://git.cafe/pingdotgg/t3code/commit/3b6af0bd1600f034b0466e1b8ff017fbabeba910?format=markdown) — 3b6af0bd1600f034b0466e1b8ff017fbabeba910; Wout Stiens

- [fix\(server\): a logged-out Claude CLI no longer reports as authenticated \(\#15459\)](https://git.cafe/pingdotgg/t3code/commit/563645cf6e104ad930f4c9b209678a77eef07e65?format=markdown) — 563645cf6e104ad930f4c9b209678a77eef07e65; Yordis Prieto

- [fix\(server\): a timed-out browser drag no longer exits the server \(\#17360\)](https://git.cafe/pingdotgg/t3code/commit/8f760371978f05b49e6f6b6aa4b2c523ab14b4fe?format=markdown) — 8f760371978f05b49e6f6b6aa4b2c523ab14b4fe; Scott Norteman

- [fix\(web\): show a row spinner instead of a banner when expanding a folder \(\#17378\)](https://git.cafe/pingdotgg/t3code/commit/5785df19ea748be0755244582cb70d785f95f830?format=markdown) — 5785df19ea748be0755244582cb70d785f95f830; Julius Marminge

- [refactor\(providers\): adapter factories yield their services \(\#17381\)](https://git.cafe/pingdotgg/t3code/commit/b000eac171318bf0130865387ae33523eecd3019?format=markdown) — b000eac171318bf0130865387ae33523eecd3019; Julius Marminge

- [fix\(desktop\): cancel backend pipe reads to avoid slow shutdown \(\#17386\)](https://git.cafe/pingdotgg/t3code/commit/c9fa1367caff4cd6595386814e1f8bb950d3d3ef?format=markdown) — c9fa1367caff4cd6595386814e1f8bb950d3d3ef; Yash Singh

- [fix\(server\): speed up long thread message sync \(\#17387\)](https://git.cafe/pingdotgg/t3code/commit/42c6623d492850c747b7ba06c1d0f1e1559d0ad5?format=markdown) — 42c6623d492850c747b7ba06c1d0f1e1559d0ad5; Yash Singh

- [refactor\(provider-grok\): move Grok into its own provider package \(\#17357\)](https://git.cafe/pingdotgg/t3code/commit/b707eeb052782cfd8b1ff0445f84b2aaf01da38b?format=markdown) — b707eeb052782cfd8b1ff0445f84b2aaf01da38b; Julius Marminge

- [refactor\(provider-acp\): move the shared ACP adapter into its own package \(\#17354\)](https://git.cafe/pingdotgg/t3code/commit/664bd5e524bb58b23ecab0f2e413fc2ecb4caf55?format=markdown) — 664bd5e524bb58b23ecab0f2e413fc2ecb4caf55; Julius Marminge

- [refactor\(provider-cursor\): move Cursor into its own provider package \(\#17349\)](https://git.cafe/pingdotgg/t3code/commit/b5e4f1e0b0c2c06f183ab6a89072bec21c8334c4?format=markdown) — b5e4f1e0b0c2c06f183ab6a89072bec21c8334c4; Julius Marminge

- [refactor\(provider-opencode\): move OpenCode into its own provider package \(\#17345\)](https://git.cafe/pingdotgg/t3code/commit/e62161bc5b53389a462d066836d47d25df0f4134?format=markdown) — e62161bc5b53389a462d066836d47d25df0f4134; Julius Marminge

- [fix\(auth\): show connection permissions and enforce session lifetime \(\#17370\)](https://git.cafe/pingdotgg/t3code/commit/456930a09db29efdd3d4a397fe214e9ede2d6975?format=markdown) — 456930a09db29efdd3d4a397fe214e9ede2d6975; Julius Marminge

- [refactor\(providers\): namespace-import service modules in core, Muse, Pi, and testing \(\#17375\)](https://git.cafe/pingdotgg/t3code/commit/2c7a446e657e705c257db28540819f4c0115b2fc?format=markdown) — 2c7a446e657e705c257db28540819f4c0115b2fc; Julius Marminge

- [fix\(web\): drop sidebar context before cancelling pointer drag \(\#17373\)](https://git.cafe/pingdotgg/t3code/commit/b0ee7dd48f868c5c02884345f723bebaf616b13d?format=markdown) — b0ee7dd48f868c5c02884345f723bebaf616b13d; Yash Singh

- [fix\(web\): add room for thread timeline markers \(\#17372\)](https://git.cafe/pingdotgg/t3code/commit/29980a31409234b676f97bd477c4e46fdb61a929?format=markdown) — 29980a31409234b676f97bd477c4e46fdb61a929; Yash Singh

- [fix\(server\): agent browser tools stop bloating history, fall back sensibly, and respect ownership \(\#16956\)](https://git.cafe/pingdotgg/t3code/commit/dbd83435347d13d5f456271f4f1f5efe294a111d?format=markdown) — dbd83435347d13d5f456271f4f1f5efe294a111d; Julius Marminge

- [feat\(mobile\): fade working threads and match web's status labels \(\#17368\)](https://git.cafe/pingdotgg/t3code/commit/c724c7cb02aaeb0a23ff6e5e224d17c0fdb9a36b?format=markdown) — c724c7cb02aaeb0a23ff6e5e224d17c0fdb9a36b; Julius Marminge

- [fix\(mobile\): restore chat image previews in the v5 stack \(\#17361\)](https://git.cafe/pingdotgg/t3code/commit/393ff4c968073d8419e5bade06000998602af6ad?format=markdown) — 393ff4c968073d8419e5bade06000998602af6ad; Julius Marminge

- [fix\(web\): semantic branch naming hint lines up with its setting \(\#16972\)](https://git.cafe/pingdotgg/t3code/commit/6308db4ff500b89821e22605f964b1701cead8ee?format=markdown) — 6308db4ff500b89821e22605f964b1701cead8ee; Daniel Alvim

- [refactor\(provider-muse\): move Muse Code into its own provider package \(\#17331\)](https://git.cafe/pingdotgg/t3code/commit/5b78b34bba8645a268900f946858ea1470621c41?format=markdown) — 5b78b34bba8645a268900f946858ea1470621c41; Julius Marminge

- [fix\(web\): images, video, HTML and PDF preview in a thread before its first message \(\#17352\)](https://git.cafe/pingdotgg/t3code/commit/e0c80c198cfbb2afe04528cd6a7ec1d2f21606dd?format=markdown) — e0c80c198cfbb2afe04528cd6a7ec1d2f21606dd; Julius Marminge

- [fix\(desktop\): the t3 command warns instead of installing behind another t3 \(\#17351\)](https://git.cafe/pingdotgg/t3code/commit/3bfbc37dbf37095816eda500f3f1e05cb98bb95b?format=markdown) — 3bfbc37dbf37095816eda500f3f1e05cb98bb95b; Julius Marminge

- [fix\(web\): desktop opens remote environments' browser tabs locally \(\#17316\)](https://git.cafe/pingdotgg/t3code/commit/66298aa926e6a4c95ebecbc576a68634315899c0?format=markdown) — 66298aa926e6a4c95ebecbc576a68634315899c0; Julius Marminge

- [fix\(desktop\): browser tab fixes for fullscreen, shortcuts, links, reload and hidden tabs \(\#16961\)](https://git.cafe/pingdotgg/t3code/commit/d9f7c0caed5cc0fe84cec97f2b6f002084542a4e?format=markdown) — d9f7c0caed5cc0fe84cec97f2b6f002084542a4e; Julius Marminge

- [fix\(server\): environment-hosted browser tabs behave like a normal browser \(\#16963\)](https://git.cafe/pingdotgg/t3code/commit/5754121c23f73201d47a96feb97eca7b96334a2a?format=markdown) — 5754121c23f73201d47a96feb97eca7b96334a2a; Julius Marminge

- [fix\(web\): file previews handle downloads, in-page links, and repo paths, and favicons stop leaking internal hosts \(\#16950\)](https://git.cafe/pingdotgg/t3code/commit/741377ce5fb1578916659cbb93fd403b26dbeb62?format=markdown) — 741377ce5fb1578916659cbb93fd403b26dbeb62; Julius Marminge

- [refactor\(provider-core\): share attachment prompts, notifications, and event loggers \(\#17330\)](https://git.cafe/pingdotgg/t3code/commit/e38b6a188fafd499df347331f8c8279ff320c207?format=markdown) — e38b6a188fafd499df347331f8c8279ff320c207; Julius Marminge

- [fix\(muse\): workflow subagents no longer stall on hidden approvals \(\#17329\)](https://git.cafe/pingdotgg/t3code/commit/d81afa0a6f403bd6e5562ffcee2484089a1fdc3f?format=markdown) — d81afa0a6f403bd6e5562ffcee2484089a1fdc3f; Theo Browne

- [fix\(web\): collapsed composer reserves room for wide send actions \(\#17016\)](https://git.cafe/pingdotgg/t3code/commit/48b71f0eb323d08c8fcadfe54adf34becb2984da?format=markdown) — 48b71f0eb323d08c8fcadfe54adf34becb2984da; maria

- [feat\(models\): tell users when a CLI update unlocks a new model \(\#17307\)](https://git.cafe/pingdotgg/t3code/commit/7b57b723d3b7490b50fffbd99fe89c6aa98fae1f?format=markdown) — 7b57b723d3b7490b50fffbd99fe89c6aa98fae1f; Julius Marminge

- [refactor\(provider-pi\): move Pi into its own provider package \(\#17302\)](https://git.cafe/pingdotgg/t3code/commit/9b0df1358f9f9c3277bcb33777c2435b88ee75c4?format=markdown) — 9b0df1358f9f9c3277bcb33777c2435b88ee75c4; Julius Marminge

- [refactor\(settings\): drop the legacy per-driver providers map \(\#17300\)](https://git.cafe/pingdotgg/t3code/commit/2c1160783ea4b4dcc1c1f1ab04639ffc0aaa289d?format=markdown) — 2c1160783ea4b4dcc1c1f1ab04639ffc0aaa289d; Julius Marminge

- [refactor\(provider-core\): add provider-core and provider-testing packages \(\#17299\)](https://git.cafe/pingdotgg/t3code/commit/9eea28bacd27b2ee6d5183e195c397bba8b515a0?format=markdown) — 9eea28bacd27b2ee6d5183e195c397bba8b515a0; Julius Marminge

- [fix\(shared\): bound cloudflared download with 10-minute timeout \(\#14139\)](https://git.cafe/pingdotgg/t3code/commit/580948708b66f2a971199670f76cb6b43119e9a4?format=markdown) — 580948708b66f2a971199670f76cb6b43119e9a4; Kevin Rajan

- [chore\(shared\): bump managed cloudflared to 2026.10.0 \(\#11184\)](https://git.cafe/pingdotgg/t3code/commit/af3d842a001d030ed528396bf59cf02bbf373cd0?format=markdown) — af3d842a001d030ed528396bf59cf02bbf373cd0; Aaron Queen

- [fix\(shared\): release relay install locks on cancellation \(\#10585\)](https://git.cafe/pingdotgg/t3code/commit/c377d1ca17dbce42008fbb05fccd95468b13d329?format=markdown) — c377d1ca17dbce42008fbb05fccd95468b13d329; Aditya Garud

- [fix\(shared\): relay client install waits out a brief Windows file lock \(\#16998\)](https://git.cafe/pingdotgg/t3code/commit/bd565bd1794f49f176ad137555faa46224716138?format=markdown) — bd565bd1794f49f176ad137555faa46224716138; Scott Norteman

More commits follow; continue with `GET /api/repos/pingdotgg/t3code/commits?after=IjJhOTM4ODViYWM1Nzk4YTc5ZDU1MDY5YTBiNWRjM2U1M2M2MTc2YmMi`.
