Juntando todos os pacotes através da superfície de comando humana.
A CLI alembic agrupa comandos por propósito:
plan, forgeingest, distill, marketingrun, runs, propose, approve, reject, replaystatus, serve, cockpit, tui, tail, doctordocs, publish gate do ForgeA maioria dos comandos aceita --offline, --data-dir e --json.
Pense assim… o painel de controle de uma fábrica: cada botão mapeia para um subsistema, mas a mesma maquinaria subjacente os executa todos.
apps/cli conecta cada pacote. runDistill usa @alembic/harness e @alembic/etl. runIngest usa @alembic/ingestion. runGoalPlan usa @alembic/forge, @alembic/vm, @alembic/swarm, @alembic/coda e @alembic/loop-engineering. Comandos retornam objetos Result tipados e renderizam texto ou JSON.
# ciclo offline completo
alembic doctor
alembic plan "Add a /health endpoint"
alembic forge "Add a /health endpoint" --offline
alembic run --goal GOAL.md --plan alembic.plan.ts --yes --offline
alembic docs ./docs ./siteA CLI usa util.parseArgs do Node e Zod para parsing de argumentos. Expande ~ para $HOME, respeita ALEMBIC_OFFLINE e retorna códigos de saída não-zero em falha. Cada comando é testado contra o registro offline para que a suite de testes permaneça hermética.
Escolha uma tarefa pequena e execute o ciclo offline completo: doctor → plan → forge → run. Verifique se o diretório de run contém todos os artefatos esperados.