Open source · Apache 2.0

One toolchain for every API spec

Parse, validate, transform, and lint OpenAPI, AsyncAPI, Arazzo, Overlay, and JSON Schema through one shared semantic structure. Local-first and lossless.

Built by long-time maintainers of Swagger UI and Swagger Editor, OpenAPI Initiative contributors, and AsyncAPI spec maintainers. Meet the team →

$ npx @speclynx/cli validate openapi.yaml
openapi.yaml
  2:1-2:5    error  3030501  should always have a 'version'
  7:20-7:22  error  3080500  operationId must be a string

✖ 2 problems (2 errors)$ npx @speclynx/cli validate asyncapi.yaml
asyncapi.yaml
  6:3-6:13  error  100201  should always have a 'protocol'

✖ 1 problem (1 error)$ npx @speclynx/cli validate arazzo.yaml
arazzo.yaml
  16:9-20:1  warning  9050201  Step 'description' should be present and non-empty string.

⚠ 1 problem (1 warning)$ npx @speclynx/cli validate overlay.yaml
overlay.yaml
  11:13-11:16  error  10030500  remove must be a boolean

✖ 1 problem (1 error)

One semantic structure. Every API spec.

OpenAPI OpenAPI Specification
AsyncAPI AsyncAPI Specification
Arazzo Arazzo Specification
JSON Schema JSON Schema Specification
Overlay Overlay Specification

Testimonials

Since my days at Apiary and Swagger, I've been looking for OpenAPI tooling I'd actually recommend. SpecLynx is it, and no wonder: it's built by many of the same people. The editor, CLI, and VS Code extension share one engine, so the whole toolchain just makes sense. I'll be using it in my consulting and training.
Emmanuel Paraskakis Consultant, Trainer, Advisor Founder, Level 250
When I started AsyncAPI, the hardest part wasn't the spec. It was the tooling around it: every standard got its own parser, validator and set of quirks. SpecLynx is the toolchain I wish had existed back then, with one consistent model across OpenAPI, AsyncAPI and Arazzo.
Fran Mendez AsyncAPI author Building usecommune.com

Why API specification work still gets messy

Your API specs may be standardized, but the tooling around them rarely is. You standardized on OpenAPI, then AsyncAPI arrived for your events, Arazzo for your workflows, Overlay for your edits, and JSON Schema underneath it all. Each of them ships in several versions, and your specs rarely all sit on the same one. Every format and version brought its own validator, linter, and converter, and every job brought another script in CI. The result is duplicated logic, checks that disagree, and fragile automation around the contracts your systems depend on.

How SpecLynx works

Every supported spec is parsed into ApiDOM, one shared semantic structure, with spec-level semantics layered on top. Everything else runs on that structure. That is why every SpecLynx tool behaves the same way across every spec and format, and why it recovers from broken documents instead of choking on them.

SpecLynx pipeline: OpenAPI, AsyncAPI, Arazzo, Overlay, and JSON Schema documents are parsed into one ApiDOM structure, which is traversed, transformed, and serialized back to JSON or YAML. OpenAPI AsyncAPI Arazzo Overlay JSON Schema Parse JSON or YAML, lossless One structure ApiDOM, spec semantics on top Traverse query, validate, lint Transform overlay, edit, convert Serialize back to JSON or YAML
Get started

Why SpecLynx is different

One semantic structure, not five parsers

Every spec becomes one lossless, error-recovering structure, with the semantics of each specification layered on top. Tools built on it work across every supported spec.

Local-first, always

Runs on your machine. No accounts, no telemetry, and it works offline. Your specs never leave your environment.

Built by the people who built the ecosystem

Long-time maintainers of Swagger UI and Swagger Editor, OpenAPI Initiative contributors, and AsyncAPI spec maintainers.

Read the manifesto →

The tools

SpecLynx combines core tooling, developer workflows, and editing surfaces into one consistent stack, plus a workflow toolkit built on top of it.

Featured product · API workflows

Run your API workflows, not just describe them.

UseArazzo is the toolkit for Arazzo, the OpenAPI Initiative's spec for multi-step API workflows. Validate the document, run the workflow against your live APIs, and read the trace of every step. Built on SpecLynx.

Free and open source under Apache 2.0.

A three-step Arazzo workflow run: each step is called in order, one step is retried, and every step ends in success. workflow · placeOrder findPetsByStatus GET /pet/findByStatus ✓ ok placeOrder POST /store/order ✓ ok · 2 attempts retry getOrderById GET /store/order/{orderId} ✓ ok end · workflow completed, 3 steps, 4 calls

01

Validate

The document, against the Arazzo specification. Every violation, with the location that caused it.

02

Run

The workflow, against the live APIs described by your OpenAPI source descriptions.

03

Read the trace

Each step in run order: what succeeded, which action was selected, and how many attempts it took.

Under the hood: CLI Validator with LSP diagnostics Runner with goto / retry / end Sub-workflows dependsOn Pluggable HTTP transport

Community

Built in the open

Every part of SpecLynx is open source under Apache 2.0. Contributions, issues, and questions are welcome.

Get help from the maintainers

SpecLynx is free to use. We can help developers and teams integrate the tooling, standardize API and workflow specifications, and adopt it across their platform.

Talk to the maintainers