# Terminal [English](../cli.md) · **Português** O binário `acaua` é ao mesmo tempo CLI e daemon. Esta página descreve os comandos que existem no esqueleto `0.1.0`. A detecção ainda não está implementada; o `analyze` valida a entrada e devolve um relatório stub. ```text acaua [opções] Comandos: serve Sobe a API e a UI embutida analyze Analisa um diretório de logs Zeek doctor Checa o ambiente local update Checa ou aplica atualização da CLI ``` ## `acaua serve` Sobe a API HTTP e a UI embutida. ```bash acaua serve --bind 127.0.0.1:8787 --data-dir .acaua ``` | Opção | Padrão | Significado | |---|---|---| | `--bind` | `127.0.0.1:8787` | Endereço de escuta | | `--data-dir` | `.acaua` | Store e arquivos de runtime | O bind padrão é só loopback. Expor o daemon na rede exige proxy reverso com autenticação. A API está documentada em [arquitetura.md](arquitetura.md#api). ## `acaua analyze` ```bash acaua analyze /var/log/zeek/current acaua analyze /var/log/zeek/current --json ``` O diretório é validado e um relatório é impresso. Neste esqueleto o parser ainda não lê registros Zeek: `logs lidos` e `registros` são placeholders, e `alertas` vem vazio. O comando continua útil para conferir tratamento de caminho e o formato JSON. O parser futuro vai suportar `conn.log`, `dns.log`, `ssl.log` e os logs de protocolo necessários para identidade e movimento lateral. NetFlow/IPFIX é modo degradado; não equivale a logs completos de protocolo. ## `acaua doctor` ```bash acaua doctor acaua doctor --json ``` Imprime checagens de Zeek, `curl`, `tar`, da feature opcional DuckDB e do isolamento de `research/`, seguida do estado (`skeleton` em `0.1.0`). Dependência opcional ausente aparece como `falha`, mas não aborta o comando. Não envia telemetria. ## `acaua update` ```bash acaua update acaua update --apply ``` O `update` consulta a última Release do Gitea, compara a tag com a versão em execução e informa se existe atualização. O `--apply` baixa o arquivo da plataforma atual, verifica o SHA-256, extrai e substitui o binário `acaua`. Requisitos: `curl` e `tar` no `PATH`, e local de binário com permissão de escrita. O updater se recusa a substituir qualquer executável cujo nome não seja `acaua`; o app desktop deve ser atualizado pelo instalador. Checksum inválido mantém o binário atual intacto. ## Códigos de saída | Código | Significado | |---|---| | `0` | Sucesso | | `1` | Erro de execução (caminho inválido, update falhou, erro de I/O) | | `2` | Uso inválido da linha de comando (clap) | ## Ambiente O esqueleto não exige variável de ambiente. `RUST_LOG` está reservado para a camada de tracing futura. O diretório de dados padrão é relativo ao diretório de trabalho; use caminho absoluto em serviço de sistema. ## Exemplos ```bash # Laboratório local acaua doctor acaua analyze ./fixtures/zeek --json acaua serve --bind 127.0.0.1:8787 --data-dir ./.acaua # Contêiner docker run --rm -p 127.0.0.1:8787:8787 -v "$PWD/zeek:/data:ro" acaua serve ``` Veja [docker.md](docker.md) para a imagem e o layout de volumes.