# Steps reference

Abstract

A Step encapsulates a build task: the code to perform that task, the inputs and parameters you can define for the task, and the outputs the task generates.

A Step encapsulates a build task: the code to perform that task, the inputs and parameters you can define for the task, and the outputs the task generates.

For example the Git Clone Step performs a git clone of the specified repository, with the specified inputs, such as the branch or the commit to clone.

From a technical perspective, a Step is a semver versioned repository which includes the code of the Step and the interface definition of the Step.

The Step interface definition is defined in the step.yml file for every Step. It includes:

• The dependencies of the Step.

• The inputs and outputs of the Step.

• The title and description of the Step.

• Properties such as the issue tracker or support URL, or certain filter properties.

To include Steps in your Workflow, you have to reference them in the bitrise.yml file of your app. To do so, you will need the correct reference format for the Step. In the configuration file, you can also specify input values for the inputs defined in the Step's interface definition.