# Commit history · pingdotgg/t3code

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

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

Visibility: public

Requested revision: b6aa268b12e8eb6d5aab52e5e09c12e255fca905

Requested commit: b6aa268b12e8eb6d5aab52e5e09c12e255fca905

- [fix\(web\): stop button icon no longer shifts on hover \(\#16012\)](https://git.cafe/pingdotgg/t3code/commit/b6aa268b12e8eb6d5aab52e5e09c12e255fca905?format=markdown) — b6aa268b12e8eb6d5aab52e5e09c12e255fca905; Anneshu Nag

- [perf\(server\): keep passive terminal output flowing \(\#17178\)](https://git.cafe/pingdotgg/t3code/commit/0981e6b9d421ec46010d9b9edebd0beb241ef472?format=markdown) — 0981e6b9d421ec46010d9b9edebd0beb241ef472; Wout Stiens

- [docs\(install\): polish binary install destination phrasing \(\#15732\)](https://git.cafe/pingdotgg/t3code/commit/b822420e5074d750e7258ea48568666720cf0415?format=markdown) — b822420e5074d750e7258ea48568666720cf0415; Ege

- [fix\(git\): allow creating prs from dirty worktrees \(\#15625\)](https://git.cafe/pingdotgg/t3code/commit/6e4ca6ce9d04009af290412b77a0acb9be9f8a18?format=markdown) — 6e4ca6ce9d04009af290412b77a0acb9be9f8a18; maria

- [fix\(web\): timeline divider pill shows a pointer, visible hover and focus ring \(\#15188\)](https://git.cafe/pingdotgg/t3code/commit/e08c31e1a1fd5e89e2d4130b9ad18b44d15f92cd?format=markdown) — e08c31e1a1fd5e89e2d4130b9ad18b44d15f92cd; jonesfionn101-dotcom

- [fix\(web\): section header chevrons point up when collapsed \(\#14273\)](https://git.cafe/pingdotgg/t3code/commit/c1f21e53b3b138cc591f9df90bd5c8aef6a00ce4?format=markdown) — c1f21e53b3b138cc591f9df90bd5c8aef6a00ce4; Bishal Banerjee

- [fix\(chat\): surface pending subagent questions on parents \(\#16634\)](https://git.cafe/pingdotgg/t3code/commit/ed4ea1083d477b67304f50d5691ba5fc2b9496cd?format=markdown) — ed4ea1083d477b67304f50d5691ba5fc2b9496cd; maria

- [fix\(server\): probe only owned preview listeners \(\#16687\)](https://git.cafe/pingdotgg/t3code/commit/318201caa520525517ef2bee8f4bbeedb2fec1d7?format=markdown) — 318201caa520525517ef2bee8f4bbeedb2fec1d7; maria

- [fix\(web\): scale Files tree with interface font size \(\#8011\)](https://git.cafe/pingdotgg/t3code/commit/f34adad34f21510e867b47fe018c7975779a0ffc?format=markdown) — f34adad34f21510e867b47fe018c7975779a0ffc; M.Umais Adeed

- [fix\(web\): attachments on an open question are visible again \(\#15537\)](https://git.cafe/pingdotgg/t3code/commit/0b9623fda1085416ef22e3a70cc5dcf1158f25bc?format=markdown) — 0b9623fda1085416ef22e3a70cc5dcf1158f25bc; tiliakoos

- [fix\(web\): place notification icons after titles \(\#12209\)](https://git.cafe/pingdotgg/t3code/commit/07b80800124982bce94879a97767a5365987e8f1?format=markdown) — 07b80800124982bce94879a97767a5365987e8f1; Lakshmi Tanmay

- [fix\(checkpoint\): pulls and rebases no longer flood a turn's changed files \(\#17161\)](https://git.cafe/pingdotgg/t3code/commit/f3a69c70c6a5bc624e1b5eb80901d8b7c901ad6f?format=markdown) — f3a69c70c6a5bc624e1b5eb80901d8b7c901ad6f; Theo Browne

- [test\(usage\): usage service tests keep their state directory until cache writes land \(\#17636\)](https://git.cafe/pingdotgg/t3code/commit/e858ddb65668d54be5de3996f30c0bd5c3149657?format=markdown) — e858ddb65668d54be5de3996f30c0bd5c3149657; Tristan Knight

- [fix\(storage\): make worktree cleanup work and show why it skipped \(\#17563\)](https://git.cafe/pingdotgg/t3code/commit/0caa95d6eb471ab033ea670914d61070c65be806?format=markdown) — 0caa95d6eb471ab033ea670914d61070c65be806; maria

- [fix\(web\): server browser page resizes while the panel is dragged \(\#17660\)](https://git.cafe/pingdotgg/t3code/commit/eddc8fb817dbdb6c9ce34a30a2781c02ae8be9e0?format=markdown) — eddc8fb817dbdb6c9ce34a30a2781c02ae8be9e0; maria

- [perf\(web\): sidebar drags restyle only the sidebar \(\#17659\)](https://git.cafe/pingdotgg/t3code/commit/033866c7aa55c53593ca31538f7d8ac99fdfe0fd?format=markdown) — 033866c7aa55c53593ca31538f7d8ac99fdfe0fd; maria

- [fix\(web\): terminal drawer keeps its height after the window shrinks \(\#17658\)](https://git.cafe/pingdotgg/t3code/commit/42e1a0fba2938bd56761db63f466962342d7b779?format=markdown) — 42e1a0fba2938bd56761db63f466962342d7b779; maria

- [fix\(web\): right panel and terminal drawer follow the pointer while dragging \(\#17657\)](https://git.cafe/pingdotgg/t3code/commit/ca40de081c3ab087cd6458ce9bef12e43c5a7233?format=markdown) — ca40de081c3ab087cd6458ce9bef12e43c5a7233; maria

- [fix\(web\): every resize-driven layout commits in the same frame \(\#17656\)](https://git.cafe/pingdotgg/t3code/commit/d97060709ca7741c0c45d2ffad4e241b992259f2?format=markdown) — d97060709ca7741c0c45d2ffad4e241b992259f2; maria

- [fix\(server\): report incomplete transcript usage scans \(\#15661\)](https://git.cafe/pingdotgg/t3code/commit/b87b13d41426418c4f42c6477ce62cfe2a43fbae?format=markdown) — b87b13d41426418c4f42c6477ce62cfe2a43fbae; maria

- [feat\(web\): draft screen project picker is searchable \(\#17664\)](https://git.cafe/pingdotgg/t3code/commit/b744bded016b15b9b5ade552a3e28270ac20176f?format=markdown) — b744bded016b15b9b5ade552a3e28270ac20176f; Julius Marminge

- [fix\(web\): composer banner actions stay inline whenever they fit \(\#17640\)](https://git.cafe/pingdotgg/t3code/commit/3e94afa7c26734f525a7d8a9cdb47896e8618cf8?format=markdown) — 3e94afa7c26734f525a7d8a9cdb47896e8618cf8; maria

- [fix\(web\): keep branch restore action inline in narrow composers \(\#14811\)](https://git.cafe/pingdotgg/t3code/commit/cc62349c37fa486000b89c7ecc975c1bf66ec8a4?format=markdown) — cc62349c37fa486000b89c7ecc975c1bf66ec8a4; Saikrishna Ambeti

- [test\(server\): the ACP process-tree test no longer collides with the runner's own pid \(\#17647\)](https://git.cafe/pingdotgg/t3code/commit/202b95403a7d6b7b01390b6a90457fa76e1be439?format=markdown) — 202b95403a7d6b7b01390b6a90457fa76e1be439; Yordis Prieto

- [feat\(desktop\): T3 Code can be your default web browser on macOS \(\#17587\)](https://git.cafe/pingdotgg/t3code/commit/38571328a4bc3c30c56fc0cae299437fe9b53898?format=markdown) — 38571328a4bc3c30c56fc0cae299437fe9b53898; Julius Marminge

- [fix\(server\): Codex shadow homes replace stray sqlite maintenance locks \(\#17663\)](https://git.cafe/pingdotgg/t3code/commit/140ee145ac33653ac2c36f7940e4f54f6e92497f?format=markdown) — 140ee145ac33653ac2c36f7940e4f54f6e92497f; Julius Marminge

- [fix\(mobile\): prevent row presses during native back swipes \(\#17648\)](https://git.cafe/pingdotgg/t3code/commit/5fe9d024d9b1c28ec93d495cf1441c57e47ae7ce?format=markdown) — 5fe9d024d9b1c28ec93d495cf1441c57e47ae7ce; Julius Marminge

- [fix\(ui\): keep focus and selection borders visible across the app \(\#16675\)](https://git.cafe/pingdotgg/t3code/commit/5dcb59ed6c191589e730fb964aabad005466eb6d?format=markdown) — 5dcb59ed6c191589e730fb964aabad005466eb6d; maria

- [fix\(models\): remove new badges from Claude Opus and Sonnet 5.5 \(\#17646\)](https://git.cafe/pingdotgg/t3code/commit/08e18b7833c9b5d33bfcd1ce8976dcb67c11dde5?format=markdown) — 08e18b7833c9b5d33bfcd1ce8976dcb67c11dde5; Exotic

- [fix\(web\): pending requests wait until you stop typing \(\#17637\)](https://git.cafe/pingdotgg/t3code/commit/99d2651dd5f82eeed800672e371427d7266dfe72?format=markdown) — 99d2651dd5f82eeed800672e371427d7266dfe72; maria

- [fix\(clients\): remove redundant prefix from PR watch status \(\#17635\)](https://git.cafe/pingdotgg/t3code/commit/0c4012055deacd43876b80902caad6dd7d6a2eef?format=markdown) — 0c4012055deacd43876b80902caad6dd7d6a2eef; Exotic

- [feat\(web\): filter PR comments by bots and resolved threads \(\#17645\)](https://git.cafe/pingdotgg/t3code/commit/6cd02e98f7edd78b7bde9ceff26c829476dbeb77?format=markdown) — 6cd02e98f7edd78b7bde9ceff26c829476dbeb77; Julius Marminge

- [refactor\(shared\): host process references live in a HostProcess module \(\#17641\)](https://git.cafe/pingdotgg/t3code/commit/e30852213ed3954037091582057f71918918e19f?format=markdown) — e30852213ed3954037091582057f71918918e19f; Julius Marminge

- [refactor: home directory comes from a HostProcessHomeDirectory reference \(\#17628\)](https://git.cafe/pingdotgg/t3code/commit/58916b6554f45ac518bd8150dd10f1f536e40aac?format=markdown) — 58916b6554f45ac518bd8150dd10f1f536e40aac; Julius Marminge

- [refactor\(source-control\): Forgejo identity and Azure DevOps addressing move into their packages \(\#17624\)](https://git.cafe/pingdotgg/t3code/commit/51347aca3aa73112bc1e288ae45507ce515f42a2?format=markdown) — 51347aca3aa73112bc1e288ae45507ce515f42a2; Julius Marminge

- [refactor\(source-control\): PullRequestService reads GitHub resolvers, not its kind \(\#17619\)](https://git.cafe/pingdotgg/t3code/commit/2ce3e4ae74deb63bda7aaf059949a12aaaefed56?format=markdown) — 2ce3e4ae74deb63bda7aaf059949a12aaaefed56; Julius Marminge

- [refactor\(source-control\): GitManager reads provider resolvers, not host kinds \(\#17617\)](https://git.cafe/pingdotgg/t3code/commit/49f849ecce3667abab7ce9e6aaa42dfd2e3c45d7?format=markdown) — 49f849ecce3667abab7ce9e6aaa42dfd2e3c45d7; Julius Marminge

- [feat\(mobile\): support Duo in the shared iOS app \(\#12648\)](https://git.cafe/pingdotgg/t3code/commit/c85dc642681a944e644cbbbea7257d274822c21a?format=markdown) — c85dc642681a944e644cbbbea7257d274822c21a; Julius Marminge

- [test\(usage\): v4 cache upgrade test waits for the migrated cache write \(\#17553\)](https://git.cafe/pingdotgg/t3code/commit/a0a0e94822a0c675fbe0792ef94ff218101aeb66?format=markdown) — a0a0e94822a0c675fbe0792ef94ff218101aeb66; Igor Makowski

- [fix\(web\): composer context strip pads both edges evenly \(\#17562\)](https://git.cafe/pingdotgg/t3code/commit/6586a01f41bd692f02d565d38f97b52a8067317e?format=markdown) — 6586a01f41bd692f02d565d38f97b52a8067317e; Daniel Alvim

- [refactor\(usage\): usage readers use Effect FileSystem and SqlClient \(\#17615\)](https://git.cafe/pingdotgg/t3code/commit/b1ec4b36876e7f3ad03a1e9e921286ec7d58fe95?format=markdown) — b1ec4b36876e7f3ad03a1e9e921286ec7d58fe95; Julius Marminge

- [refactor\(usage\): Antigravity usage is a reader on its driver \(\#17579\)](https://git.cafe/pingdotgg/t3code/commit/9a0766b0238f2c044a965dcba32c6cb7ea0b63cd?format=markdown) — 9a0766b0238f2c044a965dcba32c6cb7ea0b63cd; Julius Marminge

- [refactor\(usage\): Cursor account usage comes from provider-cursor \(\#17578\)](https://git.cafe/pingdotgg/t3code/commit/5a9c664b3ec8214cc5847d561efa130ba213eb38?format=markdown) — 5a9c664b3ec8214cc5847d561efa130ba213eb38; Julius Marminge

- [refactor\(usage\): OpenCode usage comes from provider-opencode \(\#17577\)](https://git.cafe/pingdotgg/t3code/commit/23957c704b43c25a253baf2644829e88cf45917f?format=markdown) — 23957c704b43c25a253baf2644829e88cf45917f; Julius Marminge

- [refactor\(usage\): transcript readers come from their drivers \(\#17576\)](https://git.cafe/pingdotgg/t3code/commit/e5dca2332fed450c6f1b3c7472666fbe80531c5a?format=markdown) — e5dca2332fed450c6f1b3c7472666fbe80531c5a; Julius Marminge

- [refactor\(source-control\): GitHub lives in @t3tools/source-control-github \(\#17607\)](https://git.cafe/pingdotgg/t3code/commit/507361bc7301982279b9f115bbae8f22268ce9d6?format=markdown) — 507361bc7301982279b9f115bbae8f22268ce9d6; Julius Marminge

- [refactor\(source-control\): Bitbucket lives in @t3tools/source-control-bitbucket \(\#17597\)](https://git.cafe/pingdotgg/t3code/commit/8d1858d9d608d78b67268cdc52bceb4302ae8870?format=markdown) — 8d1858d9d608d78b67268cdc52bceb4302ae8870; Julius Marminge

- [refactor\(source-control\): GitLab lives in @t3tools/source-control-gitlab \(\#17594\)](https://git.cafe/pingdotgg/t3code/commit/eb459b5afaf42621a6cb2e698715fa017e26e5d7?format=markdown) — eb459b5afaf42621a6cb2e698715fa017e26e5d7; Julius Marminge

- [refactor\(source-control\): Azure DevOps lives in @t3tools/source-control-azure-devops \(\#17592\)](https://git.cafe/pingdotgg/t3code/commit/d01febb509a376d93af2d298a7787449792b5fcb?format=markdown) — d01febb509a376d93af2d298a7787449792b5fcb; Julius Marminge

- [refactor\(source-control\): Forgejo lives in @t3tools/source-control-forgejo \(\#17581\)](https://git.cafe/pingdotgg/t3code/commit/f6e45028efb69d208a45aee8c2fa514adde44977?format=markdown) — f6e45028efb69d208a45aee8c2fa514adde44977; Julius Marminge

- [refactor\(source-control\): add @t3tools/source-control-core \(\#17573\)](https://git.cafe/pingdotgg/t3code/commit/28f11ed7a5a2251ebe4689643b64425760ee5fe4?format=markdown) — 28f11ed7a5a2251ebe4689643b64425760ee5fe4; Julius Marminge

- [refactor\(client\): sign relay request URLs built from the HttpApi contract \(\#17602\)](https://git.cafe/pingdotgg/t3code/commit/0e7abea7c98060db537fe81f31ce5ba7c6d376d0?format=markdown) — 0e7abea7c98060db537fe81f31ce5ba7c6d376d0; Julius Marminge

- [fix\(client\): load earlier turns works for MCP threads over T3 Connect \(\#17599\)](https://git.cafe/pingdotgg/t3code/commit/a1db449fe4fecafcb473340771163e791b7fb3d6?format=markdown) — a1db449fe4fecafcb473340771163e791b7fb3d6; Julius Marminge

- [feat\(desktop\): passkeys in the in-app browser on macOS \(\#16952\)](https://git.cafe/pingdotgg/t3code/commit/454b94a13aea918f27bb060d8d054d4cfb791bc2?format=markdown) — 454b94a13aea918f27bb060d8d054d4cfb791bc2; Julius Marminge

- [fix\(server\): restart inactivity after snoozed threads wake \(\#16674\)](https://git.cafe/pingdotgg/t3code/commit/0a4d789128100ed7ccd6d42f454946aea8edfca8?format=markdown) — 0a4d789128100ed7ccd6d42f454946aea8edfca8; maria

- [feat\(web\): add parent thread breadcrumb navigation \(\#16666\)](https://git.cafe/pingdotgg/t3code/commit/5722496b79079ac317a984f3baca8c88f41af070?format=markdown) — 5722496b79079ac317a984f3baca8c88f41af070; maria

- [fix\(mobile\): show waiting thread status \(\#16693\)](https://git.cafe/pingdotgg/t3code/commit/1fd558d9e25493e2a49da625aa35dc80a52b0257?format=markdown) — 1fd558d9e25493e2a49da625aa35dc80a52b0257; maria

- [fix\(web\): keep checkout stable while pr actions load \(\#16625\)](https://git.cafe/pingdotgg/t3code/commit/7856908b8492b7a5c381aa2d5a5c4d4292eb976b?format=markdown) — 7856908b8492b7a5c381aa2d5a5c4d4292eb976b; maria

- [fix\(devices\): recover stalled video without losing simulator input \(\#17566\)](https://git.cafe/pingdotgg/t3code/commit/ecfb7342edde9160b7df4231d4f145c7e4a30530?format=markdown) — ecfb7342edde9160b7df4231d4f145c7e4a30530; Julius Marminge

- [chore\(deps\): upgrade Effect to 4.0.2 \(\#17571\)](https://git.cafe/pingdotgg/t3code/commit/91a6646efd98622dc9cef7061387e20bc389463f?format=markdown) — 91a6646efd98622dc9cef7061387e20bc389463f; Julius Marminge

- [fix\(web\): pr merge actions stay visible while the stack refreshes \(\#17559\)](https://git.cafe/pingdotgg/t3code/commit/aa8c6662e212a4307bd4e585661da99a358e46d4?format=markdown) — aa8c6662e212a4307bd4e585661da99a358e46d4; maria

- [fix\(marketing\): use app wordmark in header \(\#13240\)](https://git.cafe/pingdotgg/t3code/commit/64972461c0606a4eafdd3cd08056155b6a2fea95?format=markdown) — 64972461c0606a4eafdd3cd08056155b6a2fea95; Lakshmi Tanmay

- [refactor\(provider-cursor\): follow the Effect service conventions \(\#17545\)](https://git.cafe/pingdotgg/t3code/commit/33806e73555107b8ac8fb18fd15b9dfb87ec6557?format=markdown) — 33806e73555107b8ac8fb18fd15b9dfb87ec6557; Julius Marminge

- [refactor\(provider-acp\): ACP, ACP Registry and Grok follow the Effect service conventions \(\#17544\)](https://git.cafe/pingdotgg/t3code/commit/f853d514cab475e73468f7cb7bab1aae48dbe549?format=markdown) — f853d514cab475e73468f7cb7bab1aae48dbe549; Julius Marminge

- [refactor\(provider\): bring opencode, muse, pi, core and testing in line with Effect conventions \(\#17542\)](https://git.cafe/pingdotgg/t3code/commit/31b04e2ee929660d80d5931ed53fd17bf1d33ce6?format=markdown) — 31b04e2ee929660d80d5931ed53fd17bf1d33ce6; Julius Marminge

- [refactor\(provider-core\): MCP provider sessions live in a McpProviderSessions service \(\#17446\)](https://git.cafe/pingdotgg/t3code/commit/784b5625f9e228cca8dd67e6e24e402325672544?format=markdown) — 784b5625f9e228cca8dd67e6e24e402325672544; Julius Marminge

- [refactor\(provider-core\): latest-version lookups go through a ProviderLatestVersions service \(\#17434\)](https://git.cafe/pingdotgg/t3code/commit/68ab16f3084236871685bed5032cb05c7c436dbd?format=markdown) — 68ab16f3084236871685bed5032cb05c7c436dbd; Julius Marminge

- [refactor\(provider-core\): follow the Effect service conventions throughout \(\#17427\)](https://git.cafe/pingdotgg/t3code/commit/b66dd402e86899c3fb4341d46c32d0d69df1eefc?format=markdown) — b66dd402e86899c3fb4341d46c32d0d69df1eefc; Julius Marminge

- [refactor\(provider-core\): expose model metadata through a ModelCatalog port \(\#17417\)](https://git.cafe/pingdotgg/t3code/commit/2c1915b3193f16e2493709b480e6622645d0ca4e?format=markdown) — 2c1915b3193f16e2493709b480e6622645d0ca4e; Julius Marminge

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

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