Copilot Local LLM
copilot-local-llm exposes models from local OpenAI-compatible servers in the
Copilot model picker. It adds providers only when their model-discovery
endpoint is available, so Copilot-hosted models continue to work normally.
Discovery requests time out after three seconds to bound extension startup time.
Discovered models are registered as part of the session join, so resuming the
CLI does not replay additive provider registrations. Models remain available
through /model as provider/model-id (for example,
omlx/Qwen3.5-9B-mxfp4).
The plugin does not modify Copilot's system prompt or available tools. For a
local-model launcher with minimal prompts and tooling, see
vivi.
Prerequisites
- A current GitHub Copilot CLI release with plugin extension support.
- At least one supported local model server. Unavailable servers are ignored.
Install
copilot plugin marketplace add scaryrawr/scarypilot
copilot plugin install copilot-local-llm@scarypilot
Restart Copilot or run /clear after installing or updating the plugin.
Usage
Start a supported local server, open Copilot, and select the discovered model
with /model.
| Provider | Default URL | Discovery endpoint |
|---|---|---|
| Ollama | http://localhost:11434 | /api/tags |
| LM Studio | http://localhost:1234 | /api/v1/models |
| OMLX | http://localhost:8000 | /v1/models/status |
| OSaurus | http://localhost:1337 | /api/tags |
| GenieX | http://127.0.0.1:18181 | /v1/models |
Set <PROVIDER>_BASE_URL to override a default server URL, and optionally set
<PROVIDER>_API_KEY when a local server requires authentication. Ollama and
OSaurus use <PROVIDER>_CONTEXT_LENGTH to override their default 131072-token
context window. GenieX uses the same setting with a 65536-token default.
OSARAUS_* aliases are accepted for compatibility with the original project's
spelling.
Develop and test
cd extensions/copilot-local-llm
npm install
npm run build
npm run typecheck
npm run lint
npm test
Copilot CLI injects its bundled @github/copilot-sdk when it loads the
extension. The package dependency pins the SDK version used for local
development and tests. The committed dist/ bundle includes other runtime
dependencies; plugin users do not need to run npm install or build. Build in
a source checkout after changes and commit the bundle and manifest.
Resources
This plugin was migrated from
scaryrawr/copilot-local-llm
at the revision recorded in NOTICE.md.