> ## Documentation Index
> Fetch the complete documentation index at: https://zeropath.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Contexto de Repositório

> Forneça à ZeroPath conhecimento de contexto sobre sua base de código para melhorar a precisão dos scans e reduzir falsos positivos

<h2 id="overview">
  Visão Geral
</h2>

O contexto de repositório permite fornecer à ZeroPath informações sobre sua base de código que ela não consegue inferir apenas a partir do código. São descrições em linguagem natural que a ZeroPath leva em conta em sua análise durante os scans.

Por exemplo, você pode informar à ZeroPath que um determinado endpoint fica atrás de um gateway de autenticação, que uma função aparentemente perigosa só é executada em desenvolvimento, ou que um módulo específico lida com entrada já sanitizada. Esse conhecimento adicional ajuda a tomar decisões mais precisas e reduz significativamente os falsos positivos.

<h2 id="why-use-repository-context">
  Por Que Usar o Contexto de Repositório
</h2>

<Columns cols={3}>
  <Card title="Reduza falsos positivos" icon="filter">
    Elimine falsos alarmes recorrentes fornecendo à ZeroPath o conhecimento de domínio necessário para entender
    sua arquitetura.
  </Card>

  <Card title="Melhore a precisão" icon="bullseye-arrow">
    Contexto sobre camadas de autenticação, validação de entrada e fronteiras de implantação ajuda a ZeroPath
    a focar nos riscos reais.
  </Card>

  <Card title="Adapte ao seu stack" icon="sliders">
    Direcione o contexto a arquivos, fases de scan e tipos de entrada específicos para que ele se aplique exatamente onde
    importa.
  </Card>
</Columns>

<h2 id="creating-repository-context">
  Criando Contexto de Repositório
</h2>

<h3 id="from-the-dashboard">
  Pelo Dashboard
</h3>

