Downloads

Instale o Clavitor na sua máquina.

A CLI dá aos seus agentes acesso delimitado ao seu cofre. O proxy injeta credenciais nos pedidos HTTPS de forma transparente. Ambos são transferências pequenas e autónomas.

Download

Clavitor CLI

Fetch credentials, generate TOTP codes, store new secrets.

PlatformSizeSHA-256
Linux · amd644.3 MB1b99bab674c0a315…Download
Linux · arm643.1 MBc6dbef906d94be82…Download
macOS · Intel2.2 MB62bd8b8b493f498d…Download
macOS · Apple Silicon2.0 MBa9e9d46cec185e5d…Download
Windows · amd641.7 MB5ef09e2884b7f1e8…Download
FreeBSD · amd644.3 MBc8b2568dc6beff64…Download

Clavitor Proxy

Local HTTPS proxy that injects credentials into agent requests.

PlatformSizeSHA-256
Linux · amd644.7 MB4838a1a69e556b20…Download
Linux · arm643.4 MBd535b91eb41df25d…Download
macOS · Intel2.3 MB708551725b7f9872…Download
macOS · Apple Silicon2.2 MBe4b08eac8f461003…Download
Windows · amd641.8 MB8e1b50fbe73fa51f…Download
FreeBSD · amd644.6 MB04a6f97864f2a046…Download

The macOS and Windows downloads are archives: the program and the two libraries of its FIPS crypto module, which stay in the same folder.

Download SHA256SUMS · verify with sha256sum -c SHA256SUMS

Extensão de navegador

Prefere preencher credenciais no navegador? A extensão Clavitor insere senhas, passkeys, cartões e códigos únicos no campo que realmente os deseja — enquanto seu cofre permanece remoto, sem nada em cache ou descriptografado em sua máquina.

Disponível agora para Chrome. Firefox e Safari em breve.

Configure um agente

Dois passos. Menos de um minuto de uma nova instalação do CLI a uma identidade de agente funcional.

1. Crie o agente no seu cofre

Na interface web do seu cofre, vá a Agentes → Novo. Dê um nome ao agente (por exemplo, "Claude Code") e escolha a que entradas pode aceder. O Clavitor devolve um blob de inscrição e uma chave de inscrição. O blob está selado (codifica o endereço do cofre e a identidade do agente); a chave é o único segredo que o abre. Trate a chave como uma palavra-passe: entregue-a diretamente à máquina onde o agente corre e descarte-a.

2. Inicialize o CLI na máquina do agente

$ clavitor-cli init <enrollment-blob>
Enrollment key:

A CLI pede a chave (nunca é aceite na linha de comandos e não é ecoada), decifra o blob localmente e grava o resultado como configuração local cifrada em ~/.config/clavitor/config (ou $XDG_CONFIG_HOME/clavitor/config). Não volta a precisar do blob nem da chave. A secção seguinte mostra como o agente usa a CLI a partir daqui.

Configure o proxy

Para agentes que já se comunicam via HTTP/HTTPS — Claude Desktop, scripts personalizados, qualquer coisa que use requests ou fetch. O proxy fica entre o agente e a API upstream, resolvendo placeholders clavitor://Entry/field na rede para que o agente nunca detenha a credencial real. Veja a página de arquitetura do proxy para o modelo de ameaças e detalhes do protocolo.

O guia é escrito de forma conversacional para que um humano ou um agente de IA possa lê-lo de cima a baixo e executá-lo em uma máquina real. Escolha seu sistema operacional abaixo — cada seção é um procedimento autônomo de seis passos.

Antes de começar: obtenha um blob de inscrição e a chave no cofre

Precisa de um blob de inscrição e da respetiva chave de inscrição do seu cofre. Esta é a única parte que só um humano pode fazer — o cofre exige um toque no hardware para autorizar um novo agente.

Na interface web do cofre, vá a Agentes → Novo, dê um nome ao agente (p. ex. "Local Proxy"), escolha a que entradas pode aceder e toque na chave de segurança quando lhe for pedido. O Clavitor devolve um blob de inscrição e uma chave de inscrição. Copie ambos. Os passos abaixo pedem que cole cada um uma vez e depois os esqueça.

Linux

O guia abaixo usa bash e assume que você está em x86-64; substitua arm64 por amd64 se você estiver em aarch64.

1. Baixe o binário do proxy e torne-o executável. Um único binário autônomo, sem dependências:

$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-linux-amd64
$ chmod +x clavitor-proxy-linux-amd64

