Bromure Agentic Coding

Não seja o próximo
GitHub

Cada uma foi comprometida pelo ambiente de um desenvolvedor — um segredo vazado, uma cadeia de suprimentos envenenada, um agente de IA fora dos trilhos. O Bromure Agentic Coding barra os três.

Baixe o Bromure Agentic Coding agoraApple Silicon (M1 ou posterior) · Gratuito e Código Aberto
Bromure Agentic Coding running Claude in an isolated VM with the Trace Inspector

Eles não usavam o Bromure Agentic Coding

A aposta

Contenha o raio da explosão, não o desenvolvedor.

O reflexo é trancar os desenvolvedores — EDR, sem root, cada credencial atrás de uma fila. Não funciona: quando a máquina não é deles, eles te contornam, e você perde o controle que buscava e a visibilidade que já tinha.

Dê a eles a máquina inteira

Root, qualquer pacote, qualquer experimento, às 2 da manhã sem chamado. Tire isso e um bom engenheiro se rebela — ou te contorna em silêncio. O ambiente precisa parecer deles, ou eles não vão usar.

Eles têm as chaves do reino

O banco de dados de produção. A conta da AWS. O cluster que um comando pode apagar. Esse acesso é o trabalho — mas um único comando errado, uma única dependência envenenada, um único agente fora dos trilhos coloca a empresa inteira no raio da explosão.

Deixe-os experimentar, tire o dano da mesa

Você não torna isso seguro reduzindo o que o desenvolvedor pode fazer, mas reduzindo o que um erro — ou um comprometimento — pode alcançar.

Então o Bromure deixa o poder do desenvolvedor intacto e, em vez disso, coloca a coleira em três coisas: os segredos dele, o ambiente dele e o que a cadeia de suprimentos contrabandeia.

Todo o poder para o desenvolvedor, uma coleira no dano.

Seus segredos

Tokens reais e chaves SSH nunca entram na sandbox. O agente recebe stubs; um proxy no seu Mac substitui pelo bearer real no fio. Qualquer coisa sensível exige um clique.

Seu ambiente

As salvaguardas inspecionam a operação, não só a conexão. Um DELETE, um force-push, um DROP contra produção para e pergunta primeiro a você — seja qual for o token que ele tenha.

Sua cadeia de suprimentos

Cada pacote que o agente puxa é escaneado contra OSV e socket.dev, os scripts de instalação são removidos, e versões recém-publicadas são retidas — antes que qualquer coisa chegue à VM.

Intermediação de credenciais

O agente funciona, os segredos ficam em casa.

Um agente que não consegue alcançar seus repositórios, registries e servidores não é útil. A resposta ingênua — jogar seus tokens e chaves dentro da VM — os entrega à próxima dependência typosquattada que os ler.

O Bromure inverte isso. A VM vem com stubs que parecem reais para qualquer ferramenta que espere um header Authorization. Um proxy no seu Mac intercepta cada conexão que sai e troca o stub pelo segredo real no fio. O valor real nunca toca um arquivo, uma variável de ambiente ou uma memória que a VM possa ler.

VM sandbox

o agente roda aqui

$ git push
Authorization: Bearer stub_7f3a…ce21
Broker · seu Mac

os segredos reais nunca saem

stub reconhecido → substituído no cabo
PAT real
github.com

vê um token válido

200 OK

O PAT real nunca toca um arquivo, uma variável de ambiente ou uma página de memória que a VM possa alcançar. Uma dependência envenenada vai embora com o stub.

Stubs entram, tokens reais saem

Configure suas credenciais uma vez, no host. A VM ganha stubs que toda ferramenta aceita; o proxy substitui pelo bearer real conforme a requisição sai. Um pacote que captura o sistema de arquivos vai embora com placeholders.

ssh-agent encaminhado, nunca exposto

As chaves SSH ficam no Keychain do macOS — o Bromure encaminha apenas o socket do ssh-agent para dentro da VM. ssh e git funcionam de forma transparente, mas não há arquivo de chave, sem passphrase em memória, nada para roubar.

Liberação por aprovação

Um clique entre o agente e seus segredos.

Marque uma credencial como sensível e o Bromure coloca um humano no circuito. Quando alguma coisa tenta usá-la através do proxy, um aviso no seu Mac nomeia a credencial e o destino, e pergunta. Aprove por cinco minutos, uma hora, a sessão ou só dessa vez.

Aprovação com prazo

Escolha o TTL na hora de aprovar: cinco minutos para um push, uma hora para um release, uso único para as assustadoras. A liberação expira sozinha, então um token não fica escancarado o dia inteiro.

O malware local perde o trunfo

