A JavaScript/TypeScript toolkit for Arazzo, the OpenAPI Initiative's specification for multi-step API workflows.
Plenty of tools will tell you whether an Arazzo document is well formed. Far fewer will run it. UseArazzo does both, and tells you what happened:
- Validate the document against the Arazzo specification.
- Run the workflow against live APIs.
- Read the trace of each step in run order: whether it succeeded, which action was selected, and how many attempts it took, alongside the workflow's outputs and final status. What happened at each step, not just a pass or fail at the end.
Do it from the command line with @usearazzo/cli, on your machine or in CI.
The toolkit is pre-1.0 and APIs may change before the stable release.
| Package | Description |
|---|---|
| CLI | @usearazzo/cli — one command-line interface across the toolchain: validate and run workflows on your machine and in CI. Start here. |
| Validator | @usearazzo/validator — the same validation the CLI runs, as a library: every violation against the Arazzo specification, with the location that caused it. |
| Runner | @usearazzo/runner — executes workflows step by step: criteria evaluation, output mapping, failure actions, and retries, returning a per-step record of the run. Reach for it when you want execution embedded in your own program. |
Lower-level packages are published for anyone building Arazzo tooling of their own:
| Document | Versions | Validate | Run |
|---|---|---|---|
| Workflow Document: Arazzo | 1.0.0, 1.0.1 | yes | yes |
| Workflow Document: Arazzo | 1.1.0 | no | partial |
| Source Description: OpenAPI | 2.0, 3.0.x, 3.1.x | yes | yes |
| Source Description: Arazzo | 1.0.0, 1.0.1 | yes | no |
| Source Description: AsyncAPI | any | no | no |
A single API call is a solved problem, and everything above it isn't. OpenAPI describes endpoints, but not the order you call them in, what you carry between them, or when you're done. Agent frameworks improvise that order at runtime, and improvisation is exactly what you don't want in production. UseArazzo fills the gap with Arazzo, the OpenAPI Initiative's specification for multi-step API workflows:
- Deterministic execution — a workflow that ran yesterday runs the same today. Agents get autonomy at the decision boundary, not inside the steps.
- The standard is the product — Arazzo implemented as specified, with contributions upstream rather than a private dialect only our tools understand.
- Portable artifacts — plain Arazzo documents in your repository, driven from the CLI, your CI pipeline, or an agent. If you stop using the toolkit, your workflows keep working.
| Layer | Description |
|---|---|
| Language Service | An LSP-compatible library bringing Arazzo intelligence to any editor or tool — validation, completion, hover, go-to-definition, and find references. |
| Editor | A browser-based editor for authoring and validating Arazzo workflows with real-time feedback. |
| VS Code Extension | Arazzo authoring inside VS Code — real-time validation, semantic linting, autocompletion, and live preview. |
| GitHub Actions | Validation and run results reported where the work happens — violations annotated on the diff, the step-by-step run trace rendered into the job summary, and the check status driven by step outcomes rather than a single pass or fail. |
| Agent Skills | A set of task-shaped skills teaching agents to work the toolchain — authoring workflows from an API description, validating and fixing them, and reading a run trace when a step fails. |
| MCP Server | A generic Model Context Protocol server exposing validation and execution over any Arazzo document, so agents can check and run workflows with no build step. |
| MCP Compiler | Compiles a specific workflow into a dedicated MCP server — one typed tool per workflow, with real input schemas, for production agent deployments. |
| Arazzo Transformers | Explicit, versioned transformations for reshaping data between steps — declared as ordinary API calls the toolchain can validate, rather than arbitrary code that needs a sandbox to run. |
UseArazzo was founded by Vladimir Gorej and Francesco Tumanischvili, two industry veterans with over 15 years of combined experience building and maintaining core tools in the Swagger/OpenAPI ecosystem.
Questions, ideas, and bug reports belong in Discussions. For anything else, reach the maintainers directly.
- Website: https://usearazzo.com
- Email: info@usearazzo.com
UseArazzo is built end to end on SpecLynx — the semantic parsing core, reference resolution, and standards discipline behind years of Swagger/OpenAPI tooling. The toolkit sits on that foundation, which is why it handles malformed documents, external references, and specification edge cases from day one rather than learning them the hard way.

