
agent-vault v0.39.1
Un proxy di credenziali HTTP e vault per agenti AI come Claude Code, OpenClaw, Hermes, agenti personalizzati + harness, e altro.
Proxy di credenziali HTTP e vault
Un broker di credenziali open-source di Infisical che si pone tra i tuoi agenti e le API che chiamano.
Gli agenti non dovrebbero possedere credenziali. Agent Vault elimina il rischio di esfiltrazione di credenziali grazie all'accesso intermediato.
Nuovo qui? Il post di lancio del blog racconta tutta la storia dietro Agent Vault.
Documentazione | Installazione | Tutorial | Video Demo | Slack
Perché Agent Vault
La gestione tradizionale dei segreti prevede la restituzione delle credenziali alle tue applicazioni e servizi. Questo meccanismo viene meno con gli agenti AI, che possono essere indotti tramite prompt injection a divulgare segreti. Questo è il problema dell'esfiltrazione di credenziali.
Agent Vault è stato creato per risolvere l'esfiltrazione di credenziali per tutti gli agenti AI. Invece di fornire direttamente le credenziali agli agenti AI, le memorizzi in Agent Vault (ad es. ANTHROPIC_API_KEY, GITHUB_PAT, ecc.) e costringi i tuoi agenti a instradare le richieste HTTP attraverso di esso. Agent Vault intercetta ogni richiesta e vi aggiunge le credenziali prima di inoltrarla all'API di destinazione in uscita.
Funzionalità:
- Intermediazione di credenziali: Intermedia l'accesso degli agenti AI a servizi target come provider LLM e GitHub senza che essi detengano credenziali reali. Agent Vault è in grado di intermediare tale accesso sostituendo valori fittizi in intestazioni come
__anthropic_api_key__con credenziali reali o sostituendo interamente le intestazioni di autenticazione nelle richieste in uscita attraverso di esso. - Archivi di credenziali a innesto: Supporta un vault con un archivio di segreti esterno come Infisical invece dell'archivio crittografato locale. Questo estende le capacità di Agent Vault per includere funzionalità come i segreti dinamici di Infisical.
- Integrazione trasparente: Consenti agli agenti AI di utilizzare strumenti esistenti come MCP, CLI, SDK, API con tutte le richieste sottostanti automaticamente instradate attraverso Agent Vault. Agent Vault adotta un approccio agnostico rispetto all'interfaccia e non invasivo per l'intermediazione di credenziali, avviando l'ambiente dei tuoi agenti per utilizzare
HTTPS_PROXYed essere compatibile con l'architettura MITM di Agent Vault. - Progettazione ad hoc: I proxy forward esistenti come
mitmproxyosquidrichiedono modifiche per eseguire l'intermediazione di credenziali e integrarsi bene con gli agenti. Agent Vault è progettato ad hoc per funzionare con l'ergonomia di tutti i tipi di casi d'uso degli agenti, con una CLI dedicata, multi-tenancy e una roadmap specifica per gli agenti supportata da Infisical. - Filtraggio in uscita: Controlla quali agenti dovrebbero avere accesso a quali servizi ed endpoint API su di essi, poiché le richieste autenticate fluiscono attraverso Agent Vault.
- Registrazione delle richieste: Ispeziona il traffico autenticato per monitorare e diagnosticare il comportamento degli agenti.
Per impostazione predefinita, le richieste che non corrispondono ad alcun servizio vengono inoltrate come traffico proxy normale; imposta un vault in modalità di rifiuto rigoroso (unmatched_host_policy=deny) per rifiutarle con 403.
Leggi la storia completa dietro Agent Vault qui.
Casi d'uso
Agent Vault funziona con tutti i tipi di casi d'uso di agenti AI, inclusi agenti di codifica remota sicuri, agenti multiuso, agenti personalizzati + harness, sandbox effimeri sicuri e altro.
- Agenti di codifica remota sicuri: Puoi eseguire una sessione remota di Claude Code e configurarla per fare da proxy alle richieste attraverso Agent Vault. Come parte di questa configurazione, puoi impostare un
ANTHROPIC_API_KEYe unGITHUB_PATin Agent Vault, permettendo a Claude Code di interagire con le API di Anthropic e GitHub per scrivere codice, creare PR e altro. Lo stesso principio si applica ad altri agenti di codifica. - Agenti multiuso sicuri: Puoi configurare OpenClaw, Hermes e altri agenti multiuso per fare da proxy alle richieste in uscita attraverso Agent Vault.
- Agenti personalizzati sicuri: Puoi costruire i tuoi agenti AI con harness personalizzati e configurarli per fare da proxy alle richieste in uscita attraverso Agent Vault.
- Sandbox effimeri sicuri: Puoi configurare un orchestrator (ad es. backend) per creare un token temporaneo da passare in un sandbox dell'agente da utilizzare per fare da proxy alle richieste attraverso Agent Vault. Puoi persino fare in modo che l'agente in sandbox reinvii una richiesta allo stesso backend che lo ha generato.
Utilizzo base
Agent Vault è sia un servizio vault che proxy ed è distribuito come un singolo binario che funge sia da server che da client CLI. Memorizza le credenziali e le intermedia per i tuoi agenti AI utilizzando un'architettura proxy MITM. Per progettazione, Agent Vault dovrebbe essere distribuito su una macchina separata dai tuoi agenti AI per fornire la garanzia di sicurezza necessaria affinché i tuoi agenti AI non possano accedere direttamente alle credenziali all'interno di Agent Vault.
┌─────────────────────────────────────────────────────────────────┐
│ Public internet │
│ │
│ api.anthropic.com api.github.com api.stripe.com ... │
│ ▲ ▲ ▲ │
└──────────┼───────────────────┼──────────────────┼───────────────┘
│ │ │
└───────────────────┼──────────────────┘
│ outbound HTTPS, Agent Vault
│ injects credentials on the way out
┌──────────────────────────────┼──────────────────────────────────┐
│ Private network │ │
│ │ │
│ ┌───────────────────────────┴────┐ ┌────────────────────┐ │
│ │ Agent Vault │ │ AI agent │ │
│ │ :14321 management UI / API │◀────│ HTTPS_PROXY= │ │
│ │ :14322 MITM proxy │ │ agent-vault:14322 │ │
│ └────────────────▲───────────────┘ └────────────────────┘ │
│ │ │
└───────────────────┼─────────────────────────────────────────────┘
│ operator access: keep private, or front
│ with TLS + auth (SSO reverse proxy, IP
│ allowlist, or VPN) if you need remote admin
│
Operator
Puoi configurare Agent Vault per intermediare le credenziali per un agente AI in pochi passaggi:
- Installa e avvia un server Agent Vault. Puoi eseguire lo script qui sotto per installare Agent Vault, supportando macOS (Intel + Apple Silicon) e Linux (x86_64 + ARM64):
curl --proto '=https' --proto-redir '=https' --tlsv1.2 -fsSL https://get.agent-vault.dev | sh
Avvia il server Agent Vault e imposta una password master per esso (conservala in un luogo sicuro); la password viene utilizzata come parte del suo meccanismo di crittografia dei dati e viene rimossa dal processo dopo la lettura iniziale.
export AGENT_VAULT_MASTER_PASSWORD=your-password
agent-vault server -d
Puoi anche distribuire Agent Vault con Docker:
docker run -it -p 14321:14321 -p 14322:14322 \
-e AGENT_VAULT_MASTER_PASSWORD=your-password \
-v agent-vault-data:/data infisical/agent-vault
Il server avvia l'API HTTP sulla porta 14321 e un proxy HTTP/HTTPS trasparente sulla porta 14322; lo stesso listener gestisce CONNECT per upstream https:// e richieste proxy forward in forma assoluta per upstream http://.
L'interfaccia web diventa disponibile all'indirizzo http://<host>:14321 e ti verrà chiesto di creare il primo utente noto come proprietario dell'istanza.
-
Crea un vault, inserisci le tue credenziali e configura le regole di servizio in Agent Vault tramite l'interfaccia di gestione o tramite CLI sulla macchina Agent Vault. Ad esempio, puoi creare una credenziale per
ANTHROPIC_API_KEYe creare una regola di servizio in modo che Agent Vault sostituisca un valore fittizio__anthropic_api_key__con la chiave reale. -
Crea un agent per rappresentare un agente a lunga esecuzione e ottieni un token per esso. In alternativa, se stai creando agenti sandbox effimeri, puoi utilizzare agent per rappresentare un backend orchestrator e usarlo per creare un token di breve durata da passare nel sandbox affinché l'agente lo utilizzi e faccia da proxy alle richieste attraverso Agent Vault.
-
Imposta le seguenti variabili d'ambiente nell'ambiente del tuo agente AI:
AGENT_VAULT_ADDR=http://<your-addr>:14321
AGENT_VAULT_TOKEN=<agent-token-from-agent-vault>
AGENT_VAULT_VAULT=<vault-in-agent-vault>
...
ANTHROPIC_API_KEY=__anthropic_api_key__ // dummy key that will be substituted by Agent Vault
- Installa la CLI di Agent Vault nell'ambiente del tuo agente ed esegui la CLI di Agent Vault con il tuo agente per iniziare a fare da proxy alle richieste attraverso Agent Vault.
curl --proto '=https' --proto-redir '=https' --tlsv1.2 -fsSL https://get.agent-vault.dev | sh
Verifica dei binari di rilascio scaricati
Gli archivi di rilascio pubblicati da questo workflow sono forniti con un'attestazione di provenienza della build legata all'esecuzione di GitHub Actions che li ha prodotti. Verifica con la CLI gh (nessuno strumento extra, nessuna gestione delle chiavi):
gh attestation verify agent-vault_*.tar.gz --repo Infisical/agent-vault
Anche checksums.txt è coperto dalla stessa attestazione, e la sua firma cosign continua a essere verificabile con cosign verify-blob per gli utenti che preferiscono quella strada.
agent-vault run -- claude
agent-vault vault run -- agent
agent-vault vault run -- codex
agent-vault vault run -- opencode
In alternativa, se il tuo agente è in esecuzione con Docker, puoi installare la CLI di Agent Vault tramite un Dockerfile copiando il binario nella tua immagine e usandolo per avviare il processo dell'agente:
# Add this line to your existing Dockerfile alongside your agent or app setup.
COPY --from=infisical/agent-vault:latest /usr/local/bin/agent-vault /usr/local/bin/agent-vault
...
ENTRYPOINT ["agent-vault", "run", "--", "claude"]
Ci sono molti modi per distribuire Agent Vault e integrare i tuoi agenti AI con esso. Ti consigliamo di consultare la documentazione più completa.
Vederlo in azione
Guarda come Agent Vault intermedia le credenziali per gli agenti AI: memorizza le tue chiavi una volta, instrada ogni richiesta in uscita attraverso il proxy e lascia che gli agenti chiamino API reali senza mai vedere un segreto.
Vuoi una guida completa alla distribuzione? Vedi Run Hermes on a VPS per un esempio end-to-end con un agente intermediato su una macchina separata.
Buone pratiche
-
Sicurezza: Dovresti distribuire Agent Vault come servizio separato su una macchina host diversa dai tuoi agenti AI per impedire agli agenti di sfruttare un host condiviso per ottenere accesso ad Agent Vault. Dovresti mantenere la porta del proxy (14322 per impostazione predefinita), dove le credenziali vengono iniettate nelle richieste in uscita, privata alla rete dei tuoi agenti. L'interfaccia di gestione sulla porta 14321 è più sicura da esporre se hai bisogno di amministrazione remota, ma comunque rafforzala come qualsiasi servizio web di produzione (TLS, lista consentita IP). Fai riferimento a examples/nginx-public-ui-proxy/ per un esempio funzionante.
-
Latenza: Dovresti collocare Agent Vault insieme ai tuoi agenti AI all'interno della stessa rete per ridurre la latenza delle richieste.
-
Token: Dovresti creare un agent in Agent Vault per rappresentare un agente longevo. Per sandbox effimeri, potresti preferire creare token di breve durata con ambito limitato al vault per gli agenti in sandbox da utilizzare per fare da proxy alle richieste attraverso Agent Vault.
PostgreSQL (Produzione)
Per impostazione predefinita, Agent Vault memorizza tutto lo stato in un database SQLite locale, che non richiede configurazione. Per distribuzioni in produzione, o quando si eseguono più istanze, imposta la variabile d'ambiente DATABASE_URL (o il flag --database-url) con una stringa di connessione PostgreSQL e Agent Vault passa a Postgres come backend. Tutte le istanze condividono lo stesso database, quindi lo stato è coerente tra le repliche. Migra i dati esistenti con agent-vault migrate-db --to postgres://... prima di passare. Consulta la guida PostgreSQL per esempi di distribuzione (Kubernetes, Docker Compose), note sull'architettura e dettagli operativi.
SDK
Agent Vault offre un SDK TypeScript nel caso in cui desideri che un orchestrator crei un token di breve durata e passi la configurazione del proxy in un agente in sandbox in modo che possa fare da proxy alle richieste attraverso Agent Vault.
npm install @infisical/agent-vault-sdk
import { AgentVault, buildProxyEnv } from "@infisical/agent-vault-sdk";
const av = new AgentVault({
token: "YOUR_TOKEN", // agent token
address: "http://localhost:14321",
});
const session = await av
.vault("my-vault")
.sessions.create({ vaultRole: "proxy" });
// certPath is where you'll mount the CA certificate inside the sandbox.
const certPath = "/etc/ssl/agent-vault-ca.pem";
// env: { HTTPS_PROXY, HTTP_PROXY, NO_PROXY, NODE_USE_ENV_PROXY,
// SSL_CERT_FILE, NODE_EXTRA_CA_CERTS, REQUESTS_CA_BUNDLE,
// CURL_CA_BUNDLE, GIT_SSL_CAINFO, DENO_CERT }
const env = buildProxyEnv(session.containerConfig!, certPath);
const caCert = session.containerConfig!.caCertificate;
// Pass `env` as environment variables and mount `caCert` at `certPath`
// in your sandbox — Docker, Daytona, E2B, Firecracker, or any other runtime.
// Once configured, the agent inside just calls APIs normally:
// fetch("https://api.github.com/...") — no SDK, no credentials needed.
Vedi il README dell'SDK TypeScript per la documentazione completa.
Sviluppo
make build # Compila frontend + binario Go
make test # Esegui i test
make web-dev # Server di sviluppo Vite con ricarica automatica (porta 5173)
make dev # Server di sviluppo Go + Vite con ricarica automatica
make docker # Crea immagine Docker
Open-source vs. a pagamento
Questo repository è disponibile sotto la licenza MIT expat, ad eccezione della directory ee che conterrà funzionalità enterprise premium che richiedono una licenza Infisical.
Se sei interessato a Infisical o a esplorare un percorso più commerciale per Agent Vault, dai un'occhiata al nostro sito web o prenota un incontro con noi.
Contribuire
Che sia grande o piccolo, amiamo i contributi. Agent Vault segue le stesse linee guida per i contributi di Infisical.
Dai un'occhiata alla nostra guida per vedere come iniziare.
Non sai da dove iniziare? Puoi:
- Unirti al nostro Slack e farci qualsiasi domanda lì.
Stiamo assumendo!
Se stai leggendo questo, è molto probabile che ti piacciano i prodotti che abbiamo creato. Potresti anche essere un'ottima aggiunta al nostro team. Stiamo crescendo velocemente e ci piacerebbe che tu ti unissi a noi.
Anteprima. Agent Vault è in fase di sviluppo attivo e l'API è soggetta a modifiche. Si prega di rivedere la documentazione sulla sicurezza prima di distribuire.