A camada de orquestração transport-neutral que expõe o Alembic via REST, SSE e MCP.
@alembic/harness contém HarnessCore, um orquestrador transport-neutral, mais handlers para CLI, HTTP+SSE e MCP. O mesmo core dirige o funil (alembic distill), execuções single-phase e o endpoint POST /runs.
O servidor HTTP suporta criar runs, polling de status e streaming de eventos. A superfície MCP é read-only: um cliente não confiável pode inspecionar mas não disparar execução autônoma.
Pense assim… um stage manager de teatro: o roteiro e os atores permanecem os mesmos seja a audiência na sacada (HTTP), no monitor do saguão (SSE) ou em um fone backstage (MCP).
runFunnel orquestra a destilação T0–T3 sobre um corpus. distillAndMarket compõe o funil com a marketing factory. createHarnessServer liga handlers a um servidor Node http e mantém um registro de runs. Eventos são validados com Zod e transmitidos como frames SSE.
# inicie o servidor harness HTTP+SSE alembic serve --data-dir ~/.alembic # inicie o cockpit web read-only alembic cockpit --data-dir ~/.alembic
alembic serve inicia createHarnessServer e bloqueia até SIGINT. alembic cockpit inicia createCockpitServer de @alembic/web. Ambos bindam em portas efêmeras por padrão e imprimem a URL. O servidor harness POST /runs aceita phase, goal path e plan path, depois inicia uma execução Forge-scope em background.
Inicie alembic cockpit, abra a URL e liste runs. Depois inicie alembic serve e faça curl em /api/runs.