Voltar às atualizações
New releaseJul 31, 2026

agent-vault-proxy v0.9.0

Chaves de API just-in-time para agentes de IA - e qualquer outro processo que você roteie através dela: o chamador só vê um placeholder.

Compartilhar

keys-on-the-wire

Chaves de API just-in-time para agentes de IA e qualquer outro processo que você rotear por ela: o chamador só vê um espaço reservado.

Antes chamado de agent-vault-proxy. A CLI agora é kow; o antigo comando avp ainda funciona nesta versão e será removido na próxima major (ADR-0045).

Keys on the Wire protege você contra ladrões de credenciais (Shai-Hulud e similares) e agentes com injeção de prompt que vazam seus segredos. É um proxy local que injeta segredos reais em requisições em trânsito, para que um agente comprometido ou com injeção de prompt não tenha nada para roubar.

PyPI License: Apache-2.0 CI

Como keys-on-the-wire substitui segredos no trânsito

Por baixo dos panos: um proxy HTTPS de loopback que busca credenciais do Bitwarden Secrets Manager (nuvem ou self-hosted) just-in-time e as injeta em requisições de saída, para que o processo chamador nunca detenha os bytes reais da credencial em seu espaço de endereçamento.

Totalmente open source, deliberadamente simples

Cada recurso está neste repositório sob Apache-2.0, sem camada paga, edição enterprise, nuvem confiável ou telemetria. Você pode ler tudo de ponta a ponta (alguns milhares de linhas) e executá-lo para sempre.

O fluxo de trabalho inteiro é um único movimento: peça à skill incluída para rotear um serviço, ela informa a única linha para colar no Bitwarden (ou no seu cofre), você cola, e o agente é intermediado. Pronto. Como cada credencial intermediada é uma vinculação, a configuração é a lista completa e auditável de exatamente quais segredos cada agente pode acessar: nada implícito ou oculto.

O objetivo é menos chaves reais dentro de agentes de IA em todo lugar, não aprisionamento. Se Keys on the Wire se encaixa, use-a; se uma das alternativas se encaixa melhor no seu setup, use essa. Qualquer ferramenta que mantenha o segredo real fora da memória do agente é uma vitória.

Experimente. 10 segundos.

1. Instale - Linux pipx, macOS brew:

pipx install 'keys-on-the-wire[bitwarden]'   # [bitwarden] adiciona o SDK do backend Bitwarden; remova para apenas AWS/GSM/env
# macOS: brew install inflightsec/keys-on-the-wire/keys-on-the-wire
sudo kow setup --bws        # cole seu token do Bitwarden — gera a CA, inicia o daemon

2. Instale a skill para que seu agente escreva a vinculação por você:

/plugin marketplace add inflightsec/agent-vault-proxy
/plugin install avp@agent-vault-proxy

3. Peça à skill para intermediar um serviço - diga "roteie a API do Stripe através do Keys on the Wire." Ela gera o espaço reservado e imprime a nota exata para colar no BitWarden; ela nunca vê sua chave.

4. Coloque o segredo no seu cofre - adicione a chave real ao Bitwarden Secrets Manager (ou Google Secret Manager) com essa nota, depois roteie seu agente através do proxy:

kow env && kow run claude

Pronto: o agente só envia o espaço reservado; Keys on the Wire troca pela chave real no trânsito.

Em vez de kow run, você pode exportar as variáveis do proxy + CA no ~/.zshrc do seu agente (ou qualquer shell rc) - veja Uso para o bloco canônico. É persistente, mas roteia todo o seu shell através do Keys on the Wire, não apenas o agente que ele lança.

Veja em ação

demonstração keys-on-the-wire: injeção de prompt vs. isolamento de credenciais

Adicione um segredo com seu agente de IA: sem edição de configuração

Integrar uma nova credencial intermediada não deveria significar escrever YAML de vinculação à mão. A skill avp incluída permite que um assistente de IA (Claude Code, ou qualquer agente que carregue skills) o guie pelo processo: você diz "roteie a API da Acme através do Keys on the Wire," ela pergunta o formato de autenticação e o host, então informa exatamente o que adicionar: o nome do segredo mais a anotação para colar no campo Notas do Bitwarden Secrets Manager (ou na anotação avp-binding do Google Secret Manager, ou nos metadados por segredo de um backend futuro). Sem edição de configuração ou reimplantação, e o assistente nunca vê ou armazena o segredo; ele propõe, você aplica.

A nota em si são duas linhas coladas no campo Notas do segredo:

# avp-binding
api.acme.com

A linha de marcador é o que a torna uma vinculação: uma nota cuja primeira linha não é # avp-binding permanece o que é, uma descrição humana, nunca analisada (ADR-0025). (O marcador avp-binding e os caminhos em disco mantêm seus nomes nesta versão para compatibilidade retroativa; eles mudam para kow na próxima major - veja ADR-0045.)

Instale a skill

