OpenProse

OpenProse es un formato de flujo de trabajo portátil y basado en markdown para orquestar sesiones de IA. En Mayros se distribuye como un plugin que instala un paquete de habilidades OpenProse más un comando slash /prose. Los programas viven en archivos .prose y pueden generar múltiples subagentes con flujo de control explícito.

Sitio oficial: https://www.prose.md

Qué puede hacer

  • Investigación multiagente + síntesis con paralelismo explícito.
  • Flujos de trabajo repetibles y seguros para aprobación (revisión de código, triaje de incidentes, pipelines de contenido).
  • Programas .prose reutilizables que puedes ejecutar en runtimes de agentes soportados.

Instalar + habilitar

Los plugins incluidos están deshabilitados por defecto. Habilita OpenProse:

bash
mayros plugins enable open-prose

Reinicia el Gateway después de habilitar el plugin.

Dev/checkout local: mayros plugins install ./extensions/open-prose

Documentación relacionada: Plugins, Manifiesto de plugin, Skills.

Comando slash

OpenProse registra /prose como un comando de habilidad invocable por el usuario. Enruta a las instrucciones de la VM de OpenProse y usa herramientas de Mayros bajo el capó.

Comandos comunes:

/prose help
/prose run <file.prose>
/prose run <handle/slug>
/prose run <https://example.com/file.prose>
/prose compile <file.prose>
/prose examples
/prose update

Ejemplo: un archivo .prose simple

prose
# Investigación + síntesis con dos agentes ejecutándose en paralelo.

input topic: "¿Qué deberíamos investigar?"

agent researcher:
  model: sonnet
  prompt: "Investigas a fondo y citas fuentes."

agent writer:
  model: opus
  prompt: "Escribes un resumen conciso."

parallel:
  findings = session: researcher
    prompt: "Investiga {topic}."
  draft = session: writer
    prompt: "Resume {topic}."

session "Fusiona los hallazgos + borrador en una respuesta final."
context: { findings, draft }

Ubicaciones de archivos

OpenProse mantiene el estado bajo .prose/ en tu espacio de trabajo:

.prose/
├── .env
├── runs/
│   └── {YYYYMMDD}-{HHMMSS}-{random}/
│       ├── program.prose
│       ├── state.md
│       ├── bindings/
│       └── agents/
└── agents/

Los agentes persistentes a nivel de usuario viven en:

~/.prose/agents/

Modos de estado

OpenProse soporta múltiples backends de estado:

  • filesystem (predeterminado): .prose/runs/...
  • in-context: transitorio, para programas pequeños
  • sqlite (experimental): requiere binario sqlite3
  • postgres (experimental): requiere psql y una cadena de conexión

Notas:

  • sqlite/postgres son opt-in y experimentales.
  • Las credenciales de postgres fluyen a los logs de subagentes; usa una BD dedicada con privilegios mínimos.

Programas remotos

/prose run <handle/slug> se resuelve a https://p.prose.md/<handle>/<slug>. Las URLs directas se obtienen tal cual. Esto usa la herramienta web_fetch (o exec para POST).

Mapeo de runtime de Mayros

Los programas OpenProse se mapean a primitivas de Mayros:

Concepto de OpenProseHerramienta Mayros
Spawn session / Task toolsessions_spawn
Lectura/escritura archivoread / write
Web fetchweb_fetch

Si tu lista de permitidos de herramientas bloquea estas herramientas, los programas OpenProse fallarán. Consulta Configuración de Skills.

Seguridad + aprobaciones

Trata los archivos .prose como código. Revisa antes de ejecutar. Usa listas de permitidos de herramientas de Mayros y puertas de aprobación para controlar efectos secundarios.

Para flujos de trabajo determinísticos y con puertas de aprobación, compara con Lobster.