# Commit history · pingdotgg/t3code

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

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

Visibility: public

Requested revision: ee29b4290d9c4b14664ba97c1ccb7ba2761135ff

Requested commit: ee29b4290d9c4b14664ba97c1ccb7ba2761135ff

- [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

- [fix\(connect\): relay client updates itself and skips incompatible cloudflared \(\#17275\)](https://git.cafe/pingdotgg/t3code/commit/2a93885bac5798a79d55069a0b5dc3e53c6176bc?format=markdown) — 2a93885bac5798a79d55069a0b5dc3e53c6176bc; Julius Marminge

- [fix\(server\): recognize authenticated GitHub Enterprise hosts \(\#11059\)](https://git.cafe/pingdotgg/t3code/commit/cdd331b6c3f78bf24b039b09937b837d2d71a4e7?format=markdown) — cdd331b6c3f78bf24b039b09937b837d2d71a4e7; Grzegorz Mandziak

- [test\(desktop\): expect JetBrains IDEs among remote editors \(\#17291\)](https://git.cafe/pingdotgg/t3code/commit/740f591221bd9651f172237d68b7daba9d050dbd?format=markdown) — 740f591221bd9651f172237d68b7daba9d050dbd; Julius Marminge

- [feat\(editors\): open remote projects in JetBrains IDEs over SSH \(\#17271\)](https://git.cafe/pingdotgg/t3code/commit/df616cc5491dcc7dd80d3ade8decd88f7a652220?format=markdown) — df616cc5491dcc7dd80d3ade8decd88f7a652220; Julius Marminge

- [fix\(server\): keep newly discovered models out of legacy groups \(\#14314\)](https://git.cafe/pingdotgg/t3code/commit/fd25c42ae6e56a82be7219950a746572b1c4d0e9?format=markdown) — fd25c42ae6e56a82be7219950a746572b1c4d0e9; Bilal Bakr

- [fix\(mobile\): preserve navigation after native swipe back \(\#17268\)](https://git.cafe/pingdotgg/t3code/commit/805967a878e6804d58c151f29d2a3d0a06828fd1?format=markdown) — 805967a878e6804d58c151f29d2a3d0a06828fd1; Julius Marminge

- [fix\(server\): Pi discovers workspace skills and commands \(\#17190\)](https://git.cafe/pingdotgg/t3code/commit/0b6ec43c54165a87941b7a070849be8979646040?format=markdown) — 0b6ec43c54165a87941b7a070849be8979646040; Wout Stiens

- [fix\(desktop\): generate valid User-Agent that follows RFC 9110 guidelines \(\#17264\)](https://git.cafe/pingdotgg/t3code/commit/a0066d5cb7d18abd786c1c23bf835f898490fd37?format=markdown) — a0066d5cb7d18abd786c1c23bf835f898490fd37; jztmanyl

- [fix\(server\): Pi editor dialogs prefill the answer composer \(\#17206\)](https://git.cafe/pingdotgg/t3code/commit/e8f5850b824572bab76bf810696f875eb648eff9?format=markdown) — e8f5850b824572bab76bf810696f875eb648eff9; Wout Stiens

- [fix\(web\): stack merge dialog closes as soon as you confirm \(\#17116\)](https://git.cafe/pingdotgg/t3code/commit/eb1cf7bd0efba7364d53907036f5b7eefb379c39?format=markdown) — eb1cf7bd0efba7364d53907036f5b7eefb379c39; oliver

- [fix\(server\): Pi discovers optional T3 tools on demand \(\#17220\)](https://git.cafe/pingdotgg/t3code/commit/de72286ee5777319fde054e7a82023916ce6f481?format=markdown) — de72286ee5777319fde054e7a82023916ce6f481; Wout Stiens

- [fix\(server\): Pi extension wakes get an owned continuation turn \(\#17214\)](https://git.cafe/pingdotgg/t3code/commit/f999eb2a8e7d8db74d4f4ab7dd66f86163e1a226?format=markdown) — f999eb2a8e7d8db74d4f4ab7dd66f86163e1a226; Wout Stiens

- [fix\(web\): distinguish thread search matches from code tints \(\#17263\)](https://git.cafe/pingdotgg/t3code/commit/62a5d3720f82f2dc3ace48fcb26c90c6e3976b50?format=markdown) — 62a5d3720f82f2dc3ace48fcb26c90c6e3976b50; Yash Singh

- [fix\(web\): centered scrollers no longer shift when the scrollbar appears \(\#17077\)](https://git.cafe/pingdotgg/t3code/commit/07a8b9ece40bc20a5f84ce78d12f621518065863?format=markdown) — 07a8b9ece40bc20a5f84ce78d12f621518065863; maria

- [fix\(mobile\): HTML pages in a thread no longer trap scrolling on Android \(\#17211\)](https://git.cafe/pingdotgg/t3code/commit/61b9790816a8af359ab7e8ba0b52a3481353b18d?format=markdown) — 61b9790816a8af359ab7e8ba0b52a3481353b18d; Dara Adedeji

- [fix\(server\): pairing tokens work on Node versions that cannot bind booleans \(\#16730\)](https://git.cafe/pingdotgg/t3code/commit/4daec109cdf8e3e92b392017d7564e735e54f6fd?format=markdown) — 4daec109cdf8e3e92b392017d7564e735e54f6fd; chise

- [fix\(mobile\): keep native screens ordered during stack pops \(\#17231\)](https://git.cafe/pingdotgg/t3code/commit/a6ec88f7a716fc421bd22c2484881c44110f9375?format=markdown) — a6ec88f7a716fc421bd22c2484881c44110f9375; Julius Marminge

- [docs\(internals\): add a checklist for adding a provider \(\#17229\)](https://git.cafe/pingdotgg/t3code/commit/a65b43892f14bd6c1280296a37a11bd5234be00d?format=markdown) — a65b43892f14bd6c1280296a37a11bd5234be00d; Julius Marminge

- [feat\(web\): improve terminal scrollback navigation and snapshots \(\#17091\)](https://git.cafe/pingdotgg/t3code/commit/9a3070bcf023c3c025633659addeef4cf628133a?format=markdown) — 9a3070bcf023c3c025633659addeef4cf628133a; Wout Stiens

- [feat\(web\): find messages and plans in the current thread \(\#10439\)](https://git.cafe/pingdotgg/t3code/commit/12069eefd707f78eafc27812027c994eea0613cf?format=markdown) — 12069eefd707f78eafc27812027c994eea0613cf; Jono Kemball

- [fix\(web\): link pull requests to threads in folders that aren't Git repos \(\#15946\)](https://git.cafe/pingdotgg/t3code/commit/a4c9494b0e3606775cc5fc929fc138399288bd43?format=markdown) — a4c9494b0e3606775cc5fc929fc138399288bd43; shivam

- [feat\(web\): Add provider button sits with the provider list \(\#17152\)](https://git.cafe/pingdotgg/t3code/commit/5e2225671f705fcd33f1ea5591b79ba612fb6974?format=markdown) — 5e2225671f705fcd33f1ea5591b79ba612fb6974; Theo Browne

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