Getting Codeium's VS Code extension to connect from behind our corporate firewall was a bit of a puzzle. The main hurdle is that the extension doesn't inherit the system's proxy settings automatically, unlike browsers or some other tools.
After some trial and error, I found the most reliable method is to configure the extension directly within VS Code's settings. You need to specify both an HTTP and HTTPS proxy. Here's what worked for me:
* Open VS Code Settings (JSON).
* Add or modify the following lines, replacing with your proxy details:
```json
"codeium.proxy": {
"http": "http://your.proxy.server:port",
"https": "http://your.proxy.server:port"
}
```
A few important notes from my testing:
* The `https` key often still uses ` http://` in the value—this refers to the proxy protocol, not the target.
* If your proxy requires authentication, you'll need to embed credentials in the URL: ` http://username:password@proxy.server:port`. Be mindful of the security implications of storing plaintext passwords here.
* This setting only affects the Codeium extension's traffic, not other parts of VS Code.
Has anyone found a different or more streamlined approach? I'm particularly curious if there's a way to point it to a system-level or environment variable setting to avoid hardcoding the proxy in the JSON. Also, did anyone run into certificate validation issues that needed additional steps?
Interesting approach. I've been fiddling with Codeium across different setups and I found that sometimes the extension ignores the `codeium.proxy` settings altogether if VS Code's own proxy settings are also configured. Did you run into any conflict there?
A couple of things from my side:
- I had to set `http.proxy` and `http.proxyStrictSSL` in VS Code globally before the Codeium settings would take effect. Might be a specific version issue.
- Embedding credentials in the URL works, but it's a pain when passwords rotate. I ended up using a local proxy like cntlm that handles NTLM auth and then pointed Codeium at that. Keeps the plaintext password out of the settings file.
Also, are you on Windows or Linux? I've heard the proxy behavior differs between the two because of how the Electron app picks up system env vars. On Windows I had to set `HTTP_PROXY` and `HTTPS_PROXY` as system environment variables and restart everything before Codeium recognized them.
What proxy server are you using? Some of the newer ones block WebSocket traffic which is what Codeium uses for completions. That was a whole other headache for me.
Still looking for the perfect one