The Homey command-line interface (CLI) is the tool you need for Homey App development. It enables you to create and run apps on Homey for development and debugging purposes. Additionally, it contains various utilities that make Homey App development faster and easier. Read the getting started guide to learn how to install the Homey CLI.
The Homey CLI has commands that help when developing a Homey app. These commands all start with
homey app. By default all commands expect a Homey app to be in the current working directory, however it is possible to provide a
--path option to execute the command on a Homey app that is not in the current working directory.
homey app create
With this command you can create a new empty Homey app. This is a great base to start developing a new Homey app. Read the getting started guide to learn more.
homey app driver create
This command will add a new driver to your Homey app.
homey app flow create
This adds a new Flow card to your app. If you want to add a new Flow card with a device filter you can use the following command.
homey app driver flow create
homey app driver capabilities
If you want to update the capabilities of your driver you can use this command. This is helpful because it shows a list of all available capabilities and allows you to toggle which one your driver has.
homey app add-types
If you want to use TypeScript in your app this command installs all the packages that are necessary. Read the TypeScript guide to learn more.
homey app compose
If you have an older Homey app that doesn't use Homey Compose this command will split up your App Manifest into the various Homey Compose files.
homey app validate
This command checks whether your Homey app has a valid App Manifest. This is automatically checked when you use
homey app run
homey app install and
homey app publish. This command has supports a
--level=publish option which will also check whether your app includes valid assets.
homey app run
You can use this command to run and debug your Homey App. You can see the console output of your app live while the command is running. Quitting the command will uninstall the app from Homey .
homey app install
Using this command you can install apps on your Homey without having to keep a command running. This can be useful for longer term testing. Note that unlike
homey app run you cannot see the console output from your app when using this command.
homey app publish
When you want to share your Homey app with other people you can use this command to publish it to the Homey App store. Read more about publishing your app in the publishing guide.
homey app version
This command updates the version of your Homey app. Homey apps use semver and with this command you can choose to bump the version by a "patch", "minor" or "major" version.
homey app publish will also ask whether you want to update your apps version.
In order to use the Homey CLI to run or publish your Homey app you need to login to your Athom account. This command will automatically open the Homey OAuth2 dialog in your default browser.
The Homey CLI remembers stays logged into your Athom account until you logout. It is therefore recommended to logout if you logged in on a computer that isn't yours or that is used by people you do not know.
If you have multiple Homeys you can use this command to select which Homey you want to test your app with. This command only affects the behaviour of
homey app run and
homey app install.