# Install vacuum with Homebrew, MacPorts, scoop

World's fastest OpenAPI & Swagger linter. Version 0.30.0 via Homebrew; verified 2026-07-26. Also installable with macports: sudo port install vacuum.

## Install

```sh
sudo av install brew:vacuum
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install vacuum
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install vacuum
```

  Evidence: MacPorts ports tree: devel/vacuum/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Windows

- Scoop (92%):

```sh
scoop install main/vacuum
```

  Evidence: Scoop official bucket manifest trees: bucket/vacuum.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:vacuum
- **Package manager:** Homebrew
- **Version:** 0.30.0
- **Source summary:** World's fastest OpenAPI & Swagger linter
- **Homepage:** <https://quobix.com/vacuum/>
- **Repository:** <https://github.com/daveshanley/vacuum>
- **Last updated:** 2026-07-26T00:30:00+02:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- vacuum (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.30.0
## Project history and usage

vacuum is a Go-based OpenAPI, AsyncAPI, and JSON Schema linter and API-quality toolkit. It was created as a fast, lightweight alternative in the same niche as Spectral while preserving compatibility with existing Spectral rulesets.

### Project history

The first GitHub release, v0.0.1, was published in May 2022 and described as an alpha but stable working release. The early changelog already included an OpenAPI rules engine, default rulesets, schema checks, a report command, Spectral report generation, and Docker packaging.

The project's README later positioned vacuum as the world's fastest OpenAPI, AsyncAPI, and JSON Schema linter, docs generator, and toolkit. Its development expanded beyond OpenAPI linting into HTML reports, a dashboard, documentation generation, overlays, OpenAPI collections, JSON Schema linting, and AsyncAPI support.

### Adoption history

vacuum's adoption path is strongly package-manager oriented: the official README documents installation through a Homebrew tap, npm, yarn, curl installer, Docker images, GitHub Packages, and `go run`. The Homebrew formula, MacPorts, and Scoop entries in the input show it crossing into normal developer workstation package indexes.

The project targets CI and automated API governance workflows. The README includes a GitHub Actions installation pattern and notes token use to avoid GitHub API rate limits during automated installs.

### How it is used

The common CLI path is `vacuum lint <your-openapi-spec.yaml>`, but the tool also exposes report, dashboard, HTML report, docs generation, bundle, language-server, overlay, schema, and ruleset-generation commands. The README emphasizes that it accepts YAML or JSON and supports OpenAPI 2, OpenAPI 3+, AsyncAPI 3, and JSON Schema documents.

Because vacuum is compatible with Spectral rulesets, package users can reuse existing API lint policies while benefiting from vacuum's Go binary distribution and speed-focused implementation.

### Why package nerds care

vacuum matters to package nerds because it is a single native CLI that replaces a chunk of Node-oriented API linting machinery for many workflows. That makes it attractive in Homebrew, Scoop, Docker, and CI setups where fast cold starts, simple binary distribution, and reproducible lint behavior matter.

Its rapid release cadence and widening command set make it a package-manager-visible example of the OpenAPI tooling ecosystem moving from JavaScript-only linters toward compiled CLIs that still interoperate with existing ruleset formats.

### Timeline

- 2022: v0.0.1 initial GitHub release published with an alpha rules engine and reporting features.
- 2022: README documents Homebrew tap, npm, yarn, curl, Docker, and Go execution paths.
- 2026: v0.28 adds JSON Schema-specific linting.
- 2026: v0.29 adds AsyncAPI 3 linting as a first-class document type.

### Related projects

- Spectral is the ruleset ecosystem vacuum explicitly supports.
- OpenAPI, AsyncAPI, and JSON Schema are the specification families vacuum linting targets.
- Docker, Homebrew, npm, yarn, and Go are official installation paths documented by the project.

### Sources

- <https://api.github.com/repos/daveshanley/vacuum/releases/tags/v0.0.1>
- <https://github.com/daveshanley/vacuum>
- <https://quobix.com/vacuum>
- source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for vacuum. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ./vacuum.conf.yaml, ~/.config/vacuum.conf.yaml, ./changes-rules.yaml, ~/.config/changes-rules.yaml
## Other Package-Manager Records

- MacPorts - vacuum: normalized package name match | MacPorts ports tree: devel/vacuum/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/vacuum: normalized package name match | Scoop official bucket manifest trees: bucket/vacuum.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/vacuum.yml](https://github.com/mxcl/pkgdb/blob/main/combined/vacuum.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
