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

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.

License: MIT PyPI MCP


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

HerramientaDescripción
create_taskCrea una nueva tarea bajo un flujo de trabajo dado (estado todo); devuelve una vista previa de su primer paso
list_tasksLista tareas, opcionalmente filtradas por estado y/o flujo de trabajo
start_or_continue_taskPunto 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_notesSobrescribe las notas de progreso de una tarea (punto de guardado a mitad de paso)
finish_stepMarca el paso actual como completado, almacena su salida y avanza al siguiente paso (o marca como finalizado)

Creación de flujos de trabajo

HerramientaDescripción
get_process_skeleton_promptDevuelve 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_promptDevuelve el prompt de sistema de la Pasada 2 para redactar el playbook de un paso (inyecta el contexto del flujo de trabajo)
save_workflowPersiste un nuevo flujo de trabajo, sus pasos y playbooks
list_workflowsDevuelve 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

VariablePredeterminadoPropósito
PROGI_DB_PATHDirectorio de datos del SO (platformdirs)Ubicación del archivo SQLite
PROGI_WEB_HOST127.0.0.1Host de enlace de la Web UI
PROGI_WEB_PORT8000Puerto de la Web UI
PROGI_NO_WEB0Establece 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