The VSΒ Code extension that brings your Claude, ChatGPTΒ /Β Codex, Antigravity, and more subscriptions into GitHubΒ CopilotΒ Chat
No API key β just OAuth.
β¦and use them to write your Git commit messages, too.
- π Ready in minutes β install, sign in, and start chatting.
- π Native model picker β choose your models directly in Copilot Chat.
- π§ Reasoning built in β pick the thinking effort and follow reasoning live.
- π Quota at a glance β see remaining usage and redeem available Codex resets with confirmation.
- β¨ More than chat β generate commit messages, titles, and summaries.
- π₯ Account load balancing β add multiple accounts for the same provider; CLIProxyAPI distributes requests round-robin across available accounts and skips those in cooldown.
Warning
Use entirely at your own risk and discretion. This extension routes chat through your personal AI subscription accounts over OAuth. Accessing subscriptions outside their official apps may violate provider terms and could result in rate limiting or account suspension.
Requires VS Code 1.131+ and the GitHub Copilot Chat extension.
- Install β get Universal Chat Provider from the VS Code Marketplace. Prefer to build it yourself? See Development.
- Add an account β accept the Add Account prompt (or run
Universal Chat Provider: Add Account), pick a provider, and complete OAuth in your browser. Models refresh automatically. - Chat β open Copilot Chat and select a model under Universal Chat Provider.
Manage everything from the status bar item or the Universal Chat Provider: Manage Provider command β inspect quota, redeem OpenAI-provided Codex reset credits, list/remove accounts, restart, update, or reset the managed server.
Let your models handle Copilot's light background tasks and Explore searches. Run Universal Chat Provider: Set Utility Model (or use the status bar menu), pick a model (and thinking effort), done. A small, fast, inexpensive model is usually the best fit. Clear it to undo.
How it works
The command points Copilot's chat.utilityModel, chat.utilitySmallModel, and chat.exploreAgent.defaultModel settings at your selected model, so commit messages, chat titles, summaries, and Explore searches run through your accounts. When the model supports thinking levels, the command also asks for the utility Thinking Effort; commit messages use chat.utilitySmallModel plus that effort. No Copilot subscription required.
The extension runs CLIProxyAPI locally and registers its models with VS Code. Your subscriptions then appear directly in the Copilot Chat model picker.
Settings
| Key | Description | Type | Default |
|---|---|---|---|
| βΏ Connection | |||
universalChatProvider.server.mode |
How CLIProxyAPI is provided. | string |
"managed" |
universalChatProvider.baseUrl |
CLIProxyAPI server URL. Used only in external mode. | string |
"http://127.0.0.1:8317" |
universalChatProvider.configPath |
Optional CLIProxyAPI config.yaml path for credential and model metadata discovery. | string |
"" |
universalChatProvider.autoDetectConfig |
Search common CLIProxyAPI config locations when no config path is set. | boolean |
true |
| βΏ Managed Server | |||
universalChatProvider.server.updatePolicy |
How managed CLIProxyAPI updates are handled. | string |
"automatic" |
universalChatProvider.server.version |
CLIProxyAPI release used when update policy is Manual. Use latest or an exact version. | string |
"latest" |
universalChatProvider.server.proxyUrl |
Optional upstream proxy URL for the managed CLIProxyAPI server. Changes prompt before restarting. | string |
"" |
| βΏ Status Bar | |||
universalChatProvider.showQuotaWarnings |
Warn in the status bar when the model in use is low on quota. | boolean |
true |
universalChatProvider.quotaWarningThreshold |
Remaining-quota percent below which the status bar warning appears. | number |
10 |
| βΏ Advanced | |||
universalChatProvider.debugLevel |
Diagnostic detail to collect. Request Logging prompts before restarting the managed server and writes sensitive payloads to disk. | string |
"off" |
Commands
| Command | Title |
|---|---|
universalChatProvider.manage |
Universal Chat Provider: Manage Provider |
universalChatProvider.login |
Universal Chat Provider: Add Account (Login) |
universalChatProvider.manageAccounts |
Universal Chat Provider: Manage Accounts |
universalChatProvider.showQuota |
Universal Chat Provider: Show Quota |
universalChatProvider.restartServer |
Universal Chat Provider: Restart Managed Server |
universalChatProvider.updateBinary |
Universal Chat Provider: Update Proxy Binary |
universalChatProvider.resetServer |
Universal Chat Provider: Reset Managed Server |
universalChatProvider.configure |
Universal Chat Provider: Configure Connection |
universalChatProvider.importConfig |
Universal Chat Provider: Import API Key from Config |
universalChatProvider.refresh |
Universal Chat Provider: Refresh Models |
universalChatProvider.setUtilityModel |
Universal Chat Provider: Set Utility Model (commit messages, chat titles, summaries) |
universalChatProvider.clearCredentials |
Universal Chat Provider: Clear Stored API Key |
universalChatProvider.showLogs |
Universal Chat Provider: Show Logs |
universalChatProvider.showServerLogs |
Universal Chat Provider: Show Server Output |
universalChatProvider.openSettings |
Universal Chat Provider: Open Settings |
Managed-server updates
Updates download automatically by default and restart the managed server as soon as no requests are active. Change universalChatProvider.server.updatePolicy to suggestUpdates or manual if you'd rather review or pin them yourself. Manual mode uses the configured version, which defaults to latest; enter an exact version to pin it.
Bring your own CLIProxyAPI server
Prefer to run CLIProxyAPI yourself, such as on a remote or shared machine?
- Set
universalChatProvider.server.modetoexternal. - Start CLIProxyAPI and complete the provider login there.
- Use the Import API Key notification action when a local config is found, or run Configure Connection to enter the URL and key manually.
The API key is stored in VS Code SecretStorage. In external mode, the extension never starts or stops the server. If the server exposes a plaintext remote-management.secret-key, the Add Account and Manage Accounts commands work against it too.
pnpm install
pnpm vscode:dts
pnpm check # lint + typecheck + tests + build
pnpm ext:package # produce an installable .vsixPress F5 from VS Code Insiders to launch the Extension Development Host with the proposed APIs enabled.
MIT Β· Not affiliated with GitHub, OpenAI, Anthropic, or Google.
