Redocly CLI toolset
Redocly CLI (fka OpenAPI CLI) toolbox with rich validation and bundling features.
Currently, @redocly/cli supports these features:
- Multi-file validation. No need to bundle your file before validation.
- Lightning-fast validation. Lint a 1 MB file in less than one second.
- Built-in rules for common validations.
- Configurable severity levels for each rule.
- Human-readable error messages with codeframes and stylish format options.
- Intuitive suggestions for misspelled types or references.
- Easy to implement custom rules.
- Bundle a multi-file definition into a single file.
- Decorators to modify a validated definition during bundling.
- Preview docs for local development.
- Support for OpenAPI 2 (fka Swagger) and OpenAPI 3.0.
- Basic support for OpenAPI 3.1
What makes this tool different
💨It's faster (uses a type tree similar to how linters for programming languages work) 🎯It's more accurate (working with types is more accurate than working with JSON path) ⚙️It's highly configurable (comes with a lot of commands and rules) 🛠️It's more extensible (architected for custom plugins and types)
npx @redocly/cli lint path-to-root-file.yaml
Alternatively, install it globally with
npm install @redocly/cli -g
Then you can use it as
redocly [command] [options], for example:
redocly lint path-to-root-file.yaml
To give the Docker container access to the OpenAPI definition files, you need to mount the containing directory as a volume. Assuming the OAS definition is rooted in the current working directory, you need the following command:
docker run --rm -v $PWD:/spec redocly/openapi-cli lint path-to-root-file.yaml
To build and run with a local image, run the following from the project root:
docker build -t redocly-cli . docker run --rm -v $PWD:/spec redocly-cli lint path-to-root-file.yaml