Malware local que tenta fazer push para o seu registry, se passar por você ou drenar uma conta na nuvem não consegue. As credenciais não estão em disco, e o proxy só libera uma quando você clica em aprovar. Execução de código sozinha deixa de ser suficiente para tocar em produção.

Tokens de longa duração viram momentos de acesso. Mesmo com o seu laptop totalmente comprometido, um atacante ainda precisa passar por você para fazer qualquer coisa que importe.

Salvaguardas

Torne qualquer chave somente leitura na saída.

As histórias de terror não são sobre tokens roubados — são sobre um agente que recebeu uma credencial legítima e apagou a coisa errada em produção. A chave nunca foi comprometida; ela só tinha acesso de escrita que não deveria ter. E a solução de manual — um token somente leitura por ferramenta, por sessão — é tediosa demais para se fazer de verdade.

As salvaguardas leem a operação, não só a conexão — uma leitura de uma escrita. Marque uma credencial como somente leitura e o Bromure recusa qualquer coisa que mude o estado. Configure para perguntar, e no instante em que o agente tenta mutar algo, o Bromure barra na linha e pergunta — nomeando o verbo, o alvo e o perfil, exatamente assim.

Bromure Guardrails prompting for approval before a destructive kubectl delete against a production cluster

Somente leitura sem reemitir nada

Pare de gerar um token escopado por ferramenta, por repositório, por sessão. Mantenha a credencial que você já tem e coloque uma fronteira somente leitura na frente dela — ela age como somente leitura pelo tempo que você determinar. Precisa publicar? Reative por quinze minutos.

Pergunta antes de mutar

Configure as credenciais sensíveis para solicitar aprovação, e toda chamada que altera estado pausa até você aprovar. As mesmas liberações com prazo: quinze minutos, só essa vez, a sessão ou nunca. O agente pode ler o dia inteiro; ele não pode mudar produção sem um sim.

O agente mantém sua autonomia onde os erros são baratos e a perde exatamente onde não são. "O agente apagou o banco de dados de produção" deixa de ser um postmortem e vira uma caixa de diálogo onde você clicou em “Não permitir”.

Cadeia de suprimentos

Cada pacote que o agente puxa, escaneado antes de aterrissar.

Os logos no topo desta página são um muro de incidentes de cadeia de suprimentos. Um agente que instala dependências com o seu aval é o veículo de entrega perfeito: ele roda `npm install`, uma dependência transitiva dispara seu postinstall, e você descobre no próximo trimestre.

Supply Chain transforma esse mesmo proxy em um ponto de verificação de varredura: cada pacote que o agente busca é inspecionado contra OSV e socket.dev, os scripts de instalação são removidos, e versões recém-publicadas são retidas. Roda na fronteira da VM, então permanece ativo não importa o que o agente faça lá dentro.

Bromure Supply Chain log scanning every npm package against OSV and socket.dev as the agent installs them

Imposto abaixo do agente, não por ele

Cada busca de pacote sai da VM pelo proxy do Bromure. Por mais que o agente reescreva sua configuração para te contornar, a varredura acontece na fronteira que ele não consegue cruzar — então a proteção se mantém mesmo quando o agente tenta contorná-la.

Dois scanners, dois tipos de ameaça

O OSV pega CVEs conhecidos acima do limiar de severidade que você define. O socket.dev pega o que os bancos de dados ainda não pegaram — scripts de instalação maliciosos, malware, typosquats. Uma versão sinalizada é bloqueada antes de chegar à VM.

Scripts de instalação, removidos em tempo real

Hooks de instalação como `postinstall` são onde os payloads de fato executam. O Bromure os remove do tarball e corrige o hash dos metadados para que a instalação continue verificando. Os poucos builds nativos que realmente precisam deles entram numa lista de permissão curta; todo o resto instala inerte.

Um pacote precisa envelhecer antes de poder morder

Versões comprometidas costumam ser removidas em poucas horas — exatamente as horas em que um agente poderia puxar uma. O Bromure coloca em quarentena tudo que foi publicado nos últimos dois dias (ajustável), de modo que uma versão maliciosa recém-publicada não é instalável enquanto o ecossistema se atualiza.

Bromure Supply Chain profile settings: block compromised packages and known CVEs, strip install scripts, and gate lockfile-pinned installs

O agente pode dar `npm install` no que precisar — mas nunca em um CVE crítico conhecido, uma versão comprometida, um script de instalação não autorizado ou uma versão enviada há uma hora. A proteção nunca depende da cooperação do agente.

Tracer de sessão

Veja exatamente o que o agente fez.

Um agente de programação toma centenas de decisões por sessão, e a maioria passa batido sem ser lida. Tudo bem até alguma coisa quebrar — ou até você precisar explicar a um colega ou a um auditor o que o modelo de fato mudou.

