Webinar em inglêsWebinar com Jason Lee, quarta, 14/10Your newest insider is an AI agent.Jason LeeFormer CISO, Zoom & SplunkInscreva-se

Guardrails para o Claude Code, feitos com as tuas próprias regras.

As regras da tua empresa chegam ao Claude Code antes de cada alteração. O que ele nunca deve fazer fica bloqueado antes de correr.

npx -y @cybedefend/vibedefend@latest install

Criar uma conta gratuitaQualquer versão recente do Claude CodeLer a documentação

Claude CodeClaude Code está a escreverbilling/refund.ts

export async function refund(req: Request) {
  const { id, amount } = await req.json();
  const invoice = await db.invoices.find({
    id, tenant: req.tenant,
  });
  if (amount > 500)
    await approvals.second(invoice);
  return payments.refund(invoice, amount);
}

Cada consulta fica limitada ao tenant.

rules/data-access.md

Reembolsos acima de 500 € precisam de um segundo aprovador.

Aprovada uma vez por Sofia M.

Verificado antes do commit: limpo

Pronto em quatro passos.

  1. Executa um comandoEm qualquer terminal, no macOS, Linux ou Windows. Node 18.17 ou mais recente.
  2. Escolhe a região e inicia sessãoUE ou EUA. O teu browser abre-se para iniciares sessão, sem chave para colar.
  3. Seleciona o Claude CodeO instalador encontra os agentes no teu computador e seleciona-os por ti.
  4. Programa como sempreAbre o Claude Code: o VibeDefend corre ao lado dele.

Verifica quando quiseres: vibedefend status

O que o VibeDefend acrescenta ao Claude Code.

Regras servidas

As tuas regras de negócio e de segurança chegam ao Claude Code antes de cada edição.

Claude CodeClaude Code está a escreversrc/billing/cart-checkout.ts

const total = new Decimal128(cart.sum);
const rows = await db.query(
  "SELECT * FROM carts WHERE id = $1", [id]
);

Os montantes usam Decimal128, nunca Number.

Extraída de src/billing.ts:14

Qualquer consulta que misture dados do utilizador é parametrizada.

OWASP Top 10

Servidas antes da edição

Proteção de segredos

As leituras diretas de segredos são recusadas; o Claude Code recebe a referência gerida.

Claude CodeClaude Codewebhooks.ts

  1. cat .env | grep STRIPE

    Bloqueado: leitura direta de um segredo

  2. Em vez dissoprocess.env.STRIPE_WEBHOOK_SECRET

  3. npm test -- webhooks

    Os testes passam

Registado para a equipa

Controlo de ações

Comandos destrutivos, eliminações de esquema e caminhos protegidos são travados antes de correrem.

Claude CodeClaude Code

  1. rm -rf dist/

    Permitido: saída do build

  2. rm -rf .cache/

    Permitido: cache

  3. rm -rf ./storage/uploads

    Bloqueado: caminho protegido, ficheiros dos utilizadores

Registado para a equipa

Descobertas em direto

As descobertas de SAST, SCA, segredos, IaC e CI/CD, em direto na sessão.

Claude CodeClaude Code

  1. SASTsrc/db/users.repo.ts:42

    SQL injection

  2. SCApackage.json

    lodash 4.17.20, CVE-2021-23337

  3. Secretsconfig/prod.yml

    AWS access key

  4. IaCinfra/main.tf

    S3 bucket public-read

  5. CI/CD.github/workflows/deploy.yml

    pull_request_target

No contexto do agente, em direto

As tuas perguntas.

O VibeDefend altera a minha configuração do Claude Code?
Acrescenta os seus hooks e regista o servidor MCP cybedefend, em ~/.claude/settings.json, ~/.claude.json. Os teus hooks ficam onde estão: voltar a correr o instalador só substitui as entradas do VibeDefend.
O que é que sai da minha máquina?
A análise corre na região que escolheste ao instalar, UE ou EUA. A decisão de bloquear uma ação é tomada na tua máquina. Antes de uma alteração, o hook envia a parte do ficheiro que está a ser escrita, para encontrar as regras que se aplicam. A revisão da sessão envia os ficheiros que a sessão alterou. O teu token de autenticação fica no porta-chaves do teu sistema operativo.
De que versão do Claude Code preciso?
Uma versão recente do Claude Code, e Node 18.17 ou mais recente. O instalador corre em macOS, Linux e Windows.
Tenho de associar cada repositório?
Não para os projetos importados do GitHub ou do GitLab: o VibeDefend lê o origin do repositório e encontra o projeto. Para qualquer outro repositório, corre vibedefend link uma vez. O comando escreve .cybedefend/config.json com o ID do projeto.
Como é que o desinstalo?
Corre vibedefend uninstall: remove todos os ficheiros que o VibeDefend instalou. Se instalaste o pacote globalmente, corre depois npm uninstall -g @cybedefend/vibedefend.
O Claude Code tem guardrails próprios?
Tem as permissões que configuras à mão. O VibeDefend junta-lhe guardrails feitos com as regras da tua empresa: as regras chegam ao Claude Code antes de cada alteração e um hook bloqueia as ações perigosas antes de correrem.
Detalhes técnicos para o Claude Code
Servidor MCP
Disponívelclaude mcp add --scope user
Regras antes de cada alteração
DisponívelPreToolUseEdit|Write|MultiEdit|BashTambém antes dos comandos shell que escrevem ficheiros: redireções, heredocs, tee, sed -i. Os comandos só de leitura não vão buscar nada.
Ações perigosas bloqueadas
DisponívelPreToolUse
Regras carregadas no arranque
DisponívelSessionStart
Revisão no fim da sessão
DisponívelStop
Revisão das sessões longas
DisponívelPreCompact
Lembrete a cada prompt
DisponívelUserPromptSubmit

O que escreve para o Claude Code

  • ~/.claude/settings.json
  • ~/.claude.json

E o runner dos hooks em ~/.cybedefend/. Os teus hooks ficam onde estão: voltar a correr o instalador só substitui as entradas do VibeDefend.

O servidor MCP é adicionado ao nível do utilizador, por isso todos os teus repositórios o veem, e não só aquele a partir do qual instalaste.

Só o Claude Code recebe um lembrete curto a cada prompt: sem ele, uma skill que arranca sozinha podia assumir o controlo antes de as tuas regras chegarem.

Algo não bate certo? O vibedefend status dá um relatório só de leitura, e o vibedefend doctor repara o que conseguir.