@cleocode/cleo 2026.4.58 → 2026.4.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/commander-shim.d.ts +112 -0
- package/dist/cli/commander-shim.d.ts.map +1 -0
- package/dist/cli/commander-shim.js +233 -0
- package/dist/cli/commander-shim.js.map +1 -0
- package/dist/cli/commands/adapter.d.ts +21 -0
- package/dist/cli/commands/adapter.d.ts.map +1 -0
- package/dist/cli/commands/adapter.js +73 -0
- package/dist/cli/commands/adapter.js.map +1 -0
- package/dist/cli/commands/add-batch.d.ts +16 -0
- package/dist/cli/commands/add-batch.d.ts.map +1 -0
- package/dist/cli/commands/add-batch.js +133 -0
- package/dist/cli/commands/add-batch.js.map +1 -0
- package/dist/cli/commands/add.d.ts +12 -0
- package/dist/cli/commands/add.d.ts.map +1 -0
- package/dist/cli/commands/add.js +238 -0
- package/dist/cli/commands/add.js.map +1 -0
- package/dist/cli/commands/admin.d.ts +15 -0
- package/dist/cli/commands/admin.d.ts.map +1 -0
- package/dist/cli/commands/admin.js +143 -0
- package/dist/cli/commands/admin.js.map +1 -0
- package/dist/cli/commands/adr.d.ts +27 -0
- package/dist/cli/commands/adr.d.ts.map +1 -0
- package/dist/cli/commands/adr.js +79 -0
- package/dist/cli/commands/adr.js.map +1 -0
- package/dist/cli/commands/agent-profile-status.d.ts +98 -0
- package/dist/cli/commands/agent-profile-status.d.ts.map +1 -0
- package/dist/cli/commands/agent-profile-status.js +71 -0
- package/dist/cli/commands/agent-profile-status.js.map +1 -0
- package/dist/cli/commands/agent.d.ts +41 -0
- package/dist/cli/commands/agent.d.ts.map +1 -0
- package/dist/cli/commands/agent.js +2270 -0
- package/dist/cli/commands/agent.js.map +1 -0
- package/dist/cli/commands/agents.d.ts +17 -0
- package/dist/cli/commands/agents.d.ts.map +1 -0
- package/dist/cli/commands/agents.js +20 -0
- package/dist/cli/commands/agents.js.map +1 -0
- package/dist/cli/commands/analyze.d.ts +12 -0
- package/dist/cli/commands/analyze.d.ts.map +1 -0
- package/dist/cli/commands/analyze.js +20 -0
- package/dist/cli/commands/analyze.js.map +1 -0
- package/dist/cli/commands/archive-stats.d.ts +18 -0
- package/dist/cli/commands/archive-stats.d.ts.map +1 -0
- package/dist/cli/commands/archive-stats.js +49 -0
- package/dist/cli/commands/archive-stats.js.map +1 -0
- package/dist/cli/commands/archive.d.ts +12 -0
- package/dist/cli/commands/archive.d.ts.map +1 -0
- package/dist/cli/commands/archive.js +32 -0
- package/dist/cli/commands/archive.js.map +1 -0
- package/dist/cli/commands/backfill.d.ts +38 -0
- package/dist/cli/commands/backfill.d.ts.map +1 -0
- package/dist/cli/commands/backfill.js +144 -0
- package/dist/cli/commands/backfill.js.map +1 -0
- package/dist/cli/commands/backup-inspect.d.ts +24 -0
- package/dist/cli/commands/backup-inspect.d.ts.map +1 -0
- package/dist/cli/commands/backup-inspect.js +417 -0
- package/dist/cli/commands/backup-inspect.js.map +1 -0
- package/dist/cli/commands/backup.d.ts +13 -0
- package/dist/cli/commands/backup.d.ts.map +1 -0
- package/dist/cli/commands/backup.js +479 -0
- package/dist/cli/commands/backup.js.map +1 -0
- package/dist/cli/commands/blockers.d.ts +7 -0
- package/dist/cli/commands/blockers.d.ts.map +1 -0
- package/dist/cli/commands/blockers.js +16 -0
- package/dist/cli/commands/blockers.js.map +1 -0
- package/dist/cli/commands/brain.d.ts +29 -0
- package/dist/cli/commands/brain.d.ts.map +1 -0
- package/dist/cli/commands/brain.js +358 -0
- package/dist/cli/commands/brain.js.map +1 -0
- package/dist/cli/commands/briefing.d.ts +22 -0
- package/dist/cli/commands/briefing.d.ts.map +1 -0
- package/dist/cli/commands/briefing.js +45 -0
- package/dist/cli/commands/briefing.js.map +1 -0
- package/dist/cli/commands/bug.d.ts +12 -0
- package/dist/cli/commands/bug.d.ts.map +1 -0
- package/dist/cli/commands/bug.js +81 -0
- package/dist/cli/commands/bug.js.map +1 -0
- package/dist/cli/commands/cancel.d.ts +17 -0
- package/dist/cli/commands/cancel.d.ts.map +1 -0
- package/dist/cli/commands/cancel.js +28 -0
- package/dist/cli/commands/cancel.js.map +1 -0
- package/dist/cli/commands/cant.d.ts +32 -0
- package/dist/cli/commands/cant.d.ts.map +1 -0
- package/dist/cli/commands/cant.js +264 -0
- package/dist/cli/commands/cant.js.map +1 -0
- package/dist/cli/commands/chain.d.ts +16 -0
- package/dist/cli/commands/chain.d.ts.map +1 -0
- package/dist/cli/commands/chain.js +52 -0
- package/dist/cli/commands/chain.js.map +1 -0
- package/dist/cli/commands/check.d.ts +25 -0
- package/dist/cli/commands/check.d.ts.map +1 -0
- package/dist/cli/commands/check.js +193 -0
- package/dist/cli/commands/check.js.map +1 -0
- package/dist/cli/commands/checkpoint.d.ts +15 -0
- package/dist/cli/commands/checkpoint.d.ts.map +1 -0
- package/dist/cli/commands/checkpoint.js +91 -0
- package/dist/cli/commands/checkpoint.js.map +1 -0
- package/dist/cli/commands/claim.d.ts +27 -0
- package/dist/cli/commands/claim.d.ts.map +1 -0
- package/dist/cli/commands/claim.js +45 -0
- package/dist/cli/commands/claim.js.map +1 -0
- package/dist/cli/commands/code.d.ts +11 -0
- package/dist/cli/commands/code.d.ts.map +1 -0
- package/dist/cli/commands/code.js +114 -0
- package/dist/cli/commands/code.js.map +1 -0
- package/dist/cli/commands/commands.d.ts +13 -0
- package/dist/cli/commands/commands.d.ts.map +1 -0
- package/dist/cli/commands/commands.js +29 -0
- package/dist/cli/commands/commands.js.map +1 -0
- package/dist/cli/commands/complete.d.ts +12 -0
- package/dist/cli/commands/complete.d.ts.map +1 -0
- package/dist/cli/commands/complete.js +92 -0
- package/dist/cli/commands/complete.js.map +1 -0
- package/dist/cli/commands/complexity.d.ts +17 -0
- package/dist/cli/commands/complexity.d.ts.map +1 -0
- package/dist/cli/commands/complexity.js +25 -0
- package/dist/cli/commands/complexity.js.map +1 -0
- package/dist/cli/commands/compliance.d.ts +9 -0
- package/dist/cli/commands/compliance.d.ts.map +1 -0
- package/dist/cli/commands/compliance.js +110 -0
- package/dist/cli/commands/compliance.js.map +1 -0
- package/dist/cli/commands/config.d.ts +10 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- package/dist/cli/commands/config.js +69 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/consensus.d.ts +13 -0
- package/dist/cli/commands/consensus.d.ts.map +1 -0
- package/dist/cli/commands/consensus.js +45 -0
- package/dist/cli/commands/consensus.js.map +1 -0
- package/dist/cli/commands/context.d.ts +15 -0
- package/dist/cli/commands/context.d.ts.map +1 -0
- package/dist/cli/commands/context.js +76 -0
- package/dist/cli/commands/context.js.map +1 -0
- package/dist/cli/commands/contribution.d.ts +13 -0
- package/dist/cli/commands/contribution.d.ts.map +1 -0
- package/dist/cli/commands/contribution.js +41 -0
- package/dist/cli/commands/contribution.js.map +1 -0
- package/dist/cli/commands/current.d.ts +13 -0
- package/dist/cli/commands/current.d.ts.map +1 -0
- package/dist/cli/commands/current.js +20 -0
- package/dist/cli/commands/current.js.map +1 -0
- package/dist/cli/commands/dash.d.ts +12 -0
- package/dist/cli/commands/dash.d.ts.map +1 -0
- package/dist/cli/commands/dash.js +20 -0
- package/dist/cli/commands/dash.js.map +1 -0
- package/dist/cli/commands/decomposition.d.ts +13 -0
- package/dist/cli/commands/decomposition.d.ts.map +1 -0
- package/dist/cli/commands/decomposition.js +45 -0
- package/dist/cli/commands/decomposition.js.map +1 -0
- package/dist/cli/commands/delete.d.ts +12 -0
- package/dist/cli/commands/delete.d.ts.map +1 -0
- package/dist/cli/commands/delete.js +37 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/deps.d.ts +24 -0
- package/dist/cli/commands/deps.d.ts.map +1 -0
- package/dist/cli/commands/deps.js +98 -0
- package/dist/cli/commands/deps.js.map +1 -0
- package/dist/cli/commands/detect-drift.d.ts +15 -0
- package/dist/cli/commands/detect-drift.d.ts.map +1 -0
- package/dist/cli/commands/detect-drift.js +428 -0
- package/dist/cli/commands/detect-drift.js.map +1 -0
- package/dist/cli/commands/detect.d.ts +13 -0
- package/dist/cli/commands/detect.d.ts.map +1 -0
- package/dist/cli/commands/detect.js +20 -0
- package/dist/cli/commands/detect.js.map +1 -0
- package/dist/cli/commands/diagnostics.d.ts +16 -0
- package/dist/cli/commands/diagnostics.d.ts.map +1 -0
- package/dist/cli/commands/diagnostics.js +58 -0
- package/dist/cli/commands/diagnostics.js.map +1 -0
- package/dist/cli/commands/docs.d.ts +13 -0
- package/dist/cli/commands/docs.d.ts.map +1 -0
- package/dist/cli/commands/docs.js +169 -0
- package/dist/cli/commands/docs.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +15 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +133 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/dynamic.d.ts +24 -0
- package/dist/cli/commands/dynamic.d.ts.map +1 -0
- package/dist/cli/commands/dynamic.js +27 -0
- package/dist/cli/commands/dynamic.js.map +1 -0
- package/dist/cli/commands/env.d.ts +12 -0
- package/dist/cli/commands/env.d.ts.map +1 -0
- package/dist/cli/commands/env.js +44 -0
- package/dist/cli/commands/env.js.map +1 -0
- package/dist/cli/commands/exists.d.ts +24 -0
- package/dist/cli/commands/exists.d.ts.map +1 -0
- package/dist/cli/commands/exists.js +53 -0
- package/dist/cli/commands/exists.js.map +1 -0
- package/dist/cli/commands/export-tasks.d.ts +10 -0
- package/dist/cli/commands/export-tasks.d.ts.map +1 -0
- package/dist/cli/commands/export-tasks.js +47 -0
- package/dist/cli/commands/export-tasks.js.map +1 -0
- package/dist/cli/commands/export.d.ts +9 -0
- package/dist/cli/commands/export.d.ts.map +1 -0
- package/dist/cli/commands/export.js +46 -0
- package/dist/cli/commands/export.js.map +1 -0
- package/dist/cli/commands/find.d.ts +14 -0
- package/dist/cli/commands/find.d.ts.map +1 -0
- package/dist/cli/commands/find.js +152 -0
- package/dist/cli/commands/find.js.map +1 -0
- package/dist/cli/commands/generate-changelog.d.ts +14 -0
- package/dist/cli/commands/generate-changelog.d.ts.map +1 -0
- package/dist/cli/commands/generate-changelog.js +252 -0
- package/dist/cli/commands/generate-changelog.js.map +1 -0
- package/dist/cli/commands/grade.d.ts +13 -0
- package/dist/cli/commands/grade.d.ts.map +1 -0
- package/dist/cli/commands/grade.js +26 -0
- package/dist/cli/commands/grade.js.map +1 -0
- package/dist/cli/commands/history.d.ts +9 -0
- package/dist/cli/commands/history.d.ts.map +1 -0
- package/dist/cli/commands/history.js +33 -0
- package/dist/cli/commands/history.js.map +1 -0
- package/dist/cli/commands/implementation.d.ts +13 -0
- package/dist/cli/commands/implementation.d.ts.map +1 -0
- package/dist/cli/commands/implementation.js +41 -0
- package/dist/cli/commands/implementation.js.map +1 -0
- package/dist/cli/commands/import-tasks.d.ts +10 -0
- package/dist/cli/commands/import-tasks.d.ts.map +1 -0
- package/dist/cli/commands/import-tasks.js +38 -0
- package/dist/cli/commands/import-tasks.js.map +1 -0
- package/dist/cli/commands/import.d.ts +9 -0
- package/dist/cli/commands/import.d.ts.map +1 -0
- package/dist/cli/commands/import.js +28 -0
- package/dist/cli/commands/import.js.map +1 -0
- package/dist/cli/commands/init.d.ts +34 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +96 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/inject.d.ts +8 -0
- package/dist/cli/commands/inject.d.ts.map +1 -0
- package/dist/cli/commands/inject.js +28 -0
- package/dist/cli/commands/inject.js.map +1 -0
- package/dist/cli/commands/intelligence.d.ts +22 -0
- package/dist/cli/commands/intelligence.d.ts.map +1 -0
- package/dist/cli/commands/intelligence.js +72 -0
- package/dist/cli/commands/intelligence.js.map +1 -0
- package/dist/cli/commands/issue.d.ts +17 -0
- package/dist/cli/commands/issue.d.ts.map +1 -0
- package/dist/cli/commands/issue.js +107 -0
- package/dist/cli/commands/issue.js.map +1 -0
- package/dist/cli/commands/labels.d.ts +17 -0
- package/dist/cli/commands/labels.d.ts.map +1 -0
- package/dist/cli/commands/labels.js +48 -0
- package/dist/cli/commands/labels.js.map +1 -0
- package/dist/cli/commands/lifecycle.d.ts +8 -0
- package/dist/cli/commands/lifecycle.d.ts.map +1 -0
- package/dist/cli/commands/lifecycle.js +128 -0
- package/dist/cli/commands/lifecycle.js.map +1 -0
- package/dist/cli/commands/list.d.ts +14 -0
- package/dist/cli/commands/list.d.ts.map +1 -0
- package/dist/cli/commands/list.js +143 -0
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/log.d.ts +12 -0
- package/dist/cli/commands/log.d.ts.map +1 -0
- package/dist/cli/commands/log.js +30 -0
- package/dist/cli/commands/log.js.map +1 -0
- package/dist/cli/commands/map.d.ts +10 -0
- package/dist/cli/commands/map.d.ts.map +1 -0
- package/dist/cli/commands/map.js +23 -0
- package/dist/cli/commands/map.js.map +1 -0
- package/dist/cli/commands/memory-brain.d.ts +15 -0
- package/dist/cli/commands/memory-brain.d.ts.map +1 -0
- package/dist/cli/commands/memory-brain.js +436 -0
- package/dist/cli/commands/memory-brain.js.map +1 -0
- package/dist/cli/commands/migrate-claude-mem.d.ts +23 -0
- package/dist/cli/commands/migrate-claude-mem.d.ts.map +1 -0
- package/dist/cli/commands/migrate-claude-mem.js +79 -0
- package/dist/cli/commands/migrate-claude-mem.js.map +1 -0
- package/dist/cli/commands/next.d.ts +9 -0
- package/dist/cli/commands/next.d.ts.map +1 -0
- package/dist/cli/commands/next.js +20 -0
- package/dist/cli/commands/next.js.map +1 -0
- package/dist/cli/commands/nexus.d.ts +20 -0
- package/dist/cli/commands/nexus.d.ts.map +1 -0
- package/dist/cli/commands/nexus.js +2290 -0
- package/dist/cli/commands/nexus.js.map +1 -0
- package/dist/cli/commands/observe.d.ts +13 -0
- package/dist/cli/commands/observe.d.ts.map +1 -0
- package/dist/cli/commands/observe.js +30 -0
- package/dist/cli/commands/observe.js.map +1 -0
- package/dist/cli/commands/ops.d.ts +10 -0
- package/dist/cli/commands/ops.d.ts.map +1 -0
- package/dist/cli/commands/ops.js +19 -0
- package/dist/cli/commands/ops.js.map +1 -0
- package/dist/cli/commands/orchestrate.d.ts +24 -0
- package/dist/cli/commands/orchestrate.d.ts.map +1 -0
- package/dist/cli/commands/orchestrate.js +254 -0
- package/dist/cli/commands/orchestrate.js.map +1 -0
- package/dist/cli/commands/otel.d.ts +12 -0
- package/dist/cli/commands/otel.d.ts.map +1 -0
- package/dist/cli/commands/otel.js +128 -0
- package/dist/cli/commands/otel.js.map +1 -0
- package/dist/cli/commands/phase.d.ts +12 -0
- package/dist/cli/commands/phase.d.ts.map +1 -0
- package/dist/cli/commands/phase.js +91 -0
- package/dist/cli/commands/phase.js.map +1 -0
- package/dist/cli/commands/phases.d.ts +14 -0
- package/dist/cli/commands/phases.d.ts.map +1 -0
- package/dist/cli/commands/phases.js +42 -0
- package/dist/cli/commands/phases.js.map +1 -0
- package/dist/cli/commands/plan.d.ts +8 -0
- package/dist/cli/commands/plan.d.ts.map +1 -0
- package/dist/cli/commands/plan.js +15 -0
- package/dist/cli/commands/plan.js.map +1 -0
- package/dist/cli/commands/promote.d.ts +11 -0
- package/dist/cli/commands/promote.d.ts.map +1 -0
- package/dist/cli/commands/promote.js +18 -0
- package/dist/cli/commands/promote.js.map +1 -0
- package/dist/cli/commands/provider.d.ts +21 -0
- package/dist/cli/commands/provider.d.ts.map +1 -0
- package/dist/cli/commands/provider.js +88 -0
- package/dist/cli/commands/provider.js.map +1 -0
- package/dist/cli/commands/reason.d.ts +36 -0
- package/dist/cli/commands/reason.d.ts.map +1 -0
- package/dist/cli/commands/reason.js +85 -0
- package/dist/cli/commands/reason.js.map +1 -0
- package/dist/cli/commands/refresh-memory.d.ts +9 -0
- package/dist/cli/commands/refresh-memory.d.ts.map +1 -0
- package/dist/cli/commands/refresh-memory.js +24 -0
- package/dist/cli/commands/refresh-memory.js.map +1 -0
- package/dist/cli/commands/relates.d.ts +12 -0
- package/dist/cli/commands/relates.d.ts.map +1 -0
- package/dist/cli/commands/relates.js +53 -0
- package/dist/cli/commands/relates.js.map +1 -0
- package/dist/cli/commands/release.d.ts +8 -0
- package/dist/cli/commands/release.d.ts.map +1 -0
- package/dist/cli/commands/release.js +82 -0
- package/dist/cli/commands/release.js.map +1 -0
- package/dist/cli/commands/remote.d.ts +12 -0
- package/dist/cli/commands/remote.d.ts.map +1 -0
- package/dist/cli/commands/remote.js +207 -0
- package/dist/cli/commands/remote.js.map +1 -0
- package/dist/cli/commands/reorder.d.ts +17 -0
- package/dist/cli/commands/reorder.d.ts.map +1 -0
- package/dist/cli/commands/reorder.js +41 -0
- package/dist/cli/commands/reorder.js.map +1 -0
- package/dist/cli/commands/reparent.d.ts +10 -0
- package/dist/cli/commands/reparent.d.ts.map +1 -0
- package/dist/cli/commands/reparent.js +19 -0
- package/dist/cli/commands/reparent.js.map +1 -0
- package/dist/cli/commands/research.d.ts +8 -0
- package/dist/cli/commands/research.d.ts.map +1 -0
- package/dist/cli/commands/research.js +164 -0
- package/dist/cli/commands/research.js.map +1 -0
- package/dist/cli/commands/restore.d.ts +54 -0
- package/dist/cli/commands/restore.d.ts.map +1 -0
- package/dist/cli/commands/restore.js +470 -0
- package/dist/cli/commands/restore.js.map +1 -0
- package/dist/cli/commands/roadmap.d.ts +14 -0
- package/dist/cli/commands/roadmap.d.ts.map +1 -0
- package/dist/cli/commands/roadmap.js +26 -0
- package/dist/cli/commands/roadmap.js.map +1 -0
- package/dist/cli/commands/safestop.d.ts +14 -0
- package/dist/cli/commands/safestop.d.ts.map +1 -0
- package/dist/cli/commands/safestop.js +32 -0
- package/dist/cli/commands/safestop.js.map +1 -0
- package/dist/cli/commands/schema.d.ts +27 -0
- package/dist/cli/commands/schema.d.ts.map +1 -0
- package/dist/cli/commands/schema.js +160 -0
- package/dist/cli/commands/schema.js.map +1 -0
- package/dist/cli/commands/self-update.d.ts +15 -0
- package/dist/cli/commands/self-update.d.ts.map +1 -0
- package/dist/cli/commands/self-update.js +363 -0
- package/dist/cli/commands/self-update.js.map +1 -0
- package/dist/cli/commands/sequence.d.ts +11 -0
- package/dist/cli/commands/sequence.d.ts.map +1 -0
- package/dist/cli/commands/sequence.js +40 -0
- package/dist/cli/commands/sequence.js.map +1 -0
- package/dist/cli/commands/session.d.ts +12 -0
- package/dist/cli/commands/session.d.ts.map +1 -0
- package/dist/cli/commands/session.js +219 -0
- package/dist/cli/commands/session.js.map +1 -0
- package/dist/cli/commands/show.d.ts +13 -0
- package/dist/cli/commands/show.d.ts.map +1 -0
- package/dist/cli/commands/show.js +40 -0
- package/dist/cli/commands/show.js.map +1 -0
- package/dist/cli/commands/skills.d.ts +13 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +161 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/snapshot.d.ts +9 -0
- package/dist/cli/commands/snapshot.d.ts.map +1 -0
- package/dist/cli/commands/snapshot.js +50 -0
- package/dist/cli/commands/snapshot.js.map +1 -0
- package/dist/cli/commands/specification.d.ts +13 -0
- package/dist/cli/commands/specification.d.ts.map +1 -0
- package/dist/cli/commands/specification.js +45 -0
- package/dist/cli/commands/specification.js.map +1 -0
- package/dist/cli/commands/start.d.ts +13 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +20 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/stats.d.ts +12 -0
- package/dist/cli/commands/stats.d.ts.map +1 -0
- package/dist/cli/commands/stats.js +35 -0
- package/dist/cli/commands/stats.js.map +1 -0
- package/dist/cli/commands/sticky.d.ts +16 -0
- package/dist/cli/commands/sticky.d.ts.map +1 -0
- package/dist/cli/commands/sticky.js +218 -0
- package/dist/cli/commands/sticky.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +13 -0
- package/dist/cli/commands/stop.d.ts.map +1 -0
- package/dist/cli/commands/stop.js +20 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/commands/sync.d.ts +26 -0
- package/dist/cli/commands/sync.d.ts.map +1 -0
- package/dist/cli/commands/sync.js +82 -0
- package/dist/cli/commands/sync.js.map +1 -0
- package/dist/cli/commands/testing.d.ts +13 -0
- package/dist/cli/commands/testing.d.ts.map +1 -0
- package/dist/cli/commands/testing.js +65 -0
- package/dist/cli/commands/testing.js.map +1 -0
- package/dist/cli/commands/token.d.ts +10 -0
- package/dist/cli/commands/token.d.ts.map +1 -0
- package/dist/cli/commands/token.js +135 -0
- package/dist/cli/commands/token.js.map +1 -0
- package/dist/cli/commands/update.d.ts +12 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +83 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/commands/upgrade.d.ts +18 -0
- package/dist/cli/commands/upgrade.d.ts.map +1 -0
- package/dist/cli/commands/upgrade.js +103 -0
- package/dist/cli/commands/upgrade.js.map +1 -0
- package/dist/cli/commands/validate.d.ts +12 -0
- package/dist/cli/commands/validate.d.ts.map +1 -0
- package/dist/cli/commands/validate.js +24 -0
- package/dist/cli/commands/validate.js.map +1 -0
- package/dist/cli/commands/verify.d.ts +8 -0
- package/dist/cli/commands/verify.d.ts.map +1 -0
- package/dist/cli/commands/verify.js +28 -0
- package/dist/cli/commands/verify.js.map +1 -0
- package/dist/cli/commands/web.d.ts +19 -0
- package/dist/cli/commands/web.d.ts.map +1 -0
- package/dist/cli/commands/web.js +371 -0
- package/dist/cli/commands/web.js.map +1 -0
- package/dist/cli/field-context.d.ts +32 -0
- package/dist/cli/field-context.d.ts.map +1 -0
- package/dist/cli/field-context.js +47 -0
- package/dist/cli/field-context.js.map +1 -0
- package/dist/cli/format-context.d.ts +32 -0
- package/dist/cli/format-context.d.ts.map +1 -0
- package/dist/cli/format-context.js +50 -0
- package/dist/cli/format-context.js.map +1 -0
- package/dist/cli/help-generator.d.ts +74 -0
- package/dist/cli/help-generator.d.ts.map +1 -0
- package/dist/cli/help-generator.js +229 -0
- package/dist/cli/help-generator.js.map +1 -0
- package/dist/cli/help-renderer.d.ts +28 -0
- package/dist/cli/help-renderer.d.ts.map +1 -0
- package/dist/cli/help-renderer.js +301 -0
- package/dist/cli/help-renderer.js.map +1 -0
- package/dist/cli/index.d.ts +9 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/logger-bootstrap.d.ts +6 -0
- package/dist/cli/logger-bootstrap.d.ts.map +1 -0
- package/dist/cli/logger-bootstrap.js +10 -0
- package/dist/cli/logger-bootstrap.js.map +1 -0
- package/dist/cli/middleware/output-format.d.ts +30 -0
- package/dist/cli/middleware/output-format.d.ts.map +1 -0
- package/dist/cli/middleware/output-format.js +35 -0
- package/dist/cli/middleware/output-format.js.map +1 -0
- package/dist/cli/progress.d.ts +84 -0
- package/dist/cli/progress.d.ts.map +1 -0
- package/dist/cli/progress.js +169 -0
- package/dist/cli/progress.js.map +1 -0
- package/dist/cli/renderers/colors.d.ts +32 -0
- package/dist/cli/renderers/colors.d.ts.map +1 -0
- package/dist/cli/renderers/colors.js +141 -0
- package/dist/cli/renderers/colors.js.map +1 -0
- package/dist/cli/renderers/error.d.ts +13 -0
- package/dist/cli/renderers/error.d.ts.map +1 -0
- package/dist/cli/renderers/error.js +42 -0
- package/dist/cli/renderers/error.js.map +1 -0
- package/dist/cli/renderers/index.d.ts +87 -0
- package/dist/cli/renderers/index.d.ts.map +1 -0
- package/dist/cli/renderers/index.js +262 -0
- package/dist/cli/renderers/index.js.map +1 -0
- package/dist/cli/renderers/lafs-validator.d.ts +91 -0
- package/dist/cli/renderers/lafs-validator.d.ts.map +1 -0
- package/dist/cli/renderers/lafs-validator.js +176 -0
- package/dist/cli/renderers/lafs-validator.js.map +1 -0
- package/dist/cli/renderers/normalizer.d.ts +21 -0
- package/dist/cli/renderers/normalizer.d.ts.map +1 -0
- package/dist/cli/renderers/normalizer.js +106 -0
- package/dist/cli/renderers/normalizer.js.map +1 -0
- package/dist/cli/renderers/system.d.ts +25 -0
- package/dist/cli/renderers/system.d.ts.map +1 -0
- package/dist/cli/renderers/system.js +416 -0
- package/dist/cli/renderers/system.js.map +1 -0
- package/dist/cli/renderers/tasks.d.ts +28 -0
- package/dist/cli/renderers/tasks.d.ts.map +1 -0
- package/dist/cli/renderers/tasks.js +306 -0
- package/dist/cli/renderers/tasks.js.map +1 -0
- package/dist/dispatch/adapters/cli.d.ts +67 -0
- package/dist/dispatch/adapters/cli.d.ts.map +1 -0
- package/dist/dispatch/adapters/cli.js +331 -0
- package/dist/dispatch/adapters/cli.js.map +1 -0
- package/dist/dispatch/context/session-context.d.ts +54 -0
- package/dist/dispatch/context/session-context.d.ts.map +1 -0
- package/dist/dispatch/context/session-context.js +61 -0
- package/dist/dispatch/context/session-context.js.map +1 -0
- package/dist/dispatch/dispatcher.d.ts +23 -0
- package/dist/dispatch/dispatcher.d.ts.map +1 -0
- package/dist/dispatch/dispatcher.js +84 -0
- package/dist/dispatch/dispatcher.js.map +1 -0
- package/dist/dispatch/domains/_base.d.ts +59 -0
- package/dist/dispatch/domains/_base.d.ts.map +1 -0
- package/dist/dispatch/domains/_base.js +77 -0
- package/dist/dispatch/domains/_base.js.map +1 -0
- package/dist/dispatch/domains/_meta.d.ts +23 -0
- package/dist/dispatch/domains/_meta.d.ts.map +1 -0
- package/dist/dispatch/domains/_meta.js +25 -0
- package/dist/dispatch/domains/_meta.js.map +1 -0
- package/dist/dispatch/domains/_routing.d.ts +8 -0
- package/dist/dispatch/domains/_routing.d.ts.map +1 -0
- package/dist/dispatch/domains/_routing.js +20 -0
- package/dist/dispatch/domains/_routing.js.map +1 -0
- package/dist/dispatch/domains/admin.d.ts +25 -0
- package/dist/dispatch/domains/admin.d.ts.map +1 -0
- package/dist/dispatch/domains/admin.js +791 -0
- package/dist/dispatch/domains/admin.js.map +1 -0
- package/dist/dispatch/domains/check.d.ts +22 -0
- package/dist/dispatch/domains/check.d.ts.map +1 -0
- package/dist/dispatch/domains/check.js +381 -0
- package/dist/dispatch/domains/check.js.map +1 -0
- package/dist/dispatch/domains/conduit.d.ts +38 -0
- package/dist/dispatch/domains/conduit.d.ts.map +1 -0
- package/dist/dispatch/domains/conduit.js +360 -0
- package/dist/dispatch/domains/conduit.js.map +1 -0
- package/dist/dispatch/domains/diagnostics.d.ts +20 -0
- package/dist/dispatch/domains/diagnostics.d.ts.map +1 -0
- package/dist/dispatch/domains/diagnostics.js +77 -0
- package/dist/dispatch/domains/diagnostics.js.map +1 -0
- package/dist/dispatch/domains/index.d.ts +29 -0
- package/dist/dispatch/domains/index.d.ts.map +1 -0
- package/dist/dispatch/domains/index.js +45 -0
- package/dist/dispatch/domains/index.js.map +1 -0
- package/dist/dispatch/domains/intelligence.d.ts +26 -0
- package/dist/dispatch/domains/intelligence.d.ts.map +1 -0
- package/dist/dispatch/domains/intelligence.js +154 -0
- package/dist/dispatch/domains/intelligence.js.map +1 -0
- package/dist/dispatch/domains/memory.d.ts +22 -0
- package/dist/dispatch/domains/memory.d.ts.map +1 -0
- package/dist/dispatch/domains/memory.js +387 -0
- package/dist/dispatch/domains/memory.js.map +1 -0
- package/dist/dispatch/domains/nexus.d.ts +22 -0
- package/dist/dispatch/domains/nexus.d.ts.map +1 -0
- package/dist/dispatch/domains/nexus.js +286 -0
- package/dist/dispatch/domains/nexus.js.map +1 -0
- package/dist/dispatch/domains/orchestrate.d.ts +26 -0
- package/dist/dispatch/domains/orchestrate.d.ts.map +1 -0
- package/dist/dispatch/domains/orchestrate.js +691 -0
- package/dist/dispatch/domains/orchestrate.js.map +1 -0
- package/dist/dispatch/domains/pipeline.d.ts +35 -0
- package/dist/dispatch/domains/pipeline.d.ts.map +1 -0
- package/dist/dispatch/domains/pipeline.js +593 -0
- package/dist/dispatch/domains/pipeline.js.map +1 -0
- package/dist/dispatch/domains/session.d.ts +22 -0
- package/dist/dispatch/domains/session.d.ts.map +1 -0
- package/dist/dispatch/domains/session.js +267 -0
- package/dist/dispatch/domains/session.js.map +1 -0
- package/dist/dispatch/domains/sticky.d.ts +20 -0
- package/dist/dispatch/domains/sticky.d.ts.map +1 -0
- package/dist/dispatch/domains/sticky.js +167 -0
- package/dist/dispatch/domains/sticky.js.map +1 -0
- package/dist/dispatch/domains/tasks.d.ts +25 -0
- package/dist/dispatch/domains/tasks.d.ts.map +1 -0
- package/dist/dispatch/domains/tasks.js +368 -0
- package/dist/dispatch/domains/tasks.js.map +1 -0
- package/dist/dispatch/domains/tools.d.ts +37 -0
- package/dist/dispatch/domains/tools.d.ts.map +1 -0
- package/dist/dispatch/domains/tools.js +481 -0
- package/dist/dispatch/domains/tools.js.map +1 -0
- package/dist/dispatch/engines/_error.d.ts +119 -0
- package/dist/dispatch/engines/_error.d.ts.map +1 -0
- package/dist/dispatch/engines/_error.js +298 -0
- package/dist/dispatch/engines/_error.js.map +1 -0
- package/dist/dispatch/engines/code-engine.d.ts +18 -0
- package/dist/dispatch/engines/code-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/code-engine.js +71 -0
- package/dist/dispatch/engines/code-engine.js.map +1 -0
- package/dist/dispatch/engines/codebase-map-engine.d.ts +31 -0
- package/dist/dispatch/engines/codebase-map-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/codebase-map-engine.js +43 -0
- package/dist/dispatch/engines/codebase-map-engine.js.map +1 -0
- package/dist/dispatch/engines/config-engine.d.ts +32 -0
- package/dist/dispatch/engines/config-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/config-engine.js +70 -0
- package/dist/dispatch/engines/config-engine.js.map +1 -0
- package/dist/dispatch/engines/diagnostics-engine.d.ts +57 -0
- package/dist/dispatch/engines/diagnostics-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/diagnostics-engine.js +163 -0
- package/dist/dispatch/engines/diagnostics-engine.js.map +1 -0
- package/dist/dispatch/engines/hooks-engine.d.ts +96 -0
- package/dist/dispatch/engines/hooks-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/hooks-engine.js +144 -0
- package/dist/dispatch/engines/hooks-engine.js.map +1 -0
- package/dist/dispatch/engines/init-engine.d.ts +56 -0
- package/dist/dispatch/engines/init-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/init-engine.js +78 -0
- package/dist/dispatch/engines/init-engine.js.map +1 -0
- package/dist/dispatch/engines/lifecycle-engine.d.ts +66 -0
- package/dist/dispatch/engines/lifecycle-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/lifecycle-engine.js +224 -0
- package/dist/dispatch/engines/lifecycle-engine.js.map +1 -0
- package/dist/dispatch/engines/memory-engine.d.ts +10 -0
- package/dist/dispatch/engines/memory-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/memory-engine.js +10 -0
- package/dist/dispatch/engines/memory-engine.js.map +1 -0
- package/dist/dispatch/engines/nexus-engine.d.ts +167 -0
- package/dist/dispatch/engines/nexus-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/nexus-engine.js +356 -0
- package/dist/dispatch/engines/nexus-engine.js.map +1 -0
- package/dist/dispatch/engines/orchestrate-engine.d.ts +141 -0
- package/dist/dispatch/engines/orchestrate-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/orchestrate-engine.js +892 -0
- package/dist/dispatch/engines/orchestrate-engine.js.map +1 -0
- package/dist/dispatch/engines/pipeline-engine.d.ts +51 -0
- package/dist/dispatch/engines/pipeline-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/pipeline-engine.js +191 -0
- package/dist/dispatch/engines/pipeline-engine.js.map +1 -0
- package/dist/dispatch/engines/release-engine.d.ts +94 -0
- package/dist/dispatch/engines/release-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/release-engine.js +763 -0
- package/dist/dispatch/engines/release-engine.js.map +1 -0
- package/dist/dispatch/engines/session-engine.d.ts +387 -0
- package/dist/dispatch/engines/session-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/session-engine.js +924 -0
- package/dist/dispatch/engines/session-engine.js.map +1 -0
- package/dist/dispatch/engines/sticky-engine.d.ts +100 -0
- package/dist/dispatch/engines/sticky-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/sticky-engine.js +181 -0
- package/dist/dispatch/engines/sticky-engine.js.map +1 -0
- package/dist/dispatch/engines/system-engine.d.ts +543 -0
- package/dist/dispatch/engines/system-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/system-engine.js +1273 -0
- package/dist/dispatch/engines/system-engine.js.map +1 -0
- package/dist/dispatch/engines/task-engine.d.ts +971 -0
- package/dist/dispatch/engines/task-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/task-engine.js +1255 -0
- package/dist/dispatch/engines/task-engine.js.map +1 -0
- package/dist/dispatch/engines/template-parser.d.ts +85 -0
- package/dist/dispatch/engines/template-parser.d.ts.map +1 -0
- package/dist/dispatch/engines/template-parser.js +108 -0
- package/dist/dispatch/engines/template-parser.js.map +1 -0
- package/dist/dispatch/engines/tools-engine.d.ts +270 -0
- package/dist/dispatch/engines/tools-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/tools-engine.js +663 -0
- package/dist/dispatch/engines/tools-engine.js.map +1 -0
- package/dist/dispatch/engines/validate-engine.d.ts +218 -0
- package/dist/dispatch/engines/validate-engine.d.ts.map +1 -0
- package/dist/dispatch/engines/validate-engine.js +737 -0
- package/dist/dispatch/engines/validate-engine.js.map +1 -0
- package/dist/dispatch/index.d.ts +20 -0
- package/dist/dispatch/index.d.ts.map +1 -0
- package/dist/dispatch/index.js +19 -0
- package/dist/dispatch/index.js.map +1 -0
- package/dist/dispatch/lib/background-jobs.d.ts +86 -0
- package/dist/dispatch/lib/background-jobs.d.ts.map +1 -0
- package/dist/dispatch/lib/background-jobs.js +183 -0
- package/dist/dispatch/lib/background-jobs.js.map +1 -0
- package/dist/dispatch/lib/budget.d.ts +36 -0
- package/dist/dispatch/lib/budget.d.ts.map +1 -0
- package/dist/dispatch/lib/budget.js +109 -0
- package/dist/dispatch/lib/budget.js.map +1 -0
- package/dist/dispatch/lib/capability-matrix.d.ts +11 -0
- package/dist/dispatch/lib/capability-matrix.d.ts.map +1 -0
- package/dist/dispatch/lib/capability-matrix.js +10 -0
- package/dist/dispatch/lib/capability-matrix.js.map +1 -0
- package/dist/dispatch/lib/config-loader.d.ts +42 -0
- package/dist/dispatch/lib/config-loader.d.ts.map +1 -0
- package/dist/dispatch/lib/config-loader.js +217 -0
- package/dist/dispatch/lib/config-loader.js.map +1 -0
- package/dist/dispatch/lib/config.d.ts +11 -0
- package/dist/dispatch/lib/config.d.ts.map +1 -0
- package/dist/dispatch/lib/config.js +10 -0
- package/dist/dispatch/lib/config.js.map +1 -0
- package/dist/dispatch/lib/defaults.d.ts +115 -0
- package/dist/dispatch/lib/defaults.d.ts.map +1 -0
- package/dist/dispatch/lib/defaults.js +61 -0
- package/dist/dispatch/lib/defaults.js.map +1 -0
- package/dist/dispatch/lib/engine.d.ts +26 -0
- package/dist/dispatch/lib/engine.d.ts.map +1 -0
- package/dist/dispatch/lib/engine.js +46 -0
- package/dist/dispatch/lib/engine.js.map +1 -0
- package/dist/dispatch/lib/exit-codes.d.ts +35 -0
- package/dist/dispatch/lib/exit-codes.d.ts.map +1 -0
- package/dist/dispatch/lib/exit-codes.js +60 -0
- package/dist/dispatch/lib/exit-codes.js.map +1 -0
- package/dist/dispatch/lib/gateway-meta.d.ts +37 -0
- package/dist/dispatch/lib/gateway-meta.d.ts.map +1 -0
- package/dist/dispatch/lib/gateway-meta.js +50 -0
- package/dist/dispatch/lib/gateway-meta.js.map +1 -0
- package/dist/dispatch/lib/job-manager-accessor.d.ts +9 -0
- package/dist/dispatch/lib/job-manager-accessor.d.ts.map +1 -0
- package/dist/dispatch/lib/job-manager-accessor.js +13 -0
- package/dist/dispatch/lib/job-manager-accessor.js.map +1 -0
- package/dist/dispatch/lib/meta.d.ts +26 -0
- package/dist/dispatch/lib/meta.d.ts.map +1 -0
- package/dist/dispatch/lib/meta.js +37 -0
- package/dist/dispatch/lib/meta.js.map +1 -0
- package/dist/dispatch/lib/param-utils.d.ts +11 -0
- package/dist/dispatch/lib/param-utils.d.ts.map +1 -0
- package/dist/dispatch/lib/param-utils.js +10 -0
- package/dist/dispatch/lib/param-utils.js.map +1 -0
- package/dist/dispatch/lib/projections.d.ts +56 -0
- package/dist/dispatch/lib/projections.d.ts.map +1 -0
- package/dist/dispatch/lib/projections.js +65 -0
- package/dist/dispatch/lib/projections.js.map +1 -0
- package/dist/dispatch/lib/proto-envelope.d.ts +56 -0
- package/dist/dispatch/lib/proto-envelope.d.ts.map +1 -0
- package/dist/dispatch/lib/proto-envelope.js +17 -0
- package/dist/dispatch/lib/proto-envelope.js.map +1 -0
- package/dist/dispatch/lib/schema-utils.d.ts +39 -0
- package/dist/dispatch/lib/schema-utils.d.ts.map +1 -0
- package/dist/dispatch/lib/schema-utils.js +88 -0
- package/dist/dispatch/lib/schema-utils.js.map +1 -0
- package/dist/dispatch/lib/security.d.ts +11 -0
- package/dist/dispatch/lib/security.d.ts.map +1 -0
- package/dist/dispatch/lib/security.js +10 -0
- package/dist/dispatch/lib/security.js.map +1 -0
- package/dist/dispatch/middleware/audit.d.ts +23 -0
- package/dist/dispatch/middleware/audit.d.ts.map +1 -0
- package/dist/dispatch/middleware/audit.js +169 -0
- package/dist/dispatch/middleware/audit.js.map +1 -0
- package/dist/dispatch/middleware/field-filter.d.ts +25 -0
- package/dist/dispatch/middleware/field-filter.d.ts.map +1 -0
- package/dist/dispatch/middleware/field-filter.js +70 -0
- package/dist/dispatch/middleware/field-filter.js.map +1 -0
- package/dist/dispatch/middleware/pipeline.d.ts +33 -0
- package/dist/dispatch/middleware/pipeline.d.ts.map +1 -0
- package/dist/dispatch/middleware/pipeline.js +60 -0
- package/dist/dispatch/middleware/pipeline.js.map +1 -0
- package/dist/dispatch/middleware/projection.d.ts +35 -0
- package/dist/dispatch/middleware/projection.d.ts.map +1 -0
- package/dist/dispatch/middleware/projection.js +146 -0
- package/dist/dispatch/middleware/projection.js.map +1 -0
- package/dist/dispatch/middleware/protocol-enforcement.d.ts +30 -0
- package/dist/dispatch/middleware/protocol-enforcement.d.ts.map +1 -0
- package/dist/dispatch/middleware/protocol-enforcement.js +56 -0
- package/dist/dispatch/middleware/protocol-enforcement.js.map +1 -0
- package/dist/dispatch/middleware/rate-limiter.d.ts +72 -0
- package/dist/dispatch/middleware/rate-limiter.d.ts.map +1 -0
- package/dist/dispatch/middleware/rate-limiter.js +127 -0
- package/dist/dispatch/middleware/rate-limiter.js.map +1 -0
- package/dist/dispatch/middleware/sanitizer.d.ts +24 -0
- package/dist/dispatch/middleware/sanitizer.d.ts.map +1 -0
- package/dist/dispatch/middleware/sanitizer.js +56 -0
- package/dist/dispatch/middleware/sanitizer.js.map +1 -0
- package/dist/dispatch/middleware/session-resolver.d.ts +26 -0
- package/dist/dispatch/middleware/session-resolver.d.ts.map +1 -0
- package/dist/dispatch/middleware/session-resolver.js +65 -0
- package/dist/dispatch/middleware/session-resolver.js.map +1 -0
- package/dist/dispatch/middleware/telemetry.d.ts +21 -0
- package/dist/dispatch/middleware/telemetry.d.ts.map +1 -0
- package/dist/dispatch/middleware/telemetry.js +50 -0
- package/dist/dispatch/middleware/telemetry.js.map +1 -0
- package/dist/dispatch/middleware/verification-gates.d.ts +22 -0
- package/dist/dispatch/middleware/verification-gates.d.ts.map +1 -0
- package/dist/dispatch/middleware/verification-gates.js +59 -0
- package/dist/dispatch/middleware/verification-gates.js.map +1 -0
- package/dist/dispatch/registry.d.ts +91 -0
- package/dist/dispatch/registry.d.ts.map +1 -0
- package/dist/dispatch/registry.js +3535 -0
- package/dist/dispatch/registry.js.map +1 -0
- package/dist/dispatch/types.d.ts +206 -0
- package/dist/dispatch/types.d.ts.map +1 -0
- package/dist/dispatch/types.js +27 -0
- package/dist/dispatch/types.js.map +1 -0
- package/package.json +8 -8
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI web command - manage CLEO Web UI server lifecycle.
|
|
3
|
+
* Ported from scripts/web.sh
|
|
4
|
+
* @task T4551 / T623
|
|
5
|
+
* @epic T4545
|
|
6
|
+
*
|
|
7
|
+
* Persistence model:
|
|
8
|
+
* - `detached: true` + `unref()` decouples from parent shell
|
|
9
|
+
* - stdio routed to log files enables recovery after terminal close
|
|
10
|
+
* - Atomic PID file writes prevent corrupt state
|
|
11
|
+
* - Signal handlers trigger graceful shutdown
|
|
12
|
+
*/
|
|
13
|
+
import { execFileSync, spawn } from 'node:child_process';
|
|
14
|
+
import { mkdir, open, readFile, rm, stat, writeFile } from 'node:fs/promises';
|
|
15
|
+
import { join } from 'node:path';
|
|
16
|
+
import { ExitCode } from '@cleocode/contracts';
|
|
17
|
+
import { CleoError, formatError, getCleoHome } from '@cleocode/core';
|
|
18
|
+
import { cliOutput } from '../renderers/index.js';
|
|
19
|
+
const DEFAULT_PORT = 3456;
|
|
20
|
+
const DEFAULT_HOST = '127.0.0.1';
|
|
21
|
+
/**
|
|
22
|
+
* Get web server file paths.
|
|
23
|
+
* @task T4551
|
|
24
|
+
*/
|
|
25
|
+
function getWebPaths() {
|
|
26
|
+
const cleoHome = getCleoHome();
|
|
27
|
+
return {
|
|
28
|
+
pidFile: join(cleoHome, 'web-server.pid'),
|
|
29
|
+
configFile: join(cleoHome, 'web-server.json'),
|
|
30
|
+
logDir: join(cleoHome, 'logs'),
|
|
31
|
+
logFile: join(cleoHome, 'logs', 'web-server.log'),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Check if a process is running by PID.
|
|
36
|
+
* @task T4551
|
|
37
|
+
*/
|
|
38
|
+
function isProcessRunning(pid) {
|
|
39
|
+
try {
|
|
40
|
+
process.kill(pid, 0);
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Get server status.
|
|
49
|
+
* @task T4551
|
|
50
|
+
*/
|
|
51
|
+
async function getStatus() {
|
|
52
|
+
const { pidFile, configFile } = getWebPaths();
|
|
53
|
+
try {
|
|
54
|
+
const pidStr = (await readFile(pidFile, 'utf-8')).trim();
|
|
55
|
+
const pid = parseInt(pidStr, 10);
|
|
56
|
+
if (Number.isNaN(pid) || !isProcessRunning(pid)) {
|
|
57
|
+
return { running: false, pid: null, port: null, host: null, url: null };
|
|
58
|
+
}
|
|
59
|
+
let port = DEFAULT_PORT;
|
|
60
|
+
let host = DEFAULT_HOST;
|
|
61
|
+
try {
|
|
62
|
+
const config = JSON.parse(await readFile(configFile, 'utf-8'));
|
|
63
|
+
port = config.port ?? DEFAULT_PORT;
|
|
64
|
+
host = config.host ?? DEFAULT_HOST;
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
// Use defaults
|
|
68
|
+
}
|
|
69
|
+
return { running: true, pid, port, host, url: `http://${host}:${port}` };
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return { running: false, pid: null, port: null, host: null, url: null };
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Register the web command.
|
|
77
|
+
* @task T4551
|
|
78
|
+
*/
|
|
79
|
+
export function registerWebCommand(program) {
|
|
80
|
+
const webCmd = program.command('web').description('Manage CLEO Web UI server');
|
|
81
|
+
webCmd
|
|
82
|
+
.command('start')
|
|
83
|
+
.description('Start the web server')
|
|
84
|
+
.option('--port <port>', 'Server port', String(DEFAULT_PORT))
|
|
85
|
+
.option('--host <host>', 'Server host', DEFAULT_HOST)
|
|
86
|
+
.action(async (opts) => {
|
|
87
|
+
try {
|
|
88
|
+
const port = parseInt(opts['port'], 10);
|
|
89
|
+
const host = opts['host'];
|
|
90
|
+
const { pidFile, configFile, logFile, logDir } = getWebPaths();
|
|
91
|
+
// Check if already running
|
|
92
|
+
const status = await getStatus();
|
|
93
|
+
if (status.running) {
|
|
94
|
+
throw new CleoError(ExitCode.GENERAL_ERROR, `Server already running (PID: ${status.pid})`);
|
|
95
|
+
}
|
|
96
|
+
// Resolve CLEO Studio server location.
|
|
97
|
+
// The studio package builds to packages/studio/build/index.js (adapter-node output).
|
|
98
|
+
// CLEO_STUDIO_DIR env var allows overriding for testing / custom installs.
|
|
99
|
+
const projectRoot = process.env['CLEO_ROOT'] ?? process.cwd();
|
|
100
|
+
const studioDir = process.env['CLEO_STUDIO_DIR'] ?? join(projectRoot, 'packages', 'studio', 'build');
|
|
101
|
+
// Ensure log directory exists
|
|
102
|
+
await mkdir(logDir, { recursive: true });
|
|
103
|
+
// Save config
|
|
104
|
+
await writeFile(configFile, JSON.stringify({
|
|
105
|
+
port,
|
|
106
|
+
host,
|
|
107
|
+
startedAt: new Date().toISOString(),
|
|
108
|
+
}));
|
|
109
|
+
// Check if studio server is built
|
|
110
|
+
const webIndexPath = join(studioDir, 'index.js');
|
|
111
|
+
try {
|
|
112
|
+
await stat(webIndexPath);
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
// Need to build the studio package
|
|
116
|
+
try {
|
|
117
|
+
execFileSync('pnpm', ['--filter', '@cleocode/studio', 'run', 'build'], {
|
|
118
|
+
cwd: projectRoot,
|
|
119
|
+
stdio: 'ignore',
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
throw new CleoError(ExitCode.GENERAL_ERROR, `Studio build failed. Run: pnpm --filter @cleocode/studio run build\nLogs: ${logFile}`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
// Open log file for stdio redirection (O_CREAT | O_APPEND)
|
|
127
|
+
const logFileHandle = await open(logFile, 'a');
|
|
128
|
+
// Start studio server (adapter-node uses HOST/PORT env vars)
|
|
129
|
+
const serverProcess = spawn('node', [webIndexPath], {
|
|
130
|
+
cwd: studioDir,
|
|
131
|
+
env: {
|
|
132
|
+
...process.env,
|
|
133
|
+
HOST: host,
|
|
134
|
+
PORT: String(port),
|
|
135
|
+
// Pass CLEO paths through to the studio server
|
|
136
|
+
CLEO_ROOT: projectRoot,
|
|
137
|
+
},
|
|
138
|
+
detached: true,
|
|
139
|
+
stdio: ['ignore', logFileHandle.fd, logFileHandle.fd],
|
|
140
|
+
});
|
|
141
|
+
// Detach from parent process so server continues after terminal closes
|
|
142
|
+
serverProcess.unref();
|
|
143
|
+
// Atomically write PID file to ensure clean state
|
|
144
|
+
// Write to temp file first, then rename for atomicity
|
|
145
|
+
const pidFileTmp = `${pidFile}.tmp`;
|
|
146
|
+
await writeFile(pidFileTmp, String(serverProcess.pid));
|
|
147
|
+
await rm(pidFile, { force: true });
|
|
148
|
+
// Rename is atomic on POSIX; on Windows this is close enough
|
|
149
|
+
await writeFile(pidFile, String(serverProcess.pid));
|
|
150
|
+
await rm(pidFileTmp, { force: true });
|
|
151
|
+
// Close file handle in parent process
|
|
152
|
+
await logFileHandle.close();
|
|
153
|
+
// Wait for server to respond
|
|
154
|
+
const maxAttempts = 30;
|
|
155
|
+
let started = false;
|
|
156
|
+
for (let i = 0; i < maxAttempts; i++) {
|
|
157
|
+
try {
|
|
158
|
+
const response = await fetch(`http://${host}:${port}/api/health`);
|
|
159
|
+
if (response.ok) {
|
|
160
|
+
started = true;
|
|
161
|
+
break;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
catch {
|
|
165
|
+
// Not ready yet
|
|
166
|
+
}
|
|
167
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
168
|
+
}
|
|
169
|
+
if (!started) {
|
|
170
|
+
try {
|
|
171
|
+
process.kill(serverProcess.pid);
|
|
172
|
+
}
|
|
173
|
+
catch {
|
|
174
|
+
/* ignore */
|
|
175
|
+
}
|
|
176
|
+
await rm(pidFile, { force: true });
|
|
177
|
+
throw new CleoError(ExitCode.GENERAL_ERROR, 'Server failed to start within 15 seconds');
|
|
178
|
+
}
|
|
179
|
+
cliOutput({
|
|
180
|
+
pid: serverProcess.pid,
|
|
181
|
+
port,
|
|
182
|
+
host,
|
|
183
|
+
url: `http://${host}:${port}`,
|
|
184
|
+
logFile,
|
|
185
|
+
}, { command: 'web', message: `CLEO Web UI running on port ${port}` });
|
|
186
|
+
}
|
|
187
|
+
catch (err) {
|
|
188
|
+
if (err instanceof CleoError) {
|
|
189
|
+
console.error(formatError(err));
|
|
190
|
+
process.exit(err.code);
|
|
191
|
+
}
|
|
192
|
+
throw err;
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
webCmd
|
|
196
|
+
.command('stop')
|
|
197
|
+
.description('Stop the web server')
|
|
198
|
+
.action(async () => {
|
|
199
|
+
try {
|
|
200
|
+
const { pidFile } = getWebPaths();
|
|
201
|
+
const status = await getStatus();
|
|
202
|
+
if (!status.running || !status.pid) {
|
|
203
|
+
// Clean up stale PID file
|
|
204
|
+
await rm(pidFile, { force: true });
|
|
205
|
+
cliOutput({ running: false }, { command: 'web', message: 'Server is not running' });
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
// Graceful shutdown (cross-platform): 30s grace period before force kill
|
|
209
|
+
try {
|
|
210
|
+
if (process.platform === 'win32') {
|
|
211
|
+
spawn('taskkill', ['/PID', String(status.pid), '/T'], { stdio: 'ignore' });
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
process.kill(status.pid, 'SIGTERM');
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
catch {
|
|
218
|
+
/* ignore */
|
|
219
|
+
}
|
|
220
|
+
// Wait for exit (SIGTERM grace period: 30s per studio's SHUTDOWN_TIMEOUT)
|
|
221
|
+
for (let i = 0; i < 60; i++) {
|
|
222
|
+
if (!isProcessRunning(status.pid))
|
|
223
|
+
break;
|
|
224
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
225
|
+
}
|
|
226
|
+
// Force kill if still running after grace period
|
|
227
|
+
if (isProcessRunning(status.pid)) {
|
|
228
|
+
try {
|
|
229
|
+
if (process.platform === 'win32') {
|
|
230
|
+
spawn('taskkill', ['/PID', String(status.pid), '/F', '/T'], { stdio: 'ignore' });
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
process.kill(status.pid, 'SIGKILL');
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
catch {
|
|
237
|
+
/* ignore */
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
await rm(pidFile, { force: true });
|
|
241
|
+
cliOutput({ stopped: true }, { command: 'web', message: 'CLEO Web UI stopped' });
|
|
242
|
+
}
|
|
243
|
+
catch (err) {
|
|
244
|
+
if (err instanceof CleoError) {
|
|
245
|
+
console.error(formatError(err));
|
|
246
|
+
process.exit(err.code);
|
|
247
|
+
}
|
|
248
|
+
throw err;
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
webCmd
|
|
252
|
+
.command('restart')
|
|
253
|
+
.description('Restart the web server')
|
|
254
|
+
.option('--port <port>', 'Server port', String(DEFAULT_PORT))
|
|
255
|
+
.option('--host <host>', 'Server host', DEFAULT_HOST)
|
|
256
|
+
.action(async (opts) => {
|
|
257
|
+
try {
|
|
258
|
+
const { pidFile } = getWebPaths();
|
|
259
|
+
const status = await getStatus();
|
|
260
|
+
// Stop if running
|
|
261
|
+
if (status.running && status.pid) {
|
|
262
|
+
try {
|
|
263
|
+
if (process.platform === 'win32') {
|
|
264
|
+
spawn('taskkill', ['/PID', String(status.pid), '/T'], { stdio: 'ignore' });
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
process.kill(status.pid, 'SIGTERM');
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
catch {
|
|
271
|
+
/* ignore */
|
|
272
|
+
}
|
|
273
|
+
// Wait for exit
|
|
274
|
+
for (let i = 0; i < 60; i++) {
|
|
275
|
+
if (!isProcessRunning(status.pid))
|
|
276
|
+
break;
|
|
277
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
278
|
+
}
|
|
279
|
+
// Force kill if still running
|
|
280
|
+
if (isProcessRunning(status.pid)) {
|
|
281
|
+
try {
|
|
282
|
+
if (process.platform === 'win32') {
|
|
283
|
+
spawn('taskkill', ['/PID', String(status.pid), '/F', '/T'], { stdio: 'ignore' });
|
|
284
|
+
}
|
|
285
|
+
else {
|
|
286
|
+
process.kill(status.pid, 'SIGKILL');
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
catch {
|
|
290
|
+
/* ignore */
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
await rm(pidFile, { force: true });
|
|
294
|
+
}
|
|
295
|
+
// Start with provided options
|
|
296
|
+
const port = opts['port'] ?? String(DEFAULT_PORT);
|
|
297
|
+
const host = opts['host'] ?? DEFAULT_HOST;
|
|
298
|
+
// Trigger start command by calling its action directly.
|
|
299
|
+
// Cast: commander shim's action handler accepts the registered options object.
|
|
300
|
+
const startOpts = { port, host };
|
|
301
|
+
const startCmd = webCmd.commands.find((c) => c.name() === 'start');
|
|
302
|
+
const startAction = startCmd?.action;
|
|
303
|
+
if (startAction) {
|
|
304
|
+
await startAction(startOpts);
|
|
305
|
+
}
|
|
306
|
+
else {
|
|
307
|
+
throw new CleoError(ExitCode.GENERAL_ERROR, 'Could not restart server');
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
catch (err) {
|
|
311
|
+
if (err instanceof CleoError) {
|
|
312
|
+
console.error(formatError(err));
|
|
313
|
+
process.exit(err.code);
|
|
314
|
+
}
|
|
315
|
+
throw err;
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
webCmd
|
|
319
|
+
.command('status')
|
|
320
|
+
.description('Check server status')
|
|
321
|
+
.action(async () => {
|
|
322
|
+
try {
|
|
323
|
+
const status = await getStatus();
|
|
324
|
+
cliOutput(status, { command: 'web' });
|
|
325
|
+
}
|
|
326
|
+
catch (err) {
|
|
327
|
+
if (err instanceof CleoError) {
|
|
328
|
+
console.error(formatError(err));
|
|
329
|
+
process.exit(err.code);
|
|
330
|
+
}
|
|
331
|
+
throw err;
|
|
332
|
+
}
|
|
333
|
+
});
|
|
334
|
+
webCmd
|
|
335
|
+
.command('open')
|
|
336
|
+
.description('Open browser to the UI')
|
|
337
|
+
.action(async () => {
|
|
338
|
+
try {
|
|
339
|
+
const status = await getStatus();
|
|
340
|
+
if (!status.running || !status.url) {
|
|
341
|
+
throw new CleoError(ExitCode.GENERAL_ERROR, 'Web server is not running. Start with: cleo web start');
|
|
342
|
+
}
|
|
343
|
+
// Try to open browser
|
|
344
|
+
const url = status.url;
|
|
345
|
+
const platform = process.platform;
|
|
346
|
+
try {
|
|
347
|
+
if (platform === 'linux') {
|
|
348
|
+
spawn('xdg-open', [url], { detached: true, stdio: 'ignore' }).unref();
|
|
349
|
+
}
|
|
350
|
+
else if (platform === 'darwin') {
|
|
351
|
+
spawn('open', [url], { detached: true, stdio: 'ignore' }).unref();
|
|
352
|
+
}
|
|
353
|
+
else if (platform === 'win32') {
|
|
354
|
+
spawn('cmd', ['/c', 'start', '', url], { detached: true, stdio: 'ignore' }).unref();
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
catch {
|
|
358
|
+
// Can't open browser — user can open manually
|
|
359
|
+
}
|
|
360
|
+
cliOutput({ url }, { command: 'web', message: `Open browser to: ${url}` });
|
|
361
|
+
}
|
|
362
|
+
catch (err) {
|
|
363
|
+
if (err instanceof CleoError) {
|
|
364
|
+
console.error(formatError(err));
|
|
365
|
+
process.exit(err.code);
|
|
366
|
+
}
|
|
367
|
+
throw err;
|
|
368
|
+
}
|
|
369
|
+
});
|
|
370
|
+
}
|
|
371
|
+
//# sourceMappingURL=web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/cli/commands/web.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI field extraction context.
|
|
3
|
+
*
|
|
4
|
+
* Singleton that holds the resolved field extraction options for the current
|
|
5
|
+
* CLI invocation. Set once in the Commander.js preAction hook; read by
|
|
6
|
+
* dispatchFromCli() to apply field filtering and MVI control universally
|
|
7
|
+
* across all commands.
|
|
8
|
+
*
|
|
9
|
+
* Delegates to @cleocode/lafs v1.5.0 resolveFieldExtraction()
|
|
10
|
+
* for canonical conflict detection, flag parsing, and type resolution.
|
|
11
|
+
* Mirrors the format-context.ts pattern for --json/--human/--quiet.
|
|
12
|
+
*
|
|
13
|
+
* @epic T4953
|
|
14
|
+
* @task T4979
|
|
15
|
+
*/
|
|
16
|
+
import { type FieldExtractionResolution } from '@cleocode/lafs';
|
|
17
|
+
export type { FieldExtractionResolution as FieldContext };
|
|
18
|
+
/**
|
|
19
|
+
* Set the field extraction context for this CLI invocation.
|
|
20
|
+
* Called once from the preAction hook in src/cli/index.ts.
|
|
21
|
+
*/
|
|
22
|
+
export declare function setFieldContext(ctx: FieldExtractionResolution): void;
|
|
23
|
+
/**
|
|
24
|
+
* Get the current field extraction context.
|
|
25
|
+
*/
|
|
26
|
+
export declare function getFieldContext(): FieldExtractionResolution;
|
|
27
|
+
/**
|
|
28
|
+
* Parse global field options from Commander.js parsed opts and resolve via
|
|
29
|
+
* the canonical LAFS SDK resolver (conflict detection, type narrowing).
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveFieldContext(opts: Record<string, unknown>): FieldExtractionResolution;
|
|
32
|
+
//# sourceMappingURL=field-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-context.d.ts","sourceRoot":"","sources":["../../src/cli/field-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,yBAAyB,EAE/B,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,yBAAyB,IAAI,YAAY,EAAE,CAAC;AAQ1D;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,yBAAyB,GAAG,IAAI,CAEpE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,yBAAyB,CAE3D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,yBAAyB,CAO5F"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI field extraction context.
|
|
3
|
+
*
|
|
4
|
+
* Singleton that holds the resolved field extraction options for the current
|
|
5
|
+
* CLI invocation. Set once in the Commander.js preAction hook; read by
|
|
6
|
+
* dispatchFromCli() to apply field filtering and MVI control universally
|
|
7
|
+
* across all commands.
|
|
8
|
+
*
|
|
9
|
+
* Delegates to @cleocode/lafs v1.5.0 resolveFieldExtraction()
|
|
10
|
+
* for canonical conflict detection, flag parsing, and type resolution.
|
|
11
|
+
* Mirrors the format-context.ts pattern for --json/--human/--quiet.
|
|
12
|
+
*
|
|
13
|
+
* @epic T4953
|
|
14
|
+
* @task T4979
|
|
15
|
+
*/
|
|
16
|
+
import { resolveFieldExtraction, } from '@cleocode/lafs';
|
|
17
|
+
let currentContext = {
|
|
18
|
+
mvi: 'minimal',
|
|
19
|
+
mviSource: 'default',
|
|
20
|
+
expectsCustomMvi: false,
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Set the field extraction context for this CLI invocation.
|
|
24
|
+
* Called once from the preAction hook in src/cli/index.ts.
|
|
25
|
+
*/
|
|
26
|
+
export function setFieldContext(ctx) {
|
|
27
|
+
currentContext = ctx;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Get the current field extraction context.
|
|
31
|
+
*/
|
|
32
|
+
export function getFieldContext() {
|
|
33
|
+
return currentContext;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Parse global field options from Commander.js parsed opts and resolve via
|
|
37
|
+
* the canonical LAFS SDK resolver (conflict detection, type narrowing).
|
|
38
|
+
*/
|
|
39
|
+
export function resolveFieldContext(opts) {
|
|
40
|
+
const input = {
|
|
41
|
+
fieldFlag: typeof opts['field'] === 'string' ? opts['field'] : undefined,
|
|
42
|
+
fieldsFlag: typeof opts['fields'] === 'string' ? opts['fields'] : undefined,
|
|
43
|
+
mviFlag: typeof opts['mvi'] === 'string' ? opts['mvi'] : undefined,
|
|
44
|
+
};
|
|
45
|
+
return resolveFieldExtraction(input);
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=field-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-context.js","sourceRoot":"","sources":["../../src/cli/field-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAIxB,IAAI,cAAc,GAA8B;IAC9C,GAAG,EAAE,SAAS;IACd,SAAS,EAAE,SAAS;IACpB,gBAAgB,EAAE,KAAK;CACxB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAA8B;IAC5D,cAAc,GAAG,GAAG,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAA6B;IAC/D,MAAM,KAAK,GAAyB;QAClC,SAAS,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;QACxE,UAAU,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3E,OAAO,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;KACnE,CAAC;IACF,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI output format resolution context.
|
|
3
|
+
*
|
|
4
|
+
* Singleton that holds the resolved output format for the current CLI invocation.
|
|
5
|
+
* Set once in the Commander.js preAction hook; read by cliOutput() and renderers.
|
|
6
|
+
*
|
|
7
|
+
* @task T4665
|
|
8
|
+
* @epic T4663
|
|
9
|
+
*/
|
|
10
|
+
import type { FlagResolution } from '@cleocode/lafs';
|
|
11
|
+
/**
|
|
12
|
+
* Set the resolved format for this CLI invocation.
|
|
13
|
+
* Called once from the preAction hook in src/cli/index.ts.
|
|
14
|
+
*/
|
|
15
|
+
export declare function setFormatContext(resolution: FlagResolution): void;
|
|
16
|
+
/**
|
|
17
|
+
* Get the current resolved format.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getFormatContext(): FlagResolution;
|
|
20
|
+
/**
|
|
21
|
+
* Check if output should be JSON format.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isJsonFormat(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Check if output should be human-readable format.
|
|
26
|
+
*/
|
|
27
|
+
export declare function isHumanFormat(): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Check if quiet mode is enabled (suppress non-essential output).
|
|
30
|
+
*/
|
|
31
|
+
export declare function isQuiet(): boolean;
|
|
32
|
+
//# sourceMappingURL=format-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-context.d.ts","sourceRoot":"","sources":["../../src/cli/format-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAYrD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAEjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,cAAc,CAEjD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,OAAO,CAEjC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI output format resolution context.
|
|
3
|
+
*
|
|
4
|
+
* Singleton that holds the resolved output format for the current CLI invocation.
|
|
5
|
+
* Set once in the Commander.js preAction hook; read by cliOutput() and renderers.
|
|
6
|
+
*
|
|
7
|
+
* @task T4665
|
|
8
|
+
* @epic T4663
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Current resolved format for this CLI invocation.
|
|
12
|
+
* Defaults to JSON (agent-first) until resolved by preAction hook.
|
|
13
|
+
*/
|
|
14
|
+
let currentResolution = {
|
|
15
|
+
format: 'json',
|
|
16
|
+
source: 'default',
|
|
17
|
+
quiet: false,
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Set the resolved format for this CLI invocation.
|
|
21
|
+
* Called once from the preAction hook in src/cli/index.ts.
|
|
22
|
+
*/
|
|
23
|
+
export function setFormatContext(resolution) {
|
|
24
|
+
currentResolution = resolution;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get the current resolved format.
|
|
28
|
+
*/
|
|
29
|
+
export function getFormatContext() {
|
|
30
|
+
return currentResolution;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Check if output should be JSON format.
|
|
34
|
+
*/
|
|
35
|
+
export function isJsonFormat() {
|
|
36
|
+
return currentResolution.format === 'json';
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Check if output should be human-readable format.
|
|
40
|
+
*/
|
|
41
|
+
export function isHumanFormat() {
|
|
42
|
+
return currentResolution.format === 'human';
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Check if quiet mode is enabled (suppress non-essential output).
|
|
46
|
+
*/
|
|
47
|
+
export function isQuiet() {
|
|
48
|
+
return currentResolution.quiet;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=format-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-context.js","sourceRoot":"","sources":["../../src/cli/format-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;;GAGG;AACH,IAAI,iBAAiB,GAAmB;IACtC,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,KAAK;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAA0B;IACzD,iBAAiB,GAAG,UAAU,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,iBAAiB,CAAC,MAAM,KAAK,MAAM,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,iBAAiB,CAAC,MAAM,KAAK,OAAO,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO;IACrB,OAAO,iBAAiB,CAAC,KAAK,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ParamDef-driven Commander help generator.
|
|
3
|
+
*
|
|
4
|
+
* Provides two functions:
|
|
5
|
+
* - `buildOperationHelp()` — emits a multi-section help string (Description,
|
|
6
|
+
* USAGE, ARGUMENTS, OPTIONS, PRECONDITIONS) from a ParamDef array and the
|
|
7
|
+
* static LAFS gate table.
|
|
8
|
+
* - `applyParamDefsToCommand()` — replaces hand-written `.option()` chains on
|
|
9
|
+
* a ShimCommand with generated calls derived from the same ParamDef array.
|
|
10
|
+
*
|
|
11
|
+
* Both functions read exactly the same source of truth that the dispatch
|
|
12
|
+
* registry and `cleo schema` use, eliminating the duplication that caused
|
|
13
|
+
* missing enum values, absent required indicators, and hidden gate docs.
|
|
14
|
+
*
|
|
15
|
+
* Gate lookup uses `describeOperation()` from `@cleocode/lafs`, which is the
|
|
16
|
+
* public API over the static LAFS gate table in `operation-gates.ts`.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
* @epic T335
|
|
20
|
+
* @task T339
|
|
21
|
+
*/
|
|
22
|
+
import type { ParamDef } from '../dispatch/types.js';
|
|
23
|
+
import type { ShimCommand } from './commander-shim.js';
|
|
24
|
+
/**
|
|
25
|
+
* Build a multi-section Commander-compatible help string from a ParamDef
|
|
26
|
+
* array and the static LAFS gate table.
|
|
27
|
+
*
|
|
28
|
+
* Sections emitted:
|
|
29
|
+
* - `Description:` — one-line operation summary
|
|
30
|
+
* - `USAGE:` — positional args listed in required/optional angle/square brackets
|
|
31
|
+
* - `ARGUMENTS:` — positional params with descriptions (omitted when none)
|
|
32
|
+
* - `OPTIONS:` — flag params with type, enum values, and required indicator
|
|
33
|
+
* - `PRECONDITIONS:` — gates sourced from `packages/lafs/src/operation-gates.ts`
|
|
34
|
+
* via `describeOperation()` (omitted when the gate table has no entry for
|
|
35
|
+
* this operation key)
|
|
36
|
+
* - `Examples:` — pre-canned examples for the five seeded operations
|
|
37
|
+
*
|
|
38
|
+
* @param operationKey - Fully-qualified operation key, e.g. `"tasks.add"`.
|
|
39
|
+
* @param description - One-line summary of the operation.
|
|
40
|
+
* @param params - ParamDef array for the operation.
|
|
41
|
+
* @returns Multi-line help string.
|
|
42
|
+
*/
|
|
43
|
+
export declare function buildOperationHelp(operationKey: string, description: string, params: readonly ParamDef[]): string;
|
|
44
|
+
/**
|
|
45
|
+
* Register Commander options and positional arguments on a ShimCommand from
|
|
46
|
+
* a ParamDef array.
|
|
47
|
+
*
|
|
48
|
+
* Replaces hand-written `.option(...)` chains with a single call.
|
|
49
|
+
*
|
|
50
|
+
* Handles:
|
|
51
|
+
* - Positional args (`cli.positional === true`) → `.argument()`
|
|
52
|
+
* - Short aliases (`cli.short`) → `-s, --flag <type>`
|
|
53
|
+
* - Flag name overrides (`cli.flag`) → `--custom-flag`
|
|
54
|
+
* - Boolean flags (type === `'boolean'`) → no value placeholder
|
|
55
|
+
* - Custom parse functions (`cli.parse`) → forwarded to `.option()`
|
|
56
|
+
* - Enum constraints surfaced in the option description
|
|
57
|
+
* - Required vs optional indicators appended to the description
|
|
58
|
+
*
|
|
59
|
+
* **Note:** The caller is still responsible for the `.action(...)` callback
|
|
60
|
+
* because action bodies are command-specific and cannot be auto-generated.
|
|
61
|
+
*
|
|
62
|
+
* **Hybrid pattern:** Some commands keep hand-written `.option()` calls after
|
|
63
|
+
* this call for options that have no ParamDef entry (e.g. `--dry-run`,
|
|
64
|
+
* `--field`, `--format`, `--desc`). That is intentional — those options are
|
|
65
|
+
* CLI-surface-only and do not belong in the dispatch registry.
|
|
66
|
+
*
|
|
67
|
+
* @param command - The ShimCommand returned by `.command(nameAndArgs)`.
|
|
68
|
+
* @param params - The ParamDef array for this operation.
|
|
69
|
+
* @param operationKey - `"tasks.add"` etc. Reserved for future hook or tracing
|
|
70
|
+
* use; currently not mutated on the shim since ShimCommand has no first-class
|
|
71
|
+
* help-text override API.
|
|
72
|
+
*/
|
|
73
|
+
export declare function applyParamDefsToCommand(command: ShimCommand, params: readonly ParamDef[], operationKey: string): void;
|
|
74
|
+
//# sourceMappingURL=help-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-generator.d.ts","sourceRoot":"","sources":["../../src/cli/help-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAsEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,SAAS,QAAQ,EAAE,GAC1B,MAAM,CAwFR;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,SAAS,QAAQ,EAAE,EAC3B,YAAY,EAAE,MAAM,GACnB,IAAI,CAmCN"}
|