2. O binário está em disco. Agora ligue-o ao seu cofre. O proxy lê o blob e a chave a partir do stdin (nunca da linha de comandos, para não ficarem no histórico da shell). Cole cada um a partir de "Antes de começar" quando lhe for pedido (a chave não é ecoada) e confirme o anfitrião do cofre que lhe é mostrado:

$ ./clavitor-proxy-linux-amd64 init
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>

  This token enrolls the agent against vault:

      <vault-host>

  Your key authenticated the blob — NOT this host. If you did not get
  this blob from your own vault operator, answering yes hands your
  agent's credential resolution to whoever did.
  Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config /path/to/clavitor.conf
Try: clavitor-proxy ca > ca.pem   then   clavitor-proxy serve

O que acabou de acontecer: o blob foi decifrado localmente com a chave (sem chamada de rede), e o endereço do cofre + a identidade do agente + a chave de decifração das credenciais foram escritos num ficheiro cifrado, clavitor.conf, ao lado do binário (modo 0600). Não volta a precisar do blob nem da chave. Quando a entrada é encaminhada em vez de escrita, a confirmação do anfitrião não pode ser respondida, por isso defina primeiro CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.

3. Exporte a CA raiz do proxy. O proxy irá terminar todas as conexões HTTPS que seu agente fizer e emitir um certificado para cada host upstream em tempo real. Sem confiar em sua CA raiz, esses certificados falhariam na verificação:

$ ./clavitor-proxy-linux-amd64 ca > clavitor-proxy-ca.pem

4. Instale a CA no armazenamento de confiança do sistema. Em Debian/Ubuntu e derivados:

$ sudo cp clavitor-proxy-ca.pem /usr/local/share/ca-certificates/clavitor-proxy-ca.crt
$ sudo update-ca-certificates

update-ca-certificates deve exibir 1 added. A partir de agora, todos os clientes HTTPS na máquina (curl, requests do Python, net/http do Go, etc.) aceitam os certificados do proxy como legítimos.

5. Inicie o proxy. Ele se vincula a 127.0.0.1:1983 e é executado em primeiro plano; Ctrl-C o para:

$ ./clavitor-proxy-linux-amd64 serve
clavitor-proxy <version> listening on 127.0.0.1:1983
Point your agent at:  HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983
  Token redacted above; it is stored 0600 at /path/to/proxy-auth.
  e.g.  export HTTPS_PROXY="http://clavitor:$(cat /path/to/proxy-auth)@127.0.0.1:1983"

Para uma configuração permanente, crie uma unidade systemd apontando para o mesmo binário para que ele reinicie na inicialização — veja os docs do proxy para uma unidade de referência.

6. Aponte o agente para o proxy e verifique de ponta a ponta. Noutra shell, na pasta que contém o binário (o ficheiro proxy-auth aí é o token de acesso do proxy; serve imprime esta linha):

$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@127.0.0.1:1983"
$ curl -H "Authorization: Bearer clavitor://OpenAI/key" https://api.openai.com/v1/models

O que realmente sai do proxy e chega aos servidores da OpenAI — a requisição que seu agente nunca vê:

GET /v1/models HTTP/1.1
Host: api.openai.com
Authorization: Bearer sk-proj-abc123def456ghi789…    ← real key, injected by the proxy
User-Agent: curl/8.4.0

Se você receber uma resposta JSON da OpenAI, tudo está configurado. O proxy resolveu clavitor://OpenAI/key contra o cofre usando a chave de descriptografia de credenciais da etapa 2, substituiu a chave real no cabeçalho Authorization e encaminhou a requisição upstream. O código do seu agente contém apenas o placeholder; a chave real nunca sai da memória do processo do proxy.

macOS

O guia abaixo usa zsh (o shell padrão no macOS) e assume Apple Silicon; substitua amd64 por arm64 se você estiver em um Mac Intel.

1. Transfira o proxy e descompacte-o. O arquivo contém uma pasta: o programa e as duas bibliotecas do seu módulo criptográfico FIPS, que ficam ao lado dele:

$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-darwin-arm64.tar.gz
$ tar -xzf clavitor-proxy-darwin-arm64.tar.gz
$ cd clavitor-proxy-darwin-arm64

Se o Gatekeeper do macOS se recusar a executar o binário pela primeira vez, clique com o botão direito nele no Finder, escolha Abrir e confirme — isso registra a exceção. Depois disso, a invocação pela linha de comando funciona.

2. O binário está em disco. Agora ligue-o ao seu cofre. O proxy lê o blob e a chave a partir do stdin (nunca da linha de comandos, para não ficarem no histórico da shell). Cole cada um a partir de "Antes de começar" quando lhe for pedido (a chave não é ecoada) e confirme o anfitrião do cofre que lhe é mostrado:

