# Install heroku with Homebrew, Nix, winget

CLI for Heroku. Version 11.8.0 via Homebrew; verified 2026-07-03.

## Install

```sh
sudo av install brew:heroku
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install heroku
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#heroku
```

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

### Windows

- winget (92%):

```sh
winget install --id Heroku.HerokuCLI -e
```

  Evidence: Windows Package Manager source index: Heroku.HerokuCLI from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:heroku
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/heroku>
- **Version:** 11.8.0
- **Source summary:** CLI for Heroku
- **Homepage:** <https://www.npmjs.com/package/heroku/>
- **Repository:** <https://github.com/heroku/cli>
- **Upstream docs:** <https://devcenter.heroku.com/articles/heroku-cli>
- **License:** ISC
- **Source archive:** <https://registry.npmjs.org/heroku/-/heroku-11.8.0.tgz>
- **Last updated:** 2026-07-03T00:29:17Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- heroku (cli)
- heroku (alias)

## Dependencies

- node
- terminal-notifier

## 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: 11.8.0
- Package-manager updated: 2026-07-03
- Local data: ok
- Upstream repository: https://www.npmjs.com/package/heroku/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

The Heroku CLI is the command-line interface for managing Heroku applications and services. Historically it is one of the defining cloud-platform CLIs: it carried Heroku's git-push deployment workflow, add-ons, dyno management, logs, config vars, database operations, teams, plugins, and local development commands into a single terminal tool.

### Project history

Heroku's command-line story predates the Node.js repository. In March 2012, Heroku announced the Heroku Toolbelt as a package of the Heroku CLI, Foreman, and Git for OS X, Windows, and Debian/Ubuntu Linux. The post explained that the CLI used Ruby under the hood, while Toolbelt packaging isolated its libraries so developers outside Ruby ecosystems could use Heroku without managing RubyGems themselves.

The `heroku/cli` repository was created on December 20, 2014. The repository README describes the modern CLI as a Node.js and oclif-based command-line interface for Heroku applications and services, with an extensible plugin architecture.

In 2024, Heroku described CLI v9.0.0 as a major architecture release that moved all core commands onto oclif, consolidated commands into a single package, improved tests, and simplified release processes. Heroku noted that earlier commands had been split across legacy and pre-oclif architectures.

In March 2026, Heroku described CLI v11 as a modernization that completed migration to ECMAScript Modules and oclif v4, shipped with Node.js 22 while retaining Node.js 20 compatibility, and added semantic color behavior and workflow changes such as command search and unified data-maintenance commands.

### Adoption history

The CLI's adoption follows Heroku's role as an early platform-as-a-service developer workflow. For many users, `heroku create`, `git push heroku`, `heroku config`, `heroku ps`, `heroku logs`, `heroku run`, and add-on commands were the ordinary interface to cloud deployment before web dashboards or infrastructure-as-code tools became default for every platform.

The Dev Center article says the CLI used to be part of the Heroku Toolbelt, then documents standalone installation through Homebrew, installers, and npm. That transition mirrors a broader shift from Ruby-era Heroku tooling to a Node.js/oclif CLI with plugins and generated command documentation.

Heroku's 2016 changelog item for Teams support shows the CLI tracking platform features over time: the old Toolbelt CLI gained commands and flags for team operations as Heroku's collaboration model evolved.

### How it is used

The CLI manages app lifecycle, deployment, scaling, logs, add-ons, Heroku Postgres, Heroku Redis, SSL certificates, domains, pipelines, teams, private spaces, and plugin commands. The README's command-topic list functions as a map of Heroku's platform surface area exposed through the terminal.

Authentication is stored through the CLI's credential flow; Heroku Dev Center troubleshooting notes that `.netrc` is where the CLI stores credentials on Unix-like systems, with `_netrc` on Windows.

The CLI also has a plugin culture. The README points developers to Heroku's CLI plugin documentation, and Heroku's architecture writing emphasizes oclif's modular structure and plugin support.

### Why package nerds care

