SheetXL - v0.8.0-beta.9+sites.210.e2d420901
    Preparing search index...

    Interface Param

    One argument of a tool, in the canonical (camelCase) form.

    Surfaces rename mechanically and never by hand: a flag surface kebab-cases (ignoreCase → --ignore-case), a schema surface passes the name through. A surface that needs a different name is declaring a divergence, and there is nowhere to put one.

    interface Param {
        alias?: string;
        defaultValue?: unknown;
        description: string;
        name: string;
        positional?: number;
        required?: boolean;
        type: ParamType;
        valueOptional?: boolean;
        values?: readonly string[];
    }
    Index
    alias?: string

    Terminal affordance: single-character alias (-i).

    defaultValue?: unknown

    Applied by the tool, not by the adapter.

    Adapters must not inject defaults — if two surfaces default differently the capability has silently diverged, which is the whole failure this package exists to prevent.

    description: string

    One line, agent-facing, English.

    name: string

    Canonical camelCase name.

    positional?: number

    Terminal affordance: register as a positional argument at this index rather than a flag.

    Schema surfaces ignore this — their arguments are all named. Positional order is a terminal convenience, not part of the capability.

    required?: boolean
    type: ParamType
    valueOptional?: boolean

    The flag's value may be omitted (--context vs --context table).

    The bare form reaches the tool as true, and the tool — never the adapter — decides what true means, for the same reason adapters must not inject defaults. On a schema surface this is the union of boolean and the enum.

    values?: readonly string[]

    Allowed values for enum / enum[].