The TeaserThere is a version of AgentSecrets where you never change a single line of your existing code.
Your existing SDK calls, `stripe.Charge.create()`, `openai.chat.completions.create()`, whatever you are already using, stay exactly as they are. No wrapper, no rewrite, no migration. The zero-knowledge guarantee applies anyway, and that is what the next feature does.
---
## The problem with the current SDK path
The Python SDK gives you `client.call()`, where you pass a URL and a credential name and get an API response with the proxy handling the rest. The credential value never enters your code.
That works, but it also requires rewriting every authenticated API call in your codebase to use the AgentSecrets interface. For new projects that is a clean decision. For existing codebases with hundreds of SDK calls already written, it is a migration cost that can delay adoption or prevent it entirely.
The question we kept coming back to was whether the zero-knowledge guarantee required that rewrite. Whether there was a way to get underneath the SDK calls rather than replacing them.
---
## How HTTP clients actually work
Most Python SDKs, including Stripe, OpenAI, GitHub, and Twilio, use `requests` or `httpx` under the hood. Both libraries have a transport layer, an abstraction point where outbound requests are handed off before they reach the network, and that transport layer is designed to be replaced as the intended extension point.
Replace it with an AgentSecrets-aware transport and every request made through that HTTP client is intercepted before it leaves the process. The interception rewrites the outbound URL to route through the local proxy, adds the credential reference header, and forwards the request. The proxy resolves the value, injects it, and returns the API response. The original SDK code receives its response and has no idea any of this happened.
```python
# This is all you add
agentsecrets.auto_wrap(stripe, bearer="STRIPE_KEY")
# This stays exactly as it was
charge = stripe.Charge.create(
amount=2000,
currency="usd",
source="tok_visa"
)
```
One line at initialisation and the rest of the codebase is unchanged.
---
## What this means for existing code
A developer with an existing LangChain agent that calls Stripe, OpenAI, and GitHub does not need to rewrite the agent to adopt AgentSecrets. They wrap the clients at initialisation and every subsequent call inherits the guarantee.
A developer publishing an MCP server built on third-party SDKs does not need to replace every SDK call with `client.call()`. Wrapping the transports means the server ships with zero-knowledge credential management and the code reads exactly the same as it did before, without requiring a rewrite to get there.
---
This feature is in development. The full technical article covering how transport interception works, which SDKs are supported, and what the implementation decisions cost will follow when it ships.
The AgentSecrets SDK is at [github.com/The-17/agentsecrets-sdk](https://github.com/The-17/agentsecrets-sdk). The full infrastructure is at [agentsecrets.theseventeen.co](https://agentsecrets.theseventeen.co).
This article is currently being crafted. We're polishing the final details and it will be available soon.