Catkin Command Line Tools

This Python package provides command line tools for working with the catkin meta-buildsystem and catkin workspaces. These tools are separate from the Catkin CMake macros used in Catkin source packages. For documentation on creating catkin packages, see:


This package was announced in March 2015 and is still in beta. A second beta release is planned for April 2016 <>.


Users of catkin_make and catkin_make_isolated should go to the Migration Guide for help transitioning to catkin build.

The catkin Command

The catkin Command-Line Interface (CLI) tool is the single point of entry for most of the functionality provided by this package. All invocations of the catkin CLI tool take this form:

$ catkin [global options] <verb> [verb arguments and options]

The different capabilities of the catkin CLI tool are organized into different sub-command “verbs.” This is similar to common command-line tools such as git or apt-get. Verbs include actions such as build which builds a catkin workspace or list which simply lists the catkin packages found in one or more folders.

Verbs can take arbitrary arguments and options, but they must all come after the verb. For more help on the usage of a particular verb, simply pass the -h or --help option after the verb.

Shell Support for the catkin Command

If you are using bash or zsh, then you can source an extra setup file to gain access to some additional verbs. For more information see: Shell support in catkin command.

Extending the catkin command

If you would like to add a verb to the catkin command without modifying its source, please read Adding New Verbs.