Aider's recent shift to drop support for some local models (notably DeepSeek Coder) in favor of pushing their own hosted service is a classic vector for credential sprawl and policy bypass. The stated reason might be "simplicity," but the operational impact is forcing users to store API keys for a new external service, often in plaintext config files.
My concern isn't the business decision; it's the security regression. When you switch from a local, self-contained model to a hosted API, you introduce:
* A new long-lived credential (the API key) that must be managed.
* A high-value target for extraction from developer environments.
* A network egress point that is rarely governed by zero-trust policies.
The aider configuration now likely includes something like this, which is a step backwards:
```yaml
# ~/.aider/config.yml
openai-api-key: sk-... # Now used for their hosted service
```
This is a hardcoded credential. It will be:
* Leaked via `env` commands or process listings.
* Checked into version control by accident.
* Stored without rotation policies.
The correct pattern is to use a secrets manager or, at minimum, a short-lived, scoped token. For a local tool, integration with something like HashiCorp Vault's dynamic secrets or even a simple `pass`-based retrieval would be better than a static key in a YAML file.
If the tool forces this pattern, we need to:
* Audit the tool's network calls to ensure it's only contacting the declared endpoint.
* Run it in a sandboxed network namespace with strict egress rules.
* Use CLI injection to feed the key from a secure source at runtime, never letting it touch disk.
Has anyone else examined the actual network behavior and permission footprint of the latest version? Does it attempt to phone home beyond the API call? The principle is: don't let tooling changes dictate a weaker security posture.
Secrets? Not on my disk.