1. Navegue até [**Context**](https://zeropath.com/app/context) no dashboard da ZeroPath.
2. Clique em **"Add Context"**.
3. Opcionalmente, insira um **título** — um rótulo curto (até 120 caracteres) que identifica a regra de contexto na lista. Se você deixá-lo em branco, a lista de contextos exibe uma prévia do corpo do contexto.
4. Escreva uma descrição em linguagem natural do que a ZeroPath deve saber. Por exemplo:
   * *"Todos os endpoints deste serviço exigem autenticação JWT via API gateway — acesso não autenticado não é possível."*
   * *"A chamada eval() em src/sandbox/ é executada dentro de um contêiner Docker restrito, sem acesso à rede."*
   * *"O rate limiting é aplicado no nível do load balancer para todas as rotas voltadas ao público."*
5. Opcionalmente, defina um **escopo de arquivos** usando um padrão glob (por exemplo, `src/api/**`, `*.py`) para limitar o contexto a arquivos específicos. O padrão é todos os arquivos.
6. Escolha o **escopo de repositórios**: aplique o contexto a **todos os repositórios** (incluindo quaisquer adicionados no futuro) ou selecione **repositórios específicos**.
7. Opcionalmente, expanda **Advanced Settings** para configurar a quais **tipos de fonte** e **fases de scan** o contexto se aplica. Por padrão, todos os tipos de fonte e fases de scan estão selecionados. Consulte [Direcionamento](#targeting-context) abaixo para mais detalhes.
8. Opcionalmente, expanda **Tags** para atribuir tags para organização e filtragem.
9. Salve o contexto. As alterações entram em vigor no próximo scan.

<h3 id="from-a-false-positive">
  A Partir de um Falso Positivo
</h3>

Quando você marca um achado como falso positivo, a ZeroPath oferece a geração automática de uma regra de contexto de repositório para que o mesmo padrão não seja disparado novamente em scans futuros.

<Steps>
  <Step title="Marque como falso positivo">
    Em qualquer achado, clique em **False Positive** e forneça um motivo explicando por que não é um problema
    real.
  </Step>

  <Step title="Gere o contexto">
    A ZeroPath apresenta a opção **Generate & Save Context**. Clique nela para que a IA da ZeroPath crie
    uma regra de contexto com base no seu motivo de falso positivo e nos detalhes do achado.
  </Step>

  <Step title="Contexto salvo automaticamente">
    O contexto é salvo imediatamente e direcionado ao repositório e ao tipo de entrada relevantes. Não
    há etapa adicional de revisão — ele entra em vigor no próximo scan. Você pode editá-lo ou excluí-lo depois
    na página [Context](https://zeropath.com/app/context).
  </Step>
</Steps>

Este fluxo é a forma mais rápida de ensinar à ZeroPath os padrões específicos da sua base de código.

<h2 id="targeting-context">
  Direcionando o Contexto
</h2>

O contexto de repositório suporta três eixos de direcionamento que controlam quando e onde ele é aplicado. Quanto mais preciso o direcionamento, mais eficaz é o contexto.

<h3 id="file-patterns">
  Padrões de Arquivo
</h3>

Use **padrões glob** para limitar a quais arquivos o contexto se aplica. O padrão é `**`, que corresponde a todos os arquivos.

| Padrão               | Corresponde a                                 |
| -------------------- | --------------------------------------------- |
| `**`                 | Todos os arquivos (padrão)                    |
| `src/api/**`         | Todos os arquivos em `src/api/`               |
| `**/*.controller.ts` | Todos os arquivos de controller em TypeScript |
| `services/auth/**`   | Todos os arquivos do serviço de autenticação  |

<h3 id="scan-phases">
  Fases de Scan
</h3>

Escolha quais estágios da análise da ZeroPath devem ver este contexto. Por padrão, todas as fases estão selecionadas. Selecione fases específicas quando seu contexto for relevante apenas para um tipo particular de análise. No dashboard, elas aparecem como caixas de seleção em **Advanced Settings**.

O pipeline de scan da ZeroPath passa por várias fases. Ao criar um contexto, você pode selecionar uma ou mais delas para controlar quando seu contexto é aplicado:

| Fase                            | O Que a ZeroPath Está Fazendo                                                                                         |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Application identification**  | Entendendo o que seu código faz — identificando serviços, módulos e pontos de entrada                                 |
| **Source identification**       | Encontrando onde dados não confiáveis entram na sua aplicação (por exemplo, requisições HTTP, uploads de arquivos)    |
| **Sink identification**         | Encontrando onde os dados fluem para operações sensíveis (por exemplo, consultas a banco de dados, comandos de shell) |
| **Vulnerability investigation** | Avaliando se problemas potenciais são vulnerabilidades reais e exploráveis                                            |
| **Logic analysis**              | Analisando a lógica de negócio em busca de problemas de segurança além dos padrões de código típicos                  |
| **Custom rule evaluation**      | Avaliando suas [regras personalizadas](/pt/platform/custom-rules) contra a base de código                             |

<Tip>
  Se você não tem certeza de qual fase selecionar, deixe todas as fases habilitadas. A ZeroPath aplicará seu
  contexto onde ele for relevante.
</Tip>

<h3 id="input-types">
  Tipos de Entrada
</h3>

Limite o contexto a tipos específicos de pontos de entrada de dados. Isso é útil quando seu contexto se aplica apenas a certos tipos de tratamento de entrada. No dashboard, eles aparecem como caixas de seleção em **Advanced Settings**:

| Tipo de Entrada   | Descrição                                                             |
| ----------------- | --------------------------------------------------------------------- |
| **HTTP Handler**  | Endpoints de API web e manipuladores de requisições HTTP              |
| **File Handler**  | Processamento de upload de arquivos e entrada do sistema de arquivos  |
| **Stdin Handler** | Entrada via stdin de linha de comando e pipes                         |
| **Browser Data**  | Entrada do navegador no lado do cliente (cookies, local storage, DOM) |
| **WebSocket**     | Manipuladores de mensagens WebSocket                                  |
| **Socket**        | Conexões brutas de socket TCP/UDP                                     |
| **CLI Argument**  | Argumentos e flags de linha de comando                                |
| **Mobile Inputs** | Entrada de usuário em aplicações móveis                               |

Ao criar uma nova entrada de contexto, todos os tipos de entrada estão selecionados por padrão. Desmarque os que não forem relevantes para restringir o escopo.

<h2 id="context-scope">
  Escopo do Contexto
</h2>

O contexto pode ter escopo em três níveis, seguindo o mesmo modelo de herança das [configurações do scanner](/pt/platform/scanner-settings):

| Escopo          | Aplica-se A                                                                   |
| --------------- | ----------------------------------------------------------------------------- |
| **Organização** | Todos os repositórios da organização (deixe repositórios/tags sem atribuição) |
| **Tag**         | Todos os repositórios com a(s) tag(s) selecionada(s)                          |
| **Repositório** | Apenas o repositório ou repositórios selecionados                             |

O contexto com escopo de organização se aplica automaticamente a repositórios recém-adicionados, sem nenhuma atualização manual.

As regras de contexto **se acumulam** entre os níveis — um repositório recebe seu próprio contexto mais qualquer contexto de nível de tag e de organização que se aplique a ele. Escopos mais específicos não substituem os mais amplos.

<h2 id="managing-context">
  Gerenciando o Contexto
</h2>

Na página [Context](https://zeropath.com/app/context) você pode:

* **Visualizar** todas as regras de contexto da sua organização em uma tabela que mostra o título (ou uma prévia do corpo do contexto, se nenhum título foi definido), o padrão de arquivos, as tags atribuídas e o escopo de repositórios. Regras de contexto que se aplicam a todos os repositórios exibem **"All Repositories"** em vez de uma contagem.
* **Editar** qualquer regra de contexto clicando na sua linha — atualize o texto, o direcionamento ou o escopo.
* **Excluir** regras de contexto individualmente ou em massa. Excluir uma entrada de contexto exige confirmação para evitar remoções acidentais.

<h2 id="best-practices">
  Boas Práticas
</h2>

1. **Seja específico e factual** — *"Os endpoints /admin exigem certificados de cliente mTLS aplicados pelo ingress Nginx"* é melhor que *"admin é seguro"*. Quanto mais concreto o seu contexto, melhor a ZeroPath consegue usá-lo.
2. **Use o fluxo de falso positivo** — quando você descartar um achado, sempre gere uma regra de contexto. Isso cria um ciclo de feedback que melhora continuamente a qualidade dos scans.
3. **Direcione de forma restrita** — aplique o contexto a padrões de arquivo, fases de scan e tipos de entrada específicos em vez de deixar tudo no padrão. Um direcionamento restrito evita que contexto irrelevante adicione ruído.
4. **Use tags para arquitetura compartilhada** — se vários repositórios compartilham o mesmo gateway de autenticação ou padrão de infraestrutura, crie uma única regra de contexto com escopo de tag em vez de duplicá-la por repositório.
5. **Revise periodicamente** — à medida que sua base de código evolui, revisite as regras de contexto para garantir que ainda refletem a realidade. Contexto desatualizado pode fazer a ZeroPath deixar passar problemas reais.
