More Providers
OpenAI-compatible language model providers for GitHub Copilot Chat.
Adds 258 model providers to VS Code's Copilot Chat — just enter your API key and start chatting.
Providers
Major Providers
Chinese / APAC Providers
Cloud / Dedicated Providers
Local / Self-Hosted
| Provider |
Default Endpoint |
| Ollama |
http://127.0.0.1:11434 |
| LM Studio |
http://localhost:1234/v1 |
| LocalAI |
http://localhost:8080/v1 |
| Jan |
http://localhost:1337/v1 |
| GPT4All |
http://localhost:4891/v1 |
| KoboldCPP |
http://localhost:5001/v1 |
| Llamafile |
http://localhost:8080/v1 |
| llama.cpp |
http://localhost:8080/v1 |
| vLLM |
http://localhost:8000/v1 |
| SGLang |
http://localhost:30000/v1 |
| TGI |
http://localhost:8080/v1 |
| Aphrodite Engine |
http://localhost:2242/v1 |
| Xinference |
http://localhost:9997/v1 |
| Tabby |
http://localhost:8080/v1 |
| Triton Inference |
http://localhost:8000/v1 |
| Lemonade Server |
http://localhost:8080/v1 |
| Petals |
http://localhost:8080 |
Proxy / Gateway
Specialized / Other
Getting Started
- Open VS Code and install the extension.
- Open Copilot Chat and click the model picker.
- Choose a provider (e.g. "Groq" or "DeepSeek").
- Enter your API key when prompted.
- Models are fetched automatically from the provider's API.
Commands available in the Command Palette (Ctrl+Shift+P):
<Provider>: Test Connection — Verify your API key and endpoint.
<Provider>: Set Custom API Endpoint — Override the default base URL.
How It Works
The extension registers each provider as a VS Code language model chat provider. All providers speak the OpenAI-compatible chat completions API.
Model listing — Models are fetched dynamically from each provider's /models (or /v1/models) endpoint. No hardcoded model lists. The model picker populates automatically after you enter your API key.
Model information — Each model's context window (from Models.dev's limit.context, or the explicit limit.input input budget where declared), output limit, reasoning support, image input (attachment) and tool calling (tool_call) are looked up from the Models.dev catalogue. These values drive the context size and capabilities Copilot shows in the model picker and whether thinking blocks are rendered. The catalogue is fetched at activation and cached in VS Code's global state, so a previous successful fetch keeps the picker correct even if the network is unavailable. Limits declared by the provider's own /models endpoint are used as a fallback.
Streaming — Responses are streamed via SSE (data: lines) and rendered in real time.
Tool calling — Tools are collected from streamed deltas and emitted when the model finishes with tool_calls.
Thinking / reasoning — For models flagged as reasoning models (via Models.dev's reasoning flag, falling back to Kimi models), thinking blocks are streamed and rendered as collapsible sections. A thinking field ({ type: "enabled", keep: "all" }) is sent in the request body for those models.
Kimi-specific headers — Kimi requires extra headers to identify as an accepted client (X-Msh-Platform, X-Msh-Version, etc.). These are only sent for the Kimi provider.
API
All providers use the OpenAI-compatible chat completions endpoint.
Request Fields
| Field |
Notes |
model |
Model ID from the provider's model list |
messages |
Standard chat message array |
stream |
Always true for Copilot Chat |
thinking |
Kimi only: { type: "enabled", keep: "all" } or { type: "disabled" } |
top_p |
Optional |
max_tokens |
Optional, sent alongside max_completion_tokens for broad compatibility |
tools |
Optional, from Copilot tool definitions |
tool_choice |
Optional, auto or required |
stop |
Optional |
prompt_cache_key |
Optional, from metadata.taskId |
temperature is intentionally not sent — providers handle their own defaults.
Custom Base URLs
Each provider's base URL can be overridden via the Command Palette or VS Code settings (moreproviders.<provider>.apiBaseUrl). This is useful for proxies, self-hosted endpoints, or switching between global/CN regions.
Building from Source
npm install
npm run compile
npx vsce package
Then install the generated .vsix file in VS Code.
Testing
Verify the Models.dev model-information lookup against the live catalogue:
node --use-env-proxy scripts/test-model-info.mjs
License
MIT