Progi
Motor de flujo de trabajo que enseña a tu agente cómo te gusta hacer las cosas.
Documentación
Progi - Motor de flujos de trabajo nativo de MCP
Progi enseña a tu agente cómo te gusta hacer las cosas. Así puedes hacer tu mejor trabajo sin tener que volver a explicar tu proceso ni perder contexto entre sesiones.
Comenzar
Añade Progi a la configuración de tu cliente MCP (GH Copilot / Cursor / Claude Code / etc.):
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"]
}
}
}
Progi Monitoring se inicia automáticamente en http://127.0.0.1:8000.
Si quieres iniciar el monitoreo en un puerto diferente:
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"],
"env": {
"PROGI_WEB_PORT": "8080"
}
}
}
}
Cómo funciona
1. Describe tu flujo de trabajo
"Oye Progi, ayúdame a crear un flujo de trabajo para crear integraciones, revisar código y publicar PRs."
Describe tu proceso en lenguaje natural. Puedes ser detallado o simplemente dar una idea general. Progi lo almacena como un flujo de trabajo estructurado con playbooks por paso.
2. Ejecuta tareas, mantente al tanto
"Oye Progi, inicia una nueva tarea, necesitamos revisar un nuevo PR de documentación en el repositorio." Tu agente carga el flujo de trabajo, avanza por cada paso usando tus playbooks y te incluye en puntos críticos para revisar el resultado.
3. Monitorea el progreso
Progi Monitoring te ofrece una vista en vivo de cada tarea en ejecución y completada: estado, progreso e historial completo de salida en todos tus flujos de trabajo.
4. Optimiza sobre la marcha
Ajusta los playbooks en Progi Monitoring entre ejecuciones. Como los flujos de trabajo viven en una base de datos y sobreviven a los reinicios de contexto, cada tarea futura recoge tus cambios automáticamente: tu proceso se afina con cada iteración.
Herramientas MCP
Bucle de trabajo
| Herramienta | Descripción |
|---|---|
create_task | Crea una nueva tarea bajo un flujo de trabajo dado (estado todo); devuelve una vista previa de su primer paso |
list_tasks | Lista tareas, opcionalmente filtradas por estado y/o flujo de trabajo |
start_or_continue_task | Punto de entrada principal del bucle de trabajo: inicia o reanuda una tarea y devuelve el playbook del paso actual, los datos de entrada y la especificación de salida |
update_progress_notes | Sobrescribe las notas de progreso de una tarea (punto de guardado a mitad de paso) |
finish_step | Marca el paso actual como completado, almacena su salida y avanza al siguiente paso (o marca como finalizado) |
Creación de flujos de trabajo
| Herramienta | Descripción |
|---|---|
get_process_skeleton_prompt | Devuelve el prompt de sistema de la Pasada 1 para convertir una descripción en lenguaje natural en un esqueleto de flujo de trabajo estructurado |
get_playbook_authoring_prompt | Devuelve el prompt de sistema de la Pasada 2 para redactar el playbook de un paso (inyecta el contexto del flujo de trabajo) |
save_workflow | Persiste un nuevo flujo de trabajo, sus pasos y playbooks |
list_workflows | Devuelve todos los flujos de trabajo con sus pasos ordenados |
La creación consta de dos pasadas: la Pasada 1 convierte una descripción en lenguaje natural en un esqueleto estructurado; la Pasada 2 redacta el playbook de cada paso. save_workflow persiste ambas.
Configuración
| Variable | Predeterminado | Propósito |
|---|---|---|
PROGI_DB_PATH | Directorio de datos del SO (platformdirs) | Ubicación del archivo SQLite |
PROGI_WEB_HOST | 127.0.0.1 | Host de enlace de la Web UI |
PROGI_WEB_PORT | 8000 | Puerto de la Web UI |
PROGI_NO_WEB | 0 | Establece 1 para deshabilitar la interfaz web |
Modos de ejecución: uvx progi (MCP + interfaz web), uvx progi --no-web (solo MCP), uvx progi-web (solo interfaz web).
Usa una ruta absoluta para
PROGI_DB_PATH