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

# Configuração local

> Controle o escopo de políticas, parâmetros, arquivos personalizados e configurações do Failproof AI no nível da máquina.

O Failproof AI separa a seleção de políticas das configurações de máquina e do daemon. Isso mantém as escolhas de políticas do repositório revisáveis, enquanto as credenciais e o estado do daemon permanecem fora do repositório.

## Escolha um escopo de política

<Tabs>
  <Tab title="Dashboard">
    Execute `failproofai` sem argumentos para abrir o dashboard de políticas local. Escolha o escopo de usuário, projeto ou local antes de ativar uma política, para que a alteração seja gravada no arquivo de configuração correto.

    * **Usuário** se aplica a todos os projetos desta máquina.
    * **Projeto** pertence ao repositório e pode ser commitado.
    * **Local** substitui um projeto para um único usuário e deve permanecer no gitignore.
  </Tab>

  <Tab title="CLI">
    ```bash theme={null}
    failproofai policy add block-rm-rf --scope user
    failproofai policy add block-force-push --scope project
    failproofai policy add warn-large-file-write --scope local
    failproofai policies
    ```

    Nem todo harness suporta o escopo local. A CLI rejeita um escopo que o harness selecionado não consegue representar.
  </Tab>
</Tabs>

| Escopo  | Arquivo de configuração de políticas                |
| ------- | --------------------------------------------------- |
| Projeto | `<project>/.failproofai/policies-config.json`       |
| Local   | `<project>/.failproofai/policies-config.local.json` |
| Usuário | `~/.failproofai/policies-config.json`               |

As políticas ativadas são mescladas como uma união. Os parâmetros de política utilizam o primeiro escopo que define parâmetros para aquela política, na ordem projeto → local → usuário. Caminhos personalizados explícitos utilizam o primeiro escopo que os define.

## Configure os parâmetros de política

<Tabs>
  <Tab title="Dashboard">
    Abra a política no dashboard local, edite os parâmetros suportados e salve no escopo selecionado. Execute uma ação do agente que corresponda e outra que não corresponda, depois inspecione a decisão em **Observe → policy**.
  </Tab>

  <Tab title="CLI">
    Edite o `policies-config.json` do escopo selecionado e execute `failproofai policies` para identificar nomes de políticas ou chaves de parâmetros desconhecidos.

    ```json theme={null}
    {
      "enabledPolicies": ["block-rm-rf", "block-force-push"],
      "policyParams": {
        "block-rm-rf": {
          "allowPaths": ["/tmp/build-output"]
        }
      }
    }
    ```

    ```bash theme={null}
    failproofai policies
    ```
  </Tab>
</Tabs>

## Entenda os arquivos da máquina

`~/.failproofai` contém arquivos separados para diferentes fronteiras de confiança:

| Caminho                | Finalidade                                                                                |
| ---------------------- | ----------------------------------------------------------------------------------------- |
| `config.json`          | Configurações de daemon, auditoria e telemetria não secretas                              |
| `credentials.json`     | Credenciais de nuvem; armazenadas com permissões exclusivas do proprietário               |
| `policies-config.json` | Seleção de builtins, parâmetros e caminhos personalizados explícitos no escopo do usuário |
| `policies/`            | Políticas de convenção do usuário e artefatos de política gerenciados pela nuvem          |
| `hook-activity/`       | Log de decisões de políticas local                                                        |
| `state/`               | Spool do daemon, saúde, pausa e estado de execução                                        |

Use `FAILPROOFAI_HOME` para realocar o layout completo da máquina para um container ou teste isolado. Não realoque diretórios de estado individuais de forma independente.

<Warning>
  Nunca faça commit de `credentials.json`. Faça commit da configuração de políticas do projeto e das políticas de convenção do projeto somente após revisá-las como código de enforcement.
</Warning>
