> For the complete CircleCI developer hub index, see [llms.txt](https://circleci.com/developer/llms.txt)

# circleci/vale

Easily lint your markdown files in CI with Vale and CircleCI. Vale (by errata.ai) is a syntax-aware linter for prose built with speed and extensibility in mind.


## Commands

### install

If you want to use the Vale CLI in your own custom-defined job, you can use this command to install it into your environment.

| Parameter | Type | Default | Description |
|---|---|---|---|
| `version` | string | latest | Pin to a specific version of the Vale CLI for improved stability. By default, the latest version will be used. |

## Jobs

### lint

Lint your markdown, AsciiDoc, reStructuredText, and more.


| Parameter | Type | Default | Description |
|---|---|---|---|
| `base_dir` | string | $CIRCLE_WORKING_DIRECTORY | Base directory to run Vale from. By default, Vale will run in the current directory. Do no put / at the end. |
| `config` | string | .vale.ini | Path to a Vale configuration file. By default, Vale will look for a .vale.ini file in the root of your repository. |
| `executor` | executor | default | Executor where the lint will be run on, defaults to the Default executor of this orb. |
| `glob` | string | *.{md,adoc} | Glob pattern to match files against. By default, all markdown and AsciiDoc files will be linted. |
| `reference_branch` | string | main | Branch to use as a reference when determining modified files.
By default, the main branch will be used.
If the strategy is set to "modified", this parameter must also be set.
 |
| `strategy` | enum | modified | Strategy to use when determining which files to lint.
By default, only modified files will be linted.
If set to modified, the "reference_branch" parameter must also be set.
 |

## Executors

### default

The official Docker image for Vale. Includes 'py3-docutils' and 'asciidoctor'.


| Parameter | Type | Default | Description |
|---|---|---|---|
| `tag` | string | latest | Pick a specific jdkato/vale image tag: https://hub.docker.com/r/jdkato/vale/tags
 |

## Examples

### lint_workflow

The `vale/lint` job can be added to your existing workflows or as a new workflow to lint your markdown, AsciiDoc, reStructuredText, and more.


```yaml
version: '2.1'
orbs:
  vale: circleci/vale@1.0.0
workflows:
  lint:
    jobs:
      - vale/lint
```