Heroku CLI is a canonical example of a vendor CLI that became an operational dependency. It is not just a client for one API: package managers ship it because developers expect deployments, logs, config, add-ons, and database maintenance to be available from scripts, CI, and shell sessions.

Its packaging history is a miniature history of language ecosystems in CLIs: RubyGem-era `heroku`, Toolbelt bundling to hide Ruby from non-Ruby users, then a Node.js and oclif architecture with npm distribution, Homebrew packaging, and plugin commands.

oclif itself is historically tied to Heroku. Heroku's 2024 CLI v9 post says Heroku pioneered oclif and then moved all core CLI commands to it, making Heroku CLI both a consumer and a proving ground for a framework used by other large CLIs.

### Timeline

- 2012-03-09: Heroku announced Heroku Toolbelt, bundling the CLI, Foreman, and Git.
- 2014-12-20: `heroku/cli` GitHub repository creation date recorded by GitHub.
- 2016-10-18: Heroku Teams support was announced for the Heroku Toolbelt CLI.
- 2024-07-25: Heroku published its CLI v9 architecture and oclif-transition post.
- 2026-03-18: Heroku Dev Center changelog announced CLI v11.0.0.
- 2026-03-19: Heroku published its CLI v11 modernization post.

### Related projects

- Foreman is part of the Heroku Toolbelt origin story and remains associated with local process workflows shaped by Heroku's Procfile model.
- oclif is the CLI framework Heroku uses for the command architecture and plugin model.
- Heroku platform services such as Heroku Postgres, Redis, Pipelines, Teams, Private Spaces, add-ons, and the Dev Center are exposed or supported by CLI command groups.

### Sources

- Heroku CLI GitHub README for repository identity, command scope, and oclif/Node.js architecture.
- Heroku Dev Center CLI article for installation, credentials, Toolbelt note, and architecture.
- Heroku Toolbelt announcement for the Ruby-era bundle and cross-platform installer history.
- Heroku blog and Dev Center changelog entries for CLI v9 and v11 architectural milestones.


## Security Notes

No matching local secret-handling manifest was found for heroku. 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.


## Credential files

- Unix: ~/.netrc
## Source Database Details

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

## Other Package-Manager Records

- Nix - heroku: normalized package name match | nixpkgs package indexes: pkgs/by-name/he/heroku/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- winget - Heroku.HerokuCLI: normalized package name match | Windows Package Manager source index: Heroku.HerokuCLI from https://cdn.winget.microsoft.com/cache/source.msix


## Related links

- [Cloud CLI packages](https://www.automicvault.com/pkg/cloud-clis/) - Belongs to a cloud or infrastructure command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Package ecosystem packages](https://www.automicvault.com/pkg/package-ecosystem-tools/) - Matched package manager, installer, dependency, registry, or publishing metadata.
- [node](https://www.automicvault.com/pkg/brew/node/) - Runtime dependency declared by Homebrew.
- [terminal-notifier](https://www.automicvault.com/pkg/brew/terminal-notifier/) - Runtime dependency declared by Homebrew.
- [render](https://www.automicvault.com/pkg/brew/render/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment, platform-cli.
- [convox](https://www.automicvault.com/pkg/brew/convox/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment, paas.
- [flyctl](https://www.automicvault.com/pkg/brew/flyctl/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment, paas.
- [railway](https://www.automicvault.com/pkg/brew/railway/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment, paas.
- [scalingo](https://www.automicvault.com/pkg/brew/scalingo/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment, paas.
- [aws-elasticbeanstalk](https://www.automicvault.com/pkg/brew/aws-elasticbeanstalk/) - Shares av.db curated category or tags: cli, cloud-infrastructure, deployment, paas.
- [emp](https://www.automicvault.com/pkg/brew/emp/) - Shares av.db curated category or tags: cli, cloud-infrastructure, deployment, paas.
- [firebase-cli](https://www.automicvault.com/pkg/brew/firebase-cli/) - Shares av.db curated category or tags: cli, cloud, cloud-infrastructure, deployment.
- [triton](https://www.automicvault.com/pkg/brew/triton/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, cloud, cloud-infrastructure, infrastructure, node.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
