kubb generate
Run kubb generate to read your kubb.config.ts and run the code-generation pipeline. It's the default command, so running kubb with no arguments does the same.
Usage
Generate from the input set in your config:
shell
kubb generatePass an input file to override the config:
shell
kubb generate ./petStore.yamlArguments
| Argument | Description |
|---|---|
[input] | Optional path or URL to a Swagger/OpenAPI document. Overrides the input set in the config. |
Options
| Option | Default | Description |
|---|---|---|
--config=<path>, -c <path> | Path to a config file, such as ./kubb.staging.ts. | |
--logLevel=<silent|info|verbose>, -l | info | Set the verbosity. Use verbose to see plugin timings. |
--silent, -s | false | Force logLevel to silent. Suppresses output. |
--verbose | false | Force logLevel to verbose. Shows slow plugins. |
--reporter=<cli|json|file> | Pick which reporters to trigger, comma separated. Defaults to cli. | |
--watch, -w | false | Re-run the pipeline whenever the input spec changes. |
--dryRun | false | Preview a run without writing files, formatting, linting, or running post-generate commands. |
--reporter takes no short flag.
Reporters
A reporter decides how a run is rendered. The config registers available reporters with reporters. --reporter picks which ones to trigger by name, comma separated (--reporter cli,file). Three ship out of the box.
| Reporter | Output |
|---|---|
cli | The end-of-run summary in the terminal. This runs when you pass no flag. Renders as plain text, without spinners or progress bars, when there is no interactive terminal or when an AI coding agent runs the command. |
json | A machine-readable report on stdout for CI. See Diagnostics for the full JSON shape. |
file | The run's diagnostics, written to .kubb/kubb[-<name>]-<timestamp>.log. The <name> segment is dropped when the config has no name. |
Write a log file:
shell
kubb generate --reporter filePrint a JSON report for CI. The exit code is non-zero on any error:
shell
kubb generate --reporter jsonExamples
Run with a custom config:
shell
kubb generate --config ./kubb.staging.tsWatch the spec and regenerate on every change:
shell
kubb generate --watchRun with verbose plugin timings:
shell
kubb generate --verbosePreview a run without touching disk:
shell
kubb generate --dryRunSee also
- Configuration: full reference for
kubb.config.ts - Basic usage: end-to-end walkthrough
- Plugins: available plugins for code generation