Segurança

Privado por design.

O Codna roda na sua máquina com a sua própria chave. Só o pacote de evidências chega ao seu provedor de modelo.

Segurança

01

Roda localmente

Entendimento, mapa do repositório e recall rodam na sua máquina, offline, por zero tokens. Sem servidor para operar.

02

BYOK

Sua chave de provedor fica no chaveiro do sistema. Nunca é passada na linha de comando e nunca é impressa.

03

Egresso fail-closed

Defina privacy.egress como fail-closed no codna.yaml. O Codna então roda seus testes só quando consegue negar a eles acesso à rede em nível de kernel, e não faz consultas ao registro durante a revisão.

04

Redação sempre ativa

Segredos são redigidos de toda saída. Essa configuração não pode ser desligada.

Fluxo de dados

O que sai da sua máquina.

A maioria das ferramentas de código transmite seu repositório para uma janela de contexto. O Codna faz o contrário. O trabalho acontece localmente, e só um pacote pequeno e inspecionável chega a um modelo. Este é o caminho que seu código percorre.

01

O mapa roda localmente, por zero tokens

O Codna lê e mapeia seu repositório no seu próprio hardware. Nenhum código é enviado a lugar nenhum para entender sua base de código.

02

Um pacote de evidências é construído

Para cada correção, o Codna reúne os arquivos suspeitos, caminhos de chamada e o teste que falha em vez de enviar a árvore inteira. Ele imprime a relação bruto/pacote em cada execução.

03

O agente chama seu modelo, com a sua chave

O Codna envia esse pacote ao seu provedor usando a sua própria chave do chaveiro. O acordo de dados é entre você e o seu provedor. Ou use o crédito gerenciado e o Codna assume a conta.

04

O egresso fail-closed recusa o resto

Defina privacy.egress como fail-closed e o Codna roda seus testes só sob bloqueio de rede em nível de kernel. Segredos são redigidos de toda saída, e isso não pode ser desligado.

Limites

O que o Codna nunca faz.

Boa segurança é tanto sobre o que uma ferramenta se recusa a fazer quanto sobre o que ela oferece. Estes são comportamentos do produto entregue.

  • Enviar seu repositório a um modelo. Só o pacote de evidências ou o diff vai.
  • Imprimir ou registrar sua chave de provedor.
  • Desligar a redação de segredos.
  • Dar ao agente de revisão um token de escrita ou um shell.
  • Fazer merge de um pull request.

Deploy

Privado por deploy.

Onde o software roda decide onde seus dados vivem. O Codna roda os mesmos comandos em toda superfície. Escolha a que se encaixa nos seus controles.

Na sua máquina

A CLI e o servidor MCP rodam localmente. Seu código é mapeado e corrigido no hardware em que já vive. Só o pacote de evidências chega ao seu provedor.

Na sua CI

thyn-ai/codna-action@v1 roda nos seus próprios runners com a sua própria chave. O modo fix abre pull requests e nunca faz merge; o modo review publica achados e um veredito.

GitHub App

Hospedada pelo Codna, com tokens por job, restritos ao repositório e de curta duração. O agente de revisão não tem token de escrita. Administradores podem desligar correções automáticas para a organização.

01Controles em tempo de execução

Aplicado, não prometido.

Revisão somente leitura sem token de escrita. Tokens de escrita removidos das execuções de teste. Tokens da App por job, restritos ao repositório e de curta duração. Redação que não pode ser desligada.

Perguntas frequentes

Seu código não é usado para treinar modelos a menos que você opte por isso. Veja a política de privacidade. O entendimento roda na sua máquina, e só o pacote de evidências ou o diff chega ao seu provedor de modelo.

Sim. A CLI e a GitHub Action rodam onde você as executar, com a sua própria chave. Não há servidor para operar. A GitHub App hospedada é opcional.

Uma configuração opcional no codna.yaml. Com privacy.egress definido como fail-closed, o Codna roda seus testes só quando consegue negar a eles acesso à rede em nível de kernel, e não faz consultas ao registro durante a revisão. Sem a configuração, execuções de teste em sandbox no Linux ainda recebem bloqueio de rede em nível de kernel; em outros sistemas, a execução registra a atividade de rede.

codna key set guarda sua chave de provedor no chaveiro do sistema. O Codna a lê do ambiente ou do chaveiro e chama seu provedor diretamente. Cobrança e termos de dados ficam entre você e o seu provedor.

Tokens de curta duração, restritos ao repositório, emitidos por job. Review: contents leitura, pull requests escrita, checks escrita, statuses leitura. O próprio agente de revisão não tem token de escrita nem shell. Jobs de fix recebem escopos de escrita só para o repositório em que atuam.

Só o pacote de evidências para uma correção, ou o diff para uma revisão. O Codna imprime o tamanho em tokens bruto/pacote em cada execução, para você ver no seu próprio repositório. Durante uma revisão, o Codna também confere afirmações sobre dependências no npm e no PyPI, a menos que o egresso seja fail-closed.

Seu código. Suas chaves. Sua máquina.