feat(agents): update adapters and runtimes automatically for new connections - #803
Open
Adam-Dalloul wants to merge 2 commits into
Open
Adam-Dalloul wants to merge 2 commits into
Adam-Dalloul wants to merge 2 commits into
Conversation
Adam-Dalloul
marked this pull request as ready for review
September 22, 2026 18:38
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updating an ACP adapter does not necessarily update the runtime it bundles. That can leave new models unavailable even with the latest adapter installed.
Adds an opt-in Automatic (latest) update policy to every agent distribution: npm, binary releases and Python/uvx. New connections check the published release source, prepare exact versions in separate caches, then use the agent's own ACP model list. Claude, Codex and pi also refresh their separate runtimes through their supported executable overrides. Custom entries and extra accounts use the same package-based path.
Running conversations, selected models, account directories and explicit runtime overrides are preserved. Manual Pinned/Latest modes keep their behavior, and installing a custom version turns Automatic off. Checks are throttled to one per hour, failures retry after five minutes and retain the prior prepared/installed launch. Binary checksums are preserved. No hardcoded model list or custom-model-ID entry.
Validation: all seven CI checks pass, covering frontend lint/tests/build and Rust tests/Clippy on Linux, macOS and Windows. The Linux server suite passed 4,160 tests. Locally, 270 focused frontend/launcher tests, TypeScript, ESLint and the production build passed. Live isolated launches of Claude ACP 0.81.0 with Claude Code 2.1.280 advertised Opus 5.5; Codex ACP 1.12.0 with Codex 0.155.1 initialized and advertised seven models. No model generation was requested by those update probes.
Implementation and behavior are documented in
docs/automatic-agent-updates.md. This supersedes the model-entry approach in #641.