Does Choosing Ollama Make GitHub Copilot CLI Offline?
The model runs in Ollama on your own machine, yet Copilot CLI still makes network requests. What is it sending, and what does offline mode actually shut off?

- Choosing a local model and enabling offline mode are separate decisions.
- From CLI 1.0.94-0, /model can discover supported models in a running Ollama instance.
- COPILOT_OFFLINE=true still permits requests to the configured model provider, including a remote one.
Local inference does not switch telemetry off
Selecting Ollama does not, by itself, make Copilot CLI offline. GitHub’s data-handling documentation says telemetry continues when you use your own provider without offline mode. It contains usage metadata, not your prompts or code.
Prompts and code context go directly to the configured provider. Check that destination separately from GitHub telemetry:
| Configuration | Model requests | GitHub telemetry |
|---|---|---|
| Local Ollama, offline mode off | Local server | Enabled |
| Local Ollama, offline mode on | Local server | Disabled |
| Remote provider, offline mode on | Remote server over the network | Disabled |
The model picker discovers models you already installed
The October 7 update adds Ollama discovery from CLI version 1.0.94-0. Start Ollama with a model installed, open /model, and select a discovered model. Review the provider and endpoint before confirming.
Add and use for this session switches the current session; Add without switching saves the model without selecting it. Neither discovery nor selection downloads a model or installs Ollama. Switching this way does not require restarting the CLI.
The model must support both tool calling and streaming. Connection failures appear in the picker, so check the running instance and its endpoint when discovery cannot connect.
Set offline mode before launching the CLI
The provider guide combines a configured provider with COPILOT_OFFLINE=true. For Bash or zsh, with a local Ollama instance already running:
export COPILOT_PROVIDER_BASE_URL=http://localhost:11434
export COPILOT_MODEL=YOUR-MODEL-NAME
export COPILOT_OFFLINE=true
copilot Replace the placeholder with an installed model that meets the capability requirements. This launch-time setup is separate from switching models inside an existing session.
Offline mode prevents contact with GitHub’s servers. It still communicates with your provider. If the base URL points to a remote service, prompts and code context still leave the machine for that service.
Expect fewer connected features
Using your own provider does not require GitHub authentication. Without that authentication, /delegate, the GitHub MCP server, and GitHub Code Search are unavailable. Offline mode also disables web-based tools such as web_fetch.
An invalid provider configuration produces an error rather than falling back to GitHub-hosted models. Fix the endpoint or model setting instead of assuming cloud inference will take over.
For local inference, verify the actual provider destination and offline setting together. Then decide whether the connected features you lose are needed for the task.