GitHub Copilot Not Suggesting in VS Code: Fix Silent Failures
You're typing TypeScript and the ghost text just isn't showing up. GitHub Copilot is installed, the status bar says it's active, you haven't changed anything, and yet there are no suggestions. No error popup, no spinner, nothing. This is the silent failure mode and it's more common than the noisy broken states because VS Code 1.96 and Copilot 1.248 don't always surface the underlying problem. You might wait a minute thinking maybe the model is slow, then try another file, and then realize it's been broken for longer than you thought.
What this error actually means
Copilot's suggestion pipeline in VS Code has several layers that can fail independently without showing an obvious error. The extension might be loaded and reporting "active" while the authentication token has actually expired. The language server that handles completions might have crashed and not restarted. Your proxy or corporate network might be blocking requests to copilot-proxy.githubusercontent.com silently. Or VS Code's extension host process might have hit a memory limit and killed the Copilot background worker.
The "active" status indicator in the status bar only tells you the extension loaded successfully. It doesn't confirm that the completion backend is reachable or that your session is authenticated.
Quick fix (when you need it working in 60 seconds)
- Click the Copilot icon in the status bar and choose "Enable GitHub Copilot" even if it looks enabled. This triggers a re-initialization.
- Open the VS Code command palette (
Cmd+Shift+PorCtrl+Shift+P) and runDeveloper: Restart Extension Host. This restarts all extensions without restarting VS Code. - If suggestions still don't appear, run
GitHub Copilot: Sign Outthen sign back in. Token expiry is silent. - Open a new
.jsor.pyfile (not TypeScript), type a function name, and wait 3 seconds. If suggestions appear here but not in.tsfiles, this is a language-specific configuration issue. - Check the Output panel (
View > Output) and select "GitHub Copilot" from the dropdown. Any errors will show here.
Why this happens
Authentication token expiry is the single most common cause and the most silently failing one. GitHub's Copilot access tokens expire, and when they do the extension is supposed to prompt you to re-authenticate. Sometimes it doesn't. This seems to happen more often after VS Code has been running for more than a few days without restart, or after your machine wakes from sleep with an expired keychain entry. The extension stays "loaded" but all completion requests return 401 errors that never surface to the UI.
Extension host crashes are the second major cause. The VS Code extension host process runs all your extensions. If any extension causes a crash or memory spike, VS Code sometimes recovers the host but leaves certain extensions in a zombie state. Copilot's language server subprocess gets orphaned and stops receiving requests. You can verify this by checking ~/.vscode/logs/ for exthost crash entries.
Corporate proxies cause a pattern that's hard to diagnose because it looks identical to a token problem. If your network routes traffic through an HTTP proxy, VS Code needs to be configured to pass Copilot's requests through it. The extension sends requests to https://copilot-proxy.githubusercontent.com and https://api.github.com. A proxy that blocks or intercepts these will cause silent failure with no error shown in the UI.
File watcher limits on Linux can starve the Copilot language server of the file change events it needs to provide context-aware suggestions. When the inotify limit is hit, the server still runs but its context becomes stale and suggestions drop off or stop entirely.
Language-specific disablement is easy to accidentally enable. Copilot has per-language settings, and if you right-clicked and chose "Disable Copilot for TypeScript" at any point, it's silently off for .ts files. The status bar still shows active because Copilot itself is active, just not for that language.
Permanent fix
-
Re-authenticate properly. Open the command palette and run
GitHub Copilot: Sign Out, thenGitHub Copilot: Sign In. Complete the OAuth flow in the browser. Don't just close the sign-in tab. -
Check language-specific settings in your
settings.json:"github.copilot.enable": { "*": true, "typescript": true, "javascript": true, "python": true }If
"typescript": falseis in there, that's your problem. -
Increase the inotify limit on Linux:
echo "fs.inotify.max_user_watches=524288" | sudo tee -a /etc/sysctl.conf sudo sysctl -p -
Configure your proxy in VS Code's
settings.jsonif you're on a corporate network:"http.proxy": "http://proxy.yourcompany.com:8080", "http.proxyStrictSSL": false -
Clear the Copilot extension state by removing its stored data:
- macOS:
rm -rf ~/Library/Application\ Support/Code/User/globalStorage/github.copilot/ - Linux:
rm -rf ~/.config/Code/User/globalStorage/github.copilot/ - Windows:
rmdir /s /q "%APPDATA%\Code\User\globalStorage\github.copilot"Then restart VS Code and sign in again.
- macOS:
-
If you have many extensions installed, try launching VS Code with extensions disabled to confirm Copilot works in isolation:
code --disable-extensionsThen enable only Copilot to verify it works, and re-enable other extensions one by one to find conflicts.
-
Update the Copilot extension. As of mid-2026, versions below 1.240 have known completion pipeline bugs. Go to the Extensions panel, find GitHub Copilot, and check for updates.
Prevention
Set a calendar reminder to sign out and back into Copilot once a month. It sounds tedious but it keeps your token fresh and catches authentication drift before it becomes a silent failure. Two minutes a month beats a frustrated hour of debugging.
Keep VS Code updated. The Copilot team ships fixes tied to specific VS Code API versions, and running a version that's more than two months old creates compatibility gaps. VS Code 1.96+ has better extension host recovery that reduces the frequency of silent zombie states.
On Linux machines, add the inotify limit increase to your system setup script or Ansible playbook. It's a one-time fix that prevents a whole category of random-feeling VS Code problems, not just Copilot.
If you're on a corporate network, talk to your IT team about whitelisting copilot-proxy.githubusercontent.com explicitly. Doing it once and documenting it saves every developer on the team from debugging this independently.
When the fix doesn't work
If you've re-authenticated, cleared the extension state, restarted the extension host, and suggestions are still not appearing, check the Copilot diagnostic command. Open the command palette and run GitHub Copilot: Collect Diagnostics. This generates a file with detailed status information including whether the API is reachable, your subscription status, and any errors the background service is hitting.
GitHub Copilot status is also tracked at githubstatus.com. If the Copilot service itself is degraded, no amount of local fixing will help until GitHub resolves the incident.
For persistent problems, open an issue at github.com/github/feedback in the Copilot category. Include your VS Code version, Copilot extension version, OS, and the output from the diagnostic collection command.