Repolode
thruwire

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

    Defina a variável de ambiente TYPESAFE_API_KEY para o modelo de decisão Jev padrão

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