AIToday
Large Language ModelsAI Safety & AlignmentOpen-Source AIHacker NewsPublished: Jul 29, 2026, 22:00 JST

PassControl gates AI agent API calls without sharing real keys

PassControl gates AI agent API calls without sharing real keys

3 Key Points

  1. What happened

    PassControl, a source-available credential gateway, lets AI agents call OpenAI, Anthropic, and other providers without ever holding the real API key. Instead, each agent gets a cryptographic Ed25519 identity and a short-lived work-visa token; the gateway verifies the request, checks budget and scope, then injects the real key in-flight and proxies the call.

  2. Why it matters

    Keeping real API keys out of agent runtimes shrinks the blast radius if an agent is compromised or logs its environment. Teams can now revoke a single agent's access at the gateway instantly without rotating every provider key or restarting processes. Budget limits are enforced per agent before the provider call, so spend overruns can be prevented rather than just audited.

  3. What to watch

    PassControl is early (v0.4.x), solo-built, and not yet independently audited—the authors recommend testing against non-critical keys first. It is source-available under the Business Source License 1.1 (not OSI open source) and supports OpenAI, Anthropic, Groq, Mistral, Together, and DeepSeek. A sidecar auto-refreshes the work-visa token, so multi-hour sessions do not time out even with 5-minute token lifespans.

Not sure about something? Ask the AI

Questions and answers are published on this page.

Summaries like this, in your inbox every morning.

Context & Analysis

PassControl addresses a practical security gap in AI agent deployment: most teams today embed real API keys (like OpenAI's `sk-proj-...` secrets) directly in agent code or environment variables, accepting the risk that an agent crash, compromise, or log leak exposes those credentials. The core insight is cryptographic separation—each agent gets a non-secret identity (an Ed25519 keypair) instead of the secret that pays for API calls. The agent signs a challenge locally using only its private key (never sent on the wire), the gateway validates that signature, checks the agent's scope and budget against a policy, and only then retrieves the real provider key from a secure vault and injects it into the proxied request.

This design achieves three concrete gains. First, revocation becomes instant and targeted: a team can kill access for one agent at the gateway without rotating keys across every provider or restarting agent processes. Second, budget enforcement becomes preventive rather than reactive: PassControl reserves token and cost limits atomically before the provider call, so overspend can be blocked rather than discovered after the fact. Third, audit trails are centralized at a single policy boundary—every governed call is logged with provider, model, status, tokens, cost, latency, and agent identity, giving operators one view of all agent activity.

The trade-off is that PassControl is early (v0.4.x), built solo, and not yet independently audited. The authors explicitly recommend testing against non-critical keys first and note that careful code is not the same as audited code. The source is available under the Business Source License 1.1 (not OSI open source), so users can inspect the credential path and self-host, but it is not freely modifiable open source. The authors also plan paid hosting and an accountability layer later.

FAQ
Does my agent ever see my real API key?
No. The agent holds only a sign-only Ed25519 passport and mints a short-lived work-visa. PassControl resolves the real provider key from a vault and injects it in-flight, then proxies the call—the key never enters the agent runtime.
How do I use PassControl with my existing code?
It is a drop-in gateway: keep your OpenAI or Anthropic SDK and re-point its base URL to PassControl, then pass the work-visa instead of a real API key. PassControl also runs as an MCP server for Claude Desktop, Cursor, or Claude Code.
What happens if my token expires mid-call?
A local sidecar mints and auto-refreshes the work-visa (and re-mints instantly on a 401), so multi-hour sessions do not time out. A single long streaming call is verified once at the start and finishes regardless.

AI news that matters for your work, delivered every morning.

Pick your industry and the AI tools you use, and get news related to your work every day.

Free · 30 seconds with Google · unsubscribe anytimeWhat is AIToday? →

Ask AI

Ask AI anything about this article. The AI reads this article, earlier AIToday articles, and Wikipedia, and cites its sources. Q&As are published on this page for other readers too.

Questions and answers are published on this page.

Related Articles

Next articleGoogle's SynthID watermark survives edits, but won't stop AI fakes