UNPKG

@lunora/cli

Version:

The Lunora CLI: init, dev, deploy, codegen, migrate, seed, doctor, insights, logs, registry, and the rest of the project commands

32 lines (31 loc) • 1.74 kB
/** Every command name the CLI registers (drives the `CommandName` type + tests). */ declare const COMMANDS: readonly ["init", "add", "dev", "codegen", "build", "deploy", "prepare", "link", "cloudflare", "logs", "run", "insights", "profile", "reset", "migrate", "export", "import", "seed", "shards", "backup", "eval", "verify", "info", "doctor", "env", "analyze", "view", "docs", "registry", "rules", "mcp", "workflow"]; type CommandName = (typeof COMMANDS)[number]; declare const VERSION: string; /** * Every registered command's name. A superset of {@link COMMANDS}, which is the * user-facing list driving "did you mean …?" suggestions — `advisor`, * `introspect`, `version` and `completion` are all reachable but deliberately * absent from it. Exported so the help-rendering guard covers what is actually * reachable, not what is advertised. */ declare const REGISTERED_COMMAND_NAMES: ReadonlyArray<string>; interface RunCliOptions { argv?: ReadonlyArray<string>; cwd?: string; /** * Inject a console-like logger so callers (tests) can capture cerebro's * help / version / usage rendering AND the commands' own output. Omitted in * production, where cerebro uses its default stdout/stderr logger and the * commands log through the shared pail. */ logger?: Console; } /** * Run the CLI and resolve to the process exit code. cerebro handles help, * version, usage, and unknown commands (the latter throws, caught here as 1). * `shouldExitProcess: false` keeps the process alive so callers/tests read the * captured exit code. */ declare const runCli: (options?: RunCliOptions) => Promise<number>; export { COMMANDS, type CommandName, REGISTERED_COMMAND_NAMES, type RunCliOptions, VERSION, runCli };