Label

Add, remove and toggle labels on a pull request.


The label action allows Mergify to automatically add or remove labels from a pull request based on the conditions specified in your rules, making your workflow more organized and efficient.

Key nameValue type
addlist of template

The list of labels to add.

removelist of template

The list of labels to remove.

remove_allboolean

Remove all labels from the pull request.

togglelist of template

Toggle labels in the list based on the conditions. If all the conditions are a success, all the labels in the list will be added, otherwise, they will all be removed.

pull_request_rules:
  - name: add "WIP" label when the title contains "WIP"
    conditions:
      - title ~= WIP
    actions:
      label:
        toggle:
          - WIP

In this example, Mergify will automatically add the “WIP” label to any pull request whose title contains “WIP”. If the pull request does not match the rule anymore, the label will be removed.

When browsing the list of pull request, GitHub does not give any indication on which pull requests might be in conflict. Mergify allows to do this easily by adding a label.

pull_request_rules:
  - name: warn on conflicts
    conditions:
      - conflict
    actions:
      comment:
        message: "@{{author}} this pull request is now in conflict 😩"
      label:
        toggle:
          - conflict

Then, your pull request list will look like this on conflict:

Pull request in conflict in pull request list

Toggle A Label Based on CI Status

Section titled Toggle A Label Based on CI Status

This rule toggle a label based on the failure status of a CI system.

pull_request_rules:
  - name: toggle labels based on CI state
    conditions:
      - check-failure = CI
    actions:
      label:
        toggle:
          - "CI:fail"

Add A Label Based on The Name of The Branch

Section titled Add A Label Based on The Name of The Branch

This rule add a label with the name of the branch.

pull_request_rules:
  - name: add a label with the name of the branch
    conditions: []
    actions:
      label:
        add:
          - "branch:{{base}}"