Skip to content

arg

Positional argument schema factory.

Entry point for defining args on a command. Use arg.<kind>() to create an ArgBuilder, then chain modifiers and pass the result to command().arg(name, builder).

Four kinds are available:

  • arg.string() — raw string (most common)

  • arg.number() — parsed to number, errors on NaN

  • arg.enum(values) — constrained to listed literals

  • arg.custom(fn) — arbitrary parse function, infers return type

  • Import: @kjanat/dreamcli

  • Export kind: constant

  • Declared in: src/core/schema/arg.ts

  • Source link: packages/dreamcli/src/core/schema/arg.ts:668

Signatures

ts
const arg: ArgFactory;

Examples

ts
import { command, arg } from '@kjanat/dreamcli';

command('deploy')
  .arg('target', arg.string().env('DEPLOY_TARGET').describe('Where to deploy'))
  .arg('port', arg.number().env('PORT').default(3000))
  .action(({ args }) => {
    console.log(`Deploying to ${args.target} on port ${args.port}`);
  });

// $ mycli deploy production 8080    → target='production', port=8080
// $ DEPLOY_TARGET=staging mycli deploy → target='staging', port=3000

See Also

Released under the MIT License.