# Install usage with Homebrew, Nix, pacman

Tool for working with usage-spec CLIs. Version 3.5.4 via Homebrew; verified 2026-07-06.

## Install

```sh
sudo av install brew:usage
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install usage
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#usage
```

  Evidence: nixpkgs package indexes: pkgs/by-name/us/usage/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S usage
```

  Evidence: Arch Linux sync databases: usage from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## Package facts

- **Package key:** brew:usage
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/usage>
- **Version:** 3.5.4
- **Source summary:** Tool for working with usage-spec CLIs
- **Homepage:** <https://usage.jdx.dev/>
- **Repository:** <https://github.com/jdx/usage>
- **Upstream docs:** <https://usage.jdx.dev/>
- **License:** MIT
- **Source archive:** <https://github.com/jdx/usage/archive/refs/tags/v3.5.4.tar.gz>
- **Last updated:** 2026-07-06T22:21:19Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- usage (cli)
- usage (alias)

## Build dependencies

- rust

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.5.4
- Package-manager updated: 2026-07-06
- Local data: ok
- Upstream repository: https://github.com/jdx/usage
- Upstream latest detected: v3.5.4 (current)
## Project history and usage

usage is both a specification and a CLI for describing command-line interfaces. The official README compares a Usage spec to OpenAPI for CLIs, covering arguments, flags, environment variables, and config files so downstream tools can generate completions, documentation, man pages, parsers, SDKs, and framework scaffolding.

### Project history

The project grew out of the modern CLI tooling ecosystem around jdx's tools and the KDL document language. Public GitHub releases show early v0.1.x releases in 2024 and v3.x releases in 2026, while the docs describe an expanding scope from shell completions and man pages toward type-safe SDK generation.

### Adoption history

The official CLI docs list installation through mise, Cargo, Homebrew, and Arch Linux. The input metadata also records Homebrew, Nix, and pacman package names, indicating adoption by users who want the same CLI-spec tool available across developer workstations and Linux distributions.

### How it is used

A Usage spec is written in KDL and can describe a CLI's name, binary, about text, version, author, license, flags, arguments, subcommands, config files, environment variables, and defaults. The `usage` CLI then consumes that spec to generate shell completions, Markdown, man pages, JSON, and related artifacts.

### Why package nerds care

Package nerds care about usage because it treats CLI metadata as a portable build artifact. Instead of each package separately hand-maintaining completions, man pages, and docs, maintainers can ship a spec and generate those outputs consistently.

### Timeline

- 2024: Early v0.1.x GitHub releases published.
- 2026-06-23: GitHub release v3.5.3 published.

### Related projects

- The official docs relate Usage to OpenAPI for CLIs, KDL as the spec language, and integrations for CLI frameworks such as clap, Cobra, Click, Typer, yargs, oclif, and Commander.js.

### Sources

- <https://github.com/jdx/usage>
- <https://github.com/jdx/usage/releases>
- <https://usage.jdx.dev/cli/>
- <https://usage.jdx.dev/spec>
- input source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** usage
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - usage: normalized package name match | nixpkgs package indexes: pkgs/by-name/us/usage/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- pacman - usage - 3.2.0-1: normalized package name match | Arch Linux sync databases: usage from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A specification for CLIs | https://github.com/jdx/usage


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [fnox](https://www.automicvault.com/pkg/brew/fnox/) - Popular package that depends on this formula.
- [hk](https://www.automicvault.com/pkg/brew/hk/) - Popular package that depends on this formula.
- [mise](https://www.automicvault.com/pkg/brew/mise/) - Popular package that depends on this formula.
- [pitchfork](https://www.automicvault.com/pkg/brew/pitchfork/) - Popular package that depends on this formula.
- [plz-cli](https://www.automicvault.com/pkg/brew/plz-cli/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, generation, shell.
- [carapace](https://www.automicvault.com/pkg/brew/carapace/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, shell.
- [cheat](https://www.automicvault.com/pkg/brew/cheat/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, developer, developer-tools, documentation.

## Combined YAML source

View the package source record on GitHub. [combined/usage.yml](https://github.com/automic-vault/db/blob/main/combined/usage.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
