What's new
Fix: Main chat requests now routed through headroom
Previous versions only compressed inline completions (the ghost-text suggestions). Main chat requests (everything in the Copilot Chat panel) were silently falling back to WebSocket transport, bypassing the HTTP proxy interceptor entirely — resulting in 0% token savings for chat.
This release forces HTTP transport whenever github.copilot.chat.proxy.url is configured, ensuring all chat traffic flows through headroom.
Huge thanks to @boston008 for identifying the root cause — WebSocket transport in chatMLFetcher.ts bypassing the HTTP interceptor — and providing the fix.
Install
Quick install (macOS)
bash <(curl -fsSL https://raw.githubusercontent.com/damnthonyy/vscode/main/scripts/install-macos.sh)Quick install (WSL / Linux)
bash <(curl -fsSL https://raw.githubusercontent.com/damnthonyy/vscode/main/scripts/install-wsl.sh)Manual install
Download copilot-proxy.vsix below, then:
code --install-extension copilot-proxy.vsix --forceRequired VS Code settings
Open Ctrl/Cmd+Shift+P → Open User Settings (JSON) and add:
{
"github.copilot.chat.proxy.url": "http://localhost:8787/v1",
"extensions.autoUpdate": "off"
"extensions.autoCheckUpdates": "off"
}Note:
extensions.autoUpdate: falseandextensions.autoCheckUpdates: falseprevent the VS Code marketplace from silently replacing this patched extension with the official one.
Start headroom (Copilot mode)
export GITHUB_TOKEN=$(gh auth token)
docker compose -f docker-compose.yml -f docker-compose.copilot.yml up headroom-proxyChangelog
- v0.54.0 — Force HTTP transport when headroom proxy URL is set, fixing 0% savings on main chat (credit: @boston008)
- v0.53.3 — WSL remote install fix + macOS install script
- v0.53.2 — Initial release with
ProxyInterceptingFetcherServiceand Docker VSIX build pipeline