Progi
Motor de fluxo de trabalho que ensina seu agente como VOCÊ gosta de fazer as coisas.
Documentação
Progi - Mecanismo de Workflow nativo MCP
Progi ensina ao seu agente como você gosta de fazer as coisas. Assim, você pode fazer o seu melhor trabalho sem precisar reexplicar seu processo ou perder contexto entre sessões.
Primeiros passos
Adicione o Progi à configuração do seu cliente MCP (GH Copilot / Cursor / Claude Code / etc):
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"]
}
}
}
O Progi Monitoring inicia automaticamente em http://127.0.0.1:8000.
Se você quiser iniciar o Monitoring em uma porta diferente:
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"],
"env": {
"PROGI_WEB_PORT": "8080"
}
}
}
}
Como funciona
1. Descreva seu workflow
"Ei Progi, me ajude a criar um workflow para criar integrações, revisar código e publicar PRs."
Descreva seu processo em linguagem simples. Você pode ser detalhado ou apenas dar uma ideia geral. O Progi armazena isso como um workflow estruturado com playbooks por etapa.
2. Execute tarefas, mantenha-se informado
"Ei Progi, inicie uma nova tarefa, precisamos revisar um novo PR de docs no repositório." Seu agente carrega o workflow, percorre cada etapa usando seus playbooks e o mantém informado em pontos críticos para revisar a saída.
3. Monitore o progresso
O Progi Monitoring oferece uma visão ao vivo de cada tarefa em execução e concluída — status, progresso e o histórico completo de saída em todos os seus workflows.
4. Otimize conforme avança
Ajuste os playbooks no Progi Monitoring entre execuções. Como os workflows vivem em um banco de dados e sobrevivem a redefinições de contexto, cada tarefa futura incorpora suas alterações automaticamente — seu processo fica mais refinado a cada iteração.
Ferramentas MCP
Loop de trabalho
| Ferramenta | Descrição |
|---|---|
create_task | Cria uma nova tarefa em um workflow específico (status todo); retorna uma prévia da sua primeira etapa |
list_tasks | Lista tarefas, opcionalmente filtradas por status e/ou workflow |
start_or_continue_task | Ponto de entrada principal do loop de trabalho — inicia ou retoma uma tarefa e retorna o playbook da etapa atual, dados de entrada e especificação de saída |
update_progress_notes | Sobrescreve as notas de progresso de uma tarefa (ponto de salvamento no meio da etapa) |
finish_step | Marca a etapa atual como concluída, armazena sua saída e avança para a próxima etapa (ou marca como concluída) |
Criação de workflows
| Ferramenta | Descrição |
|---|---|
get_process_skeleton_prompt | Retorna o prompt de sistema da Pass 1 para transformar uma descrição em linguagem simples em um esqueleto de workflow estruturado |
get_playbook_authoring_prompt | Retorna o prompt de sistema da Pass 2 para criar o playbook de uma etapa (injeta contexto do workflow) |
save_workflow | Persiste um novo workflow, suas etapas e playbooks |
list_workflows | Retorna todos os workflows com suas etapas ordenadas |
A criação é feita em duas passadas: a Pass 1 transforma uma descrição em linguagem simples em um esqueleto estruturado; a Pass 2 cria o playbook de cada etapa. save_workflow persiste ambos.
Configuração
| Variável | Padrão | Finalidade |
|---|---|---|
PROGI_DB_PATH | Diretório de dados do SO (platformdirs) | Localização do arquivo SQLite |
PROGI_WEB_HOST | 127.0.0.1 | Host de vinculação da Web UI |
PROGI_WEB_PORT | 8000 | Porta da Web UI |
PROGI_NO_WEB | 0 | Defina como 1 para desabilitar a Web UI |
Modos de execução: uvx progi (MCP + Web UI), uvx progi --no-web (somente MCP), uvx progi-web (somente Web UI).
Use um caminho absoluto para
PROGI_DB_PATH