Pular para o conteúdo

Dependências

O que o emet precisa na máquina e qual comando verifica cada item. Os termos seguem o GLOSSARY.md. Voltar ao README.

Obrigatórias

  • bun: somente para instalações a partir do código-fonte. O binário independente não precisa de nenhum runtime.

  • rsync e sha256sum ou shasum: exigidos pelo install.sh.

  • git: obrigatório em tempo de execução. Quase todo subcomando o invoca.

  • CLI gh, autenticada: obrigatória quando o tracker é github ou a aterrissagem é pr. Os PRs sempre a usam. Com tracker.kind: "local" e landing.mode: "merge", o gh não é obrigatório.

  • O plugin mattpocock-skills (marketplace claude-plugins-official): as fases de entrevista, spec e tickets do /emet chamam skills que ficam lá.

    Terminal window
    claude plugin marketplace add anthropics/claude-plugins-official
    claude plugin install mattpocock-skills@claude-plugins-official
  • Os agentes emet-worker e emet-reviewer em ~/.claude/agents/: instalados pelo install.sh. A fase 6 e a fase 8 despacham por subagent_type, então a ausência de qualquer um dos dois quebra o despacho. Veja Models & effort.

  • Um servidor MCP do Linear declarado em .mcp.json (ou no escopo de usuário): somente se o repositório usa o tracker linear. O emet verifica a declaração. Se a conexão está autenticada é algo que fica no armazenamento de credenciais do próprio Claude Code e não pode ser verificado daqui. Se uma execução falhar ao ler os tickets, reinicie o Claude Code e aprove a conexão.

Nada do acima é instalado nem autenticado em seu nome. O que muda é quem verifica e com que rigor.

O que verifica o quê

emet init emet doctor emet preflight
plugin ausente/desabilitado imprime o comando de instalação informa (uma vez, para toda a frota) bloqueia o despacho
agente emet-worker/emet-reviewer ausente — informa (uma vez, para toda a frota) bloqueia o despacho
gh ausente/não autenticado (tracker: github) imprime o que executar informa bloqueia o despacho
servidor do Linear não declarado (tracker: linear) imprime uma nota informa bloqueia o despacho
claude fora do PATH, ou uma sondagem que estoura o tempo imprime uma nota informa avisa, nunca bloqueia: isto é “não foi possível verificar”, não “verificado como quebrado”
uma flag da qual o emet depende ausente do --help — informa —

Verificação de flags

O emet doctor verifica as próprias flags, não apenas se os binários existem. Ele lê o --help de gh issue view e gh repo view (--json), gh issue edit (--add-label, --remove-label), claude (--bg) e claude agents (--json), e informa qualquer flag que uma CLI mais nova ou mais antiga não documente mais. Uma flag renomeada, caso contrário, faria uma onda falhar no meio do caminho.

Timeouts e como ignorar um bloqueio

Cada sondagem é limitada a 5 s para que um gh auth status travado (sem rede) não possa pendurar uma onda. Se um bloqueio do preflight estiver errado para o seu ambiente, EMET_SKIP_DEPENDENCY_CHECKS=1 emet preflight o rebaixa a um aviso apenas naquela execução. Defina-a no seu próprio shell, não em nada que o coordenador do /emet execute sem supervisão. Veja Variáveis de ambiente.

Binários do próprio repositório

O preflight.requiredCommands de um repositório (no emet.config.json) é uma lista à parte, de responsabilidade do repositório, de binários que o emet preflight e o emet doctor exigem no PATH. É útil para rg e sg, que os prompts dos workers oferecem como alternativas mais rápidas a ler um arquivo inteiro. O gh não precisa constar ali; a verificação acima já o cobre. Veja preflight.

Para as falhas e suas correções, veja a solução de problemas.