Add agent provider disable registry (no behavior change)#790
Add agent provider disable registry (no behavior change)#790OmarAlex24 wants to merge 2 commits into
Conversation
Introduce DISABLED_AGENT_PROVIDERS (empty) and gate catalog, streaming, settings, and sidecar routing so any provider can be turned off later while bundled CLIs stay shipped. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@OmarAlex24 is attempting to deploy a commit to the Caspian's Team Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9bb96fd208
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const cursorManager = new CursorSessionManager(); | ||
| const opencodeManager = new OpencodeSessionManager(); | ||
| const managers: Record<Provider, SessionManager> = { | ||
| const allManagers: Record<Provider, SessionManager> = { |
There was a problem hiding this comment.
Restore shutdown's manager map reference
When the Rust side requests sidecar shutdown, handleShutdown still calls Object.values(managers), but this change renamed the only manager map to allManagers and no managers binding remains. That makes shutdown throw a ReferenceError before awaiting provider shutdowns or sending the pong ack, so app exit/restart can hang and leave agent child processes alive.
Useful? React with 👍 / 👎.
📄 Knowledge review✏️ Suggested updates1 page suggestion needs review.
📝 05 - Sidecar Overview — suggested changes@@ -36,6 +36,7 @@
- **Claude Code** (Anthropic) — via the Claude Agent SDK.
- **Codex** (OpenAI) — via the Codex SDK.
- **Cursor** — via the Cursor SDK.
+- **OpenCode** — via the OpenCode SDK.
Each provider manages its own auth. The sidecar just forwards credentials from the environment or config.
How did I do? Any feedback? |
Summary
DISABLED_AGENT_PROVIDERSregistry across Rust, frontend, and sidecar so any agent provider can be disabled without removing bundled CLIs.KNOWN_PROVIDERS,DEFAULT_PROVIDER_CAPABILITIES) instead of introducing a new shipping list.Test plan
Unavailablewithout prefs)enabledAgentProviders()returns all four providers"opencode"toDISABLED_AGENT_PROVIDERSin the three registry files and verify UI/streaming hide OpenCode whileget_agent_versionsstill reports the CLIMade with Cursor