OpenProse

OpenProse é um formato de workflow portátil, markdown-first para orquestrar sessões de IA. No Mayros ele vem como um plugin que instala um pacote de skill OpenProse mais um comando slash /prose. Programas vivem em arquivos .prose e podem gerar múltiplos sub-agentes com fluxo de controle explícito.

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

O que ele pode fazer

  • Pesquisa e síntese multi-agente com paralelismo explícito.
  • Workflows repetíveis e seguros para aprovação (revisão de código, triagem de incidentes, pipelines de conteúdo).
  • Programas .prose reutilizáveis que você pode executar em runtimes de agentes suportados.

Instalar + habilitar

Plugins incluídos são desabilitados por padrão. Habilite OpenProse:

bash
mayros plugins enable open-prose

Reinicie o Gateway após habilitar o plugin.

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

Documentação relacionada: Plugins, Manifest de plugin, Skills.

Comando slash

OpenProse registra /prose como um comando de skill invocável pelo usuário. Ele roteia para as instruções da VM OpenProse e usa ferramentas Mayros por baixo dos panos.

Comandos comuns:

/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

Exemplo: um arquivo .prose simples

prose
# Pesquisa + síntese com dois agentes executando em paralelo.

input topic: "O que devemos pesquisar?"

agent researcher:
  model: sonnet
  prompt: "Você pesquisa minuciosamente e cita fontes."

agent writer:
  model: opus
  prompt: "Você escreve um resumo conciso."

parallel:
  findings = session: researcher
    prompt: "Pesquise {topic}."
  draft = session: writer
    prompt: "Resuma {topic}."

session "Mescle as descobertas + rascunho em uma resposta final."
context: { findings, draft }

Localizações de arquivo

OpenProse mantém o estado em .prose/ em seu workspace:

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

Agentes persistentes de nível de usuário ficam em:

~/.prose/agents/

Modos de estado

OpenProse suporta múltiplos backends de estado:

  • filesystem (padrão): .prose/runs/...
  • in-context: transiente, para programas pequenos
  • sqlite (experimental): requer binário sqlite3
  • postgres (experimental): requer psql e uma string de conexão

Observações:

  • sqlite/postgres são opt-in e experimentais.
  • credenciais postgres fluem para logs de subagentes; use um DB dedicado com menos privilégios.

Programas remotos

/prose run <handle/slug> resolve para https://p.prose.md/<handle>/<slug>. URLs diretas são buscadas como estão. Isso usa a ferramenta web_fetch (ou exec para POST).

Mapeamento de runtime Mayros

Programas OpenProse mapeiam para primitivos Mayros:

Conceito OpenProseFerramenta Mayros
Spawn session / Task toolsessions_spawn
Leitura/escrita de arquivoread / write
Web fetchweb_fetch

Se sua lista de permissões de ferramentas bloquear essas ferramentas, programas OpenProse falharão. Consulte Configuração de skills.

Segurança + aprovações

Trate arquivos .prose como código. Revise antes de executar. Use listas de permissões de ferramentas Mayros e gates de aprovação para controlar efeitos colaterais.

Para workflows determinísticos com gate de aprovação, compare com Lobster.