Uma CLI standalone em Go que executa Claude Code ou codex de forma autônoma a partir de um plano de implementação em Markdown, com sessões novas por tarefa e revisão de código em várias fases.
thruwire/foreman
Um supervisor em Python que monitora agentes de programação como Codex e OpenCode com modelos de decisão, avaliando conclusão, suficiência dos testes e agentes travados.
- Estrelas
- 814
- Forks
- 69
- Issues abertas
- 10
- Último commit
- há 23 dias
O que é?
Foreman é um supervisor para agentes de programação com IA. Você fornece um ticket, uma especificação ou um relatório de bug, e ele executa um worker, como Codex, OpenCode, Hermes ou o CLI Deep Agents da LangChain. Enquanto o worker está em execução, Foreman envia periodicamente evidências limitadas (texto da tarefa, status e diff do git, trechos finais da saída, resultados dos testes e instruções do AGENTS.md do repositório) para um modelo de decisão. O modelo retorna probabilidades para verificações como conclusão da implementação, atendimento aos requisitos, necessidade de verificação e se o worker está travado ou desviando do objetivo.
Uma política determinística em Python transforma essas pontuações em ações: continuar, orientar o worker durante a execução (somente no Codex App Server), parar, tentar novamente, iniciar um verificador, concluir ou escalar para uma pessoa. As responsabilidades são definidas em arquivos TOML com limites configuráveis, e é possível adicionar verificações personalizadas. Os modelos de decisão podem vir do Jev da TypeSafe (padrão) ou da Decisions API da OpenAI.
Foreman também permite adicionar supervisão a sessões interativas por meio de hooks para Codex, Deep Agents e Pi. Uma demonstração determinística funciona sem chaves de API, e o estado da execução é armazenado localmente no diretório .foreman de cada repositório.
Recursos principais
- 01Executa Codex, OpenCode, Hermes ou Deep Agents como workers de programação.
- 02Avalia conclusão, requisitos, suficiência dos testes e estado do worker de forma independente dele.
- 03Pode orientar uma execução ativa do Codex ou parar e tentar novamente com um worker travado.
- 04Oferece suporte a adaptadores de modelos de decisão para Jev e OpenAI.
- 05Permite configurar responsabilidades, limites e comandos externos para coletar evidências em TOML.
Casos de uso
- Evitar que um agente de programação sem supervisão fique em loop ou se desvie do ticket.
- Adicionar uma verificação independente de conclusão e cobertura de testes antes de aceitar a saída do agente.
- Supervisionar uma sessão interativa do Codex ou Pi iniciada por um desenvolvedor.
- Experimentar a supervisão semântica de agentes de programação usando verificações personalizadas.
Início rápido
- 1
Defina a variável de ambiente TYPESAFE_API_KEY para o modelo de decisão Jev padrão
- 2
Execute o Foreman com o backend de workers do OpenCode em um projeto que tenha uma descrição da tarefa
FOREMAN_WORKER_BACKEND=opencode foreman run --repo ./my-project --job "Add request retries"
Antes de usar
- Atualmente, o Foreman executa apenas um worker de programação por vez.
- O direcionamento em tempo real de um turno ativo funciona apenas com o backend Codex App Server; os demais backends recorrem a parar e tentar novamente.
- A configuração do modelo de decisão padrão requer uma TYPESAFE_API_KEY.
Em coleções
Tópicos
Perguntas frequentes
- O que é foreman?
- Um supervisor em Python que monitora agentes de programação como Codex e OpenCode com modelos de decisão, avaliando conclusão, suficiência dos testes e agentes travados. Foreman é um supervisor para agentes de programação com IA. Você fornece um ticket, uma especificação ou um relatório de bug, e ele executa um worker, como Codex, OpenCode, Hermes ou o CLI Deep Agents da LangChain. Enquanto o worker está em execução, Foreman envia periodicamente evidências limitadas (texto da tarefa, status e diff do git, trechos finais da saída, resultados dos testes e instruções do AGENTS.md do repositório) para um modelo de decisão. O modelo retorna probabilidades para verificações como conclusão da implementação, atendimento aos requisitos, necessidade de verificação e se o worker está travado ou desviando do objetivo.
- foreman é gratuito? Qual é a licença?
- foreman é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- foreman ainda é mantido?
- Manutenção ativa. O último commit de foreman foi em 15 de out. de 2026.
- Para que posso usar foreman?
- Evitar que um agente de programação sem supervisão fique em loop ou se desvie do ticket. Adicionar uma verificação independente de conclusão e cobertura de testes antes de aceitar a saída do agente. Supervisionar uma sessão interativa do Codex ou Pi iniciada por um desenvolvedor. Experimentar a supervisão semântica de agentes de programação usando verificações personalizadas.
- Como instalar foreman?
- Defina a variável de ambiente TYPESAFE_API_KEY para o modelo de decisão Jev padrão Execute o Foreman com o backend de workers do OpenCode em um projeto que tenha uma descrição da tarefa: FOREMAN_WORKER_BACKEND=opencode foreman run --repo ./my-project --job "Add request retries"
- Onde consigo foreman?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/thruwire/foreman
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Console web local e CLI que inserem ou substituem um único system prompt compartilhado (persona) em vários agentes de programação, como Claude Code, Codex e OpenCode.
Uma CLI em Python que integra agentes de programação como Codex e Claude Code, com supervisor, revisor, adversário e resumidor local de logs opcionais, cada um usando seu próprio modelo.
Uma CLI que encontra código relevante a partir de perguntas em linguagem natural e retorna arquivos, pistas e trechos de código para agentes de programação.
Um conjunto de skills para agentes que permite delegar tarefas de programação a CLIs de codificação instaladas, revisar o diff e fazer o commit manualmente.
Bloco de regras para colar na configuração que evita que agentes de programação como Claude Code e Codex se excedam na defesa, criem soluções complexas demais e adicionem verificações desnecessárias.