$ ./clavitor-proxyinit
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>

  This token enrolls the agent against vault:

      <vault-host>

  Your key authenticated the blob — NOT this host. If you did not get
  this blob from your own vault operator, answering yes hands your
  agent's credential resolution to whoever did.
  Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config /path/to/clavitor.conf
Try: clavitor-proxy ca > ca.pem   then   clavitor-proxy serve

O que acabou de acontecer: o blob foi decifrado localmente com a chave (sem chamada de rede), e o endereço do cofre + a identidade do agente + a chave de decifração das credenciais foram escritos num ficheiro cifrado, clavitor.conf, ao lado do binário (modo 0600). Não volta a precisar do blob nem da chave. Quando a entrada é encaminhada em vez de escrita, a confirmação do anfitrião não pode ser respondida, por isso defina primeiro CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.

3. Exporte a CA raiz do proxy. O proxy irá terminar todas as conexões HTTPS que seu agente fizer e emitir um certificado para cada host upstream em tempo real. Sem confiar em sua CA raiz, esses certificados falhariam na verificação:

$ ./clavitor-proxyca > clavitor-proxy-ca.pem

4. Instale a CA no System Keychain. Um comando, pede sua senha sudo:

$ sudo security add-trusted-cert -d -r trustRoot \
    -k /Library/Keychains/System.keychain clavitor-proxy-ca.pem

Após isso, Safari, curl, Swift, Python, Go e a maioria dos outros clientes HTTPS na máquina aceitam os certificados do proxy. (Um pequeno número de runtimes de linguagem envia seu próprio pacote de confiança e precisa de configuração separada — você verá um erro de certificado se for o caso.)

5. Inicie o proxy. Ele se vincula a 127.0.0.1:1983 e é executado em primeiro plano; Ctrl-C o para:

$ ./clavitor-proxyserve
clavitor-proxy <version> listening on 127.0.0.1:1983
Point your agent at:  HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983
  Token redacted above; it is stored 0600 at /path/to/proxy-auth.
  e.g.  export HTTPS_PROXY="http://clavitor:$(cat /path/to/proxy-auth)@127.0.0.1:1983"

Para uma configuração permanente, instale-o como um agente launchd para que ele inicie no login e reinicie em caso de falha.

6. Aponte o agente para o proxy e verifique de ponta a ponta. Noutra shell, na pasta que contém o binário (o ficheiro proxy-auth aí é o token de acesso do proxy; serve imprime esta linha):

$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@127.0.0.1:1983"
$ curl -H "Authorization: Bearer clavitor://OpenAI/key" https://api.openai.com/v1/models

O que realmente sai do proxy e chega aos servidores da OpenAI — a requisição que seu agente nunca vê:

GET /v1/models HTTP/1.1
Host: api.openai.com
Authorization: Bearer sk-proj-abc123def456ghi789…    ← real key, injected by the proxy
User-Agent: curl/8.4.0

Se você receber uma resposta JSON da OpenAI, tudo está configurado. O proxy resolveu clavitor://OpenAI/key contra o cofre usando a chave de descriptografia de credenciais da etapa 2, substituiu a chave real no cabeçalho Authorization e encaminhou a requisição upstream. O código do seu agente contém apenas o placeholder; a chave real nunca sai da memória do processo do proxy.

Windows

O guia abaixo usa o PowerShell no Windows de 64 bits.

1. Transfira o proxy e descompacte-o. O zip contém uma pasta: clavitor-proxy.exe e as duas bibliotecas do seu módulo criptográfico FIPS, que ficam ao lado dele:

> Invoke-WebRequest https://clavitor.ai/downloads/clavitor-proxy-windows-amd64.zip `
    -OutFile clavitor-proxy.zip
> Expand-Archive clavitor-proxy.zip .
> cd clavitor-proxy-windows-amd64

O Windows SmartScreen pode exibir um aviso na primeira vez que você executa um binário não assinado — clique em Mais informações → Executar mesmo assim para permiti-lo.

2. O binário está em disco. Agora ligue-o ao seu cofre. O proxy lê o blob e a chave a partir do stdin (nunca da linha de comandos, para não ficarem no histórico do PowerShell). Cole cada um a partir de "Antes de começar" quando lhe for pedido (a chave não é ecoada) e confirme o anfitrião do cofre que lhe é mostrado:

> .\clavitor-proxy.exe init
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>

  This token enrolls the agent against vault:

      <vault-host>

  Your key authenticated the blob — NOT this host. If you did not get
  this blob from your own vault operator, answering yes hands your
  agent's credential resolution to whoever did.
  Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config C:\path\to\clavitor.conf
Try: clavitor-proxy ca > ca.pem   then   clavitor-proxy serve

O que acabou de acontecer: o blob foi decifrado localmente com a chave (sem chamada de rede), e o endereço do cofre + a identidade do agente + a chave de decifração das credenciais foram escritos num ficheiro cifrado, clavitor.conf, ao lado do binário. Não volta a precisar do blob nem da chave. Quando a entrada é encaminhada em vez de escrita, a confirmação do anfitrião não pode ser respondida, por isso defina primeiro CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.

3. Exporte a CA raiz do proxy. O proxy irá terminar todas as conexões HTTPS que seu agente fizer e emitir um certificado para cada host upstream em tempo real. Sem confiar em sua CA raiz, esses certificados falhariam na verificação:

> .\clavitor-proxy.exe ca > clavitor-proxy-ca.pem

4. Instale a CA no armazenamento de Raiz Confiável da Máquina Local. Abra um PowerShell elevado (Clique com o botão direito no PowerShell → Executar como administrador) e execute:

> certutil -addstore -f "ROOT" clavitor-proxy-ca.pem

Após isso, Edge, .NET, curl.exe e a maioria dos clientes HTTP na máquina aceitam os certificados do proxy. (O Firefox mantém seu próprio armazenamento de confiança; se você estiver testando através do Firefox, importe a CA separadamente em Configurações → Privacidade e Segurança → Certificados → Ver Certificados → Autoridades → Importar.)

5. Inicie o proxy. Ele se vincula a 127.0.0.1:1983 e é executado em primeiro plano; Ctrl-C o para:

> .\clavitor-proxy.exe serve
clavitor-proxy <version> listening on 127.0.0.1:1983
Point your agent at:  HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983
  Token redacted above; it is stored 0600 at C:\path\to\proxy-auth.
  e.g.  export HTTPS_PROXY="http://clavitor:$(cat C:\path\to\proxy-auth)@127.0.0.1:1983"

Para uma configuração permanente, registre-o como um serviço do Windows ou tarefa agendada para que ele inicie na inicialização.

6. Aponte o agente para o proxy e verifique de ponta a ponta. Noutra janela do PowerShell, na pasta que contém o binário (o ficheiro proxy-auth aí é o token de acesso do proxy):

> $env:HTTPS_PROXY = "http://clavitor:$(Get-Content proxy-auth)@127.0.0.1:1983"
> curl.exe -H "Authorization: Bearer clavitor://OpenAI/key" `
    https://api.openai.com/v1/models

(Use curl.exe explicitamente — o alias curl do PowerShell aponta para Invoke-WebRequest, que lida com a variável de ambiente do proxy de forma diferente.) O que realmente sai do proxy e chega aos servidores da OpenAI — a requisição que seu agente nunca vê:

GET /v1/models HTTP/1.1
Host: api.openai.com
Authorization: Bearer sk-proj-abc123def456ghi789…    ← real key, injected by the proxy
User-Agent: curl/8.4.0

Se você receber uma resposta JSON da OpenAI, tudo está configurado. O proxy resolveu clavitor://OpenAI/key contra o cofre usando a chave de descriptografia de credenciais da etapa 2, substituiu a chave real no cabeçalho Authorization e encaminhou a requisição upstream. O código do seu agente contém apenas o placeholder; a chave real nunca sai da memória do processo do proxy.

Instale a skill Claude Code

O CLI vem com uma definição de skill integrada que ensina o Claude Code a usar seu cofre. Um comando a instala.

# Install globally (all projects)
$ clavitor-cli skill > ~/.claude/skills/clavitor.md

# Or install for a specific project
$ clavitor-cli skill > /path/to/project/.claude/skills/clavitor.md

A skill está embutida no binário. Atualize-a baixando uma nova versão.

Use-a

Seu agente agora pode buscar credenciais, gerar códigos TOTP e armazenar novos segredos. Todo acesso é registrado na trilha de auditoria do cofre.

# Fetch a credential
$ clavitor-cli get github

# Generate a TOTP code
$ clavitor-cli totp github

# Store a new credential
$ clavitor-cli put credential "AWS Prod" --username admin --password s3cret

# List all entries
$ clavitor-cli list

Uma chamada CLI. Todos os segredos.

Seu cofre, seus escopos, sua trilha de auditoria. Sem variáveis de ambiente, sem arquivos de configuração, sem segredos em logs.