O Bromure registra a sessão inteira em tempo real: cada prompt, cada resposta, cada chamada de ferramenta, cada comando de shell, cada arquivo escrito. Abra depois, pesquise nele, anexe a um pull request. O agente trabalha rápido; o registro é paciente.

Bromure Trace Inspector showing every API call made by the agent

Captura completa do diálogo

Prompts, completions, chamadas de ferramenta, comandos de shell, edições de arquivo, códigos de saída — capturados ao vivo. Nada é reconstruído a partir do scrollback; nada é perdido quando você fecha o terminal.

Replicável, revisável, atribuível

Percorra o raciocínio e as ações do agente, veja exatamente o que foi instalado e por quê, e transforme "simplesmente funcionou" ou "simplesmente quebrou" em algo que você consegue mostrar para outro humano.

Quando o agente funciona, o trace é o seu rastro de papel. Quando não funciona, é o seu relatório de bug.

Traga o seu próprio agente.

O Bromure Agentic Coding não substitui sua tooling — ele dá a ela um lugar seguro para rodar. A VM já vem com os runtimes que a maioria dos agentes espera, e você instala o resto.

Claude Code

O agente de terminal da Anthropic roda nativamente dentro da VM. Autentique uma vez e deixe ele puxar dependências, rodar testes e refatorar contra o repositório compartilhado.

Codex

O agente de programação da OpenAI instala da mesma forma que instalaria em qualquer máquina Linux — exceto que esta máquina Linux não consegue enxergar seu diretório home.

Grok Build

O agente de programação da xAI instala e roda na VM como qualquer outra ferramenta Linux. Aponte-o para o repositório compartilhado; seus tokens e chaves SSH reais ficam no host, fora do seu alcance.

Qualquer outra coisa

Aider, OpenHands, agentes internos customizados — se rodar em Linux, roda no Bromure. A VM é só uma máquina Linux; a segurança vem de onde ela vive.

Como funciona

1. Escolha suas pastas

Escolha quais pastas do seu Mac a VM pode montar — normalmente só o projeto em que você está trabalhando. Essa é a visão completa que o agente tem do seu sistema de arquivos.

2. Inicie a VM

O Bromure sobe uma VM Linux em alguns segundos usando o Apple Virtualization.framework. Abra um terminal nela como faria em qualquer máquina remota.

3. Rode o agente

Instale o Claude Code ou o Codex dentro da VM. Aponte para a pasta compartilhada. Deixe ele trabalhar — instalar pacotes, rodar scripts, criar processos — sem nunca tocar no seu host.

4. Resete quando quiser

Quando o estado da VM deixa de ser útil, jogue fora. Comece zero em segundos. Seu código está no host; a bagunça fica na VM.

Por que não usar só um contêiner ou qualquer VM?

E um contêiner, ou a minha VM de sempre?

Todo mundo tem uma sandbox de algum tipo. O ponto do Bromure não é a sandbox — é o que não está dentro dela.

Sem intermediário de credenciais

Para uma contêiner genérica ser útil, você acaba montando seus segredos reais para dentro, em um sistema de arquivos que o agente consegue ler. O Bromure inverte isso: a sandbox recebe stubs, e um proxy os substitui pelo segredo real no fio. Um contêiner comum não tem equivalente sem reinventar o modelo de confiança.

Sem barreira de aprovação

Uma sandbox genérica libera credenciais no instante em que algo pede. O Bromure coloca um passo com humano no circuito na frente de cada credencial sensível — nome, destino, TTL — para que nem mesmo malware local consiga drenar um token enquanto você não está olhando.

Contêineres compartilham seu kernel

Contêineres compartilham o kernel com o host — um pacote ruim ou um bug de kernel, e a fronteira já era. Eles isolam workloads, não as coisas que você roda dentro deles. A sandbox do Bromure é uma VM de verdade com seu próprio kernel: uma fronteira real, caso a camada de credenciais um dia precise se apoiar nela.

Docker no Mac já é uma VM

O Docker no Mac já roda seus contêineres dentro de uma VM Linux escondida — você já está pagando o custo da VM, só sem ver. O Bromure corta a camada do meio e usa direto o Virtualization.framework da Apple: uma sandbox, visível e sua.

Qualquer contêiner ou VM pode hospedar um agente. Só o Bromure intermedia suas credenciais para que o agente nunca as tenha em mãos. O isolamento é o básico; o intermediário de credenciais é o diferencial.

Dê ao seu agente uma oficina de verdade.

Uma VM. Isolamento total. Instale qualquer coisa. O Bromure Agentic Coding é gratuito e de código aberto.

Baixe o Bromure Agentic Coding agoraApple Silicon (M1 ou posterior) · Gratuito e Código Aberto