Skip to content


Repository files navigation

Heroku CLI

Heroku logo Node CI Suite npm ISC License

The Heroku CLI is used to manage Heroku apps from the command line. It is built using oclif.

For more about Heroku see

To get started see


This is the next generation Node-based Heroku CLI. The goals of this project were to make plugins more flexible, remove Ruby as a runtime dependency, and make the CLI faster.

It has identical functionality to the old Ruby CLI. Under the hood, it is a modular CLI made up of node.js plugins.

For more on developing plugins, read Developing CLI Plugins


For problems directly related to the CLI, add an issue on GitHub.

For other issues, submit a support ticket.


Command Topics


This project is built with lerna. The core plugins are located in ./packages.

After cloning the repo

  1. Run yarn to install dependencies
  2. Run yarn build to build the CLI. This will need to be re-run any time you make changes and want to test them locally.

To execute Heroku CLI commands locally, use ./bin/run <command>. For example, to run the heroku apps command with your local code, run ./bin/run apps from the root directory.


Run all tests with yarn test.

Run one test, in this case plugin-certs-v5, with yarn lerna run --scope @heroku-cli/plugin-certs-v5 test.


Using WebStorm (from Jetbrains / IntelliJ), you can run/debug an individual test case.

  • Create a new run/debug configuration
  • Select the 'Mocha' type
  • Set the working directory to the directory of the package you are using. (i.e. ~/Heroku/Repos/cli/packages/certs-v5)


See the Heroku CLI Release Steps.

Review our PR guidelines.