CLISchema
Runtime descriptor for the CLI program.
Stores the program name, version, description, and registered command schemas.
Sealed by createCLISchema and rebuilt by each CLIBuilder step.
- Import:
@kjanat/dreamcli - Export kind: interface
- Declared in:
src/core/cli/index.ts - Source link:
src/core/cli/index.ts:149
Signatures
interface CLISchema {}Members
Properties
[schemaBrand]
Type-only seal produced by createCLISchema.
[schemaBrand]: "cli";builtins
Which built-in flags the root still owns.
Every built-in starts 'on'. Set via the .builtins() builder method or the builtins field of CLIDefinition; a built-in set to 'off' releases its tokens to the commands.
builtins: Builtins;commands
Schemas of the registered commands, in registration order.
commands: readonly CommandSchema[];completionsFlag
Eager --completions <shell> flag configuration.
Set when .completions({ as: 'flag' }) is used instead of the default completions subcommand. When defined, the planner intercepts --completions <shell> before dispatch, prints the script, and exits; root help advertises the flag in its Flags: section.
completionsFlag: CompletionsFlagConfig | undefined;configSettings
Config discovery settings.
When defined, .run() auto-discovers and loads a config file before command dispatch.
Set via the .config() builder method.
configSettings: ConfigSettings | undefined;defaultCommand
Schema of the default command dispatched when no subcommand matches.
When set, the CLI root behaves like a hybrid command group: subcommands dispatch by name as usual, but empty argv or flags-only argv falls through to this command instead of showing root help.
Set via the .default() builder method or the defaultCommand field of CLIDefinition.
defaultCommand: CommandSchema | undefined;defaultCommandRouted
Whether the default command is also exposed as a named top-level route.
Set by .default(cmd, { route: true }). When true, mycli <name> dispatches to the default command (in addition to the bare/flags-only root surface behavior) and the command is listed in the root Commands: section. When false (the default), the default is the root surface only.
defaultCommandRouted: boolean;description
Program description (shown in root help).
description: string | undefined;envPrefix
CLI-wide environment namespace prepended to every relative env binding (undefined when none is set). .env('TOKEN') reads <envPrefix>TOKEN; a binding declared with { absolute: true } is read as written.
Set via the .envPrefix() builder method or the envPrefix field of CLIDefinition. Fixed when declared, so neither manifest name inference nor an inherited invocation name changes it.
envPrefix: string | undefined;flagSettings
Flag-parsing behavior settings (ParseOptions).
Set via the cli(name, { flags }) / cli({ flags }) factory forms.
flagSettings: ParseOptions | undefined;hasBuiltInCompletions
Whether built-in .completions() registration (command or flag) is active.
hasBuiltInCompletions: boolean;helpConfig
Consumer-configured root-help defaults.
Set via the .help() builder method and merged under runtime options.help (runtime wins) before rendering.
helpConfig: HelpConfig | undefined;helpLinks
OSC 8 hyperlink targets for the root-help header (name/version).
Set via the .links() builder method. Fields left undefined are derived from manifest metadata (repository / homepage) when manifest discovery (.manifest()) is active.
helpLinks: HelpLinks | undefined;inheritName
Whether .run() should replace name with the invoked program name.
Set via the cli({ inherit: true }) factory form.
inheritName: boolean;name
Program name (used in help text, usage lines, and completion scripts).
name: string;packageJsonSettings
Manifest auto-discovery settings. When defined, .run() discovers the nearest manifest (package.json, deno.json, jsr.json, …) and merges metadata before dispatch.
Set via the .manifest() builder method.
packageJsonSettings: ResolvedManifestSettings | undefined;version
Program version (shown by --version).
version: string | undefined;