Claude Code (recomendado) - instale-a como um plugin, para que esteja disponível em todos os projetos e atualize com /plugin marketplace update:

/plugin marketplace add inflightsec/agent-vault-proxy
/plugin install avp@agent-vault-proxy

Invoque-a como /avp:avp, ou apenas diga "roteie a API da Acme através do Keys on the Wire" e ela dispara sozinha. (O plugin incluído mantém o nome avp por enquanto; ele será renomeado com a migração do marketplace.)

Manual (qualquer agente que carregue skills no formato Anthropic) - copie ou crie um symlink de skills/avp/ para o diretório de skills do seu agente; Claude Code lê ~/.claude/skills/. Um symlink o mantém atualizado no git pull:

ln -s "$PWD/skills/avp" ~/.claude/skills/avp

Intermedie um servidor MCP

Servidores MCP são uma superfície de vazamento de credenciais em rápido crescimento: cada um detém um token upstream de longa duração (um PAT do GitHub, uma chave Slack/Brave/Perplexity) em texto claro na sua configuração de cliente, onde cada servidor que o cliente carrega pode lê-lo. kow mcp install substitui esse segredo permanente por um espaço reservado e roteia o egresso do servidor através do proxy, para que o valor real nunca viva na configuração:

kow mcp install github --host api.github.com --env-var GITHUB_PERSONAL_ACCESS_TOKEN \
  --server-cmd "npx -y @modelcontextprotocol/server-github"

Ele imprime a nota do cofre para colar e o comando exato claude mcp add --env / codex mcp add --env (proxy + confiança de CA por runtime + env do espaço reservado): apenas proposta para o cofre, o valor do segredo nunca é tocado. A skill avp incluída pode derivar o host/cabeçalho/formato da documentação do servidor e confirmar o host com você primeiro. Design + modelo de ameaça: ADR-0040.

Documentação

  • Keys on the Wire é para você? - o que ela faz, o que ela deliberadamente não faz, por quê, e quando recorrer a ela (comece aqui se estiver avaliando)
  • Início rápido - primeira execução de 10 minutos terminando em uma substituição visível
  • Conceitos - espaço reservado, vinculação, a CA, fail-closed, em termos simples
  • Pré-requisitos - configuração do Bitwarden Secrets Manager (faça isso primeiro)
  • Instalação Linux · Docker · macOS
  • Uso - apontando seu agente para o proxy
  • Isolamento Linux - compondo Keys on the Wire com bubblewrap para sandboxing de sistema de arquivos
  • bindings.example.yaml - esquema completo de configuração
  • skill avp - deixe um assistente de IA criar suas vinculações de notas/anotações (apenas proposta, sem edição de configuração, sem reimplantação)
  • Intermedie um servidor MCP - execute servidores MCP do Claude Code / Codex sem credencial em texto claro (kow mcp install)
  • Arquitetura - modelo de ameaça, invariantes G1–G9, endurecimento, riscos residuais
  • Arquitetura de adaptadores - backends de cofre (Bitwarden, Google Secret Manager e AWS Secrets Manager são fornecidos hoje, static para desenvolvimento) e como adicionar outro
  • Google Secret Manager - mantenha segredos no GSM: configuração, autenticação sem chave e testes de ponta a ponta
  • Comparação - vs. Vault Agent, Doppler, op run, superfly/tokenizer, OneCLI e outras ferramentas de credenciais para agentes (use o que se encaixar: o ponto é mais agentes protegidos, não aprisionamento)
  • CHANGELOG · SECURITY · CONTRIBUTING · CREDITS

O proxy nunca faz chamadas para casa. As únicas conexões de saída que ele faz são para o endpoint BWS que você configura e as APIs upstream que seu agente está chamando. Sem telemetria. O log de auditoria em /var/log/agent-vault-proxy/audit.jsonl é local-only por padrão; o envio off-box opcional o encaminha (de um sidecar separado, nunca do proxy) apenas para um coletor que você executa e controla.

Licença

Apache-2.0: veja LICENSE e NOTICE; a concessão explícita de patente é deliberada para uma ferramenta de segurança (ADR-0037). Cada recurso é fornecido aqui, sem open-core, camada enterprise ou serviço hospedado. Faça um fork, leia de ponta a ponta, execute para sempre. Versões até 0.9.0 permanecem disponíveis sob seus termos MIT originais e o nome agent-vault-proxy. Trabalho anterior reconhecido em CREDITS.md.

Uma dependência não é open source, e é opt-in. O backend opcional do Bitwarden puxa bitwarden-sdk, que está sob a licença de SDK proprietária da própria Bitwarden, não Apache-2.0. Keys on the Wire nunca o inclui; você o instala você mesmo (pip install 'keys-on-the-wire[bitwarden]') apenas se usar esse backend. A instalação padrão e os backends AWS Secrets Manager, Google Secret Manager e env são 100% open source.

Categorias