> ## 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.

# Cursor

> Servidor MCP, stop hook e regra de projeto para o Cursor

O Cursor recebe três peças: o servidor MCP (ferramentas de varredura, global),
um stop hook observacional (global, beta) e uma regra de projeto (por projeto)
que direciona o agente a escanear o código que escreve.

<h2 id="what-the-installer-writes">
  O que o instalador grava
</h2>

| Arquivo                                      | O quê                                                                                                                       |
| -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `~/.cursor/mcp.json` → `mcpServers.zeropath` | Servidor MCP do ZeroPath (todos os projetos)                                                                                |
| `~/.cursor/hooks.json` → `hooks.stop`        | Stop hook observacional: escaneia o diff não commitado quando o agente termina e registra os achados em `~/.zeropath/logs/` |
| `~/.zeropath/bin/zeropath-cursor-rules`      | Utilitário para instalar a regra de projeto (abaixo)                                                                        |

<h2 id="the-project-rule-run-once-per-project">
  A regra de projeto (execute uma vez por projeto)
</h2>

O Cursor carrega regras de agente de `<project>/.cursor/rules/`, e as "User
Rules" globais só são editáveis pela interface gráfica — então a regra precisa
ser instalada por projeto:

```bash theme={null}
~/.zeropath/bin/zeropath-cursor-rules            # in the project root
# or: zeropath-cursor-rules /path/to/project
```

Isso grava `.cursor/rules/zeropath.mdc` (`alwaysApply: true`), que instrui o
agente do Cursor a enviar seu diff para `asyncCodeScans.submit` com o contexto
da tarefa em `additionalContext`, e a corrigir achados críticos/altos antes de
declarar uma tarefa concluída. Faça commit do arquivo se quiser que toda a
equipe receba o comportamento.

<h2 id="manual-mcp-setup">
  Configuração manual do MCP
</h2>

Em `~/.cursor/mcp.json` (ou no `.cursor/mcp.json` por projeto):

```json theme={null}
{
  "mcpServers": {
    "zeropath": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/ZeroPathAI/zeropath-mcp-server", "zeropath-mcp-server"],
      "env": {
        "ZEROPATH_TOKEN_ID": "your_token_id",
        "ZEROPATH_TOKEN_SECRET": "your_token_secret"
      }
    }
  }
}
```

<h2 id="hook-caveats">
  Ressalvas sobre o hook
</h2>

Os hooks do Cursor (`~/.cursor/hooks.json`) são um recurso beta e seu evento
de stop não pode bloquear o agente — então, no Cursor, o stop hook é apenas de
monitoramento: ele escaneia o diff não commitado e grava o relatório em
`~/.zeropath/logs/`. A *aplicação* determinística no Cursor vem, portanto, da
regra de projeto + caminho MCP, e da varredura de PRs do ZeroPath mais adiante
no fluxo. Se a sua versão do Cursor for anterior ao suporte a hooks, a entrada
em `hooks.json` é simplesmente ignorada.

<h2 id="verify">
  Verificar
</h2>

* **Settings → MCP**: `zeropath` listado com suas ferramentas após um restart.
* Peça ao agente para "escanear minhas alterações não commitadas com o
  ZeroPath" e confirme que ele chama as ferramentas `asyncCodeScans.*`.
* Após uma sessão do agente que alterou código, verifique em
  `~/.zeropath/logs/` se há um relatório `scan-cursor-stop-*.json`.
