> ## Documentation Index
> Fetch the complete documentation index at: https://docs.talosjs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# monorepo:check

> Run install, build, lint and test across packages and modules with granular caching.

Run the full verification gate across the packages and modules of your workspace: `install`, then `build`, then `lint`, then `test`, in that order. It is a shorthand for [`monorepo:run`](/cli/commands/monorepo-run) with a fixed command list, so it inherits the same workspace dependency ordering, content-addressed cache, filtering, and output.

## Usage

```bash theme={null}
talos monorepo:check [options]
```

This is equivalent to:

```bash theme={null}
talos monorepo:run --commands=install,build,lint,test
```

## Examples

Run the full gate across every package and module:

```bash theme={null}
talos monorepo:check
```

Scope the gate to specific modules and packages:

```bash theme={null}
talos monorepo:check --modules=billing,user --packages=billing,user
```

Stream plain logs instead of the interactive view (for CI):

```bash theme={null}
talos monorepo:check --logs
```

Force every task to re-run, ignoring the cache:

```bash theme={null}
talos monorepo:check --no-cache
```

## Options

| Option       | Description                                                   | Default                  |
| ------------ | ------------------------------------------------------------- | ------------------------ |
| `--packages` | Comma-separated package names to include (under `packages/`). | All packages and modules |
| `--modules`  | Comma-separated module names to include (under `modules/`).   | All packages and modules |
| `--logs`     | Stream plain log lines instead of the interactive view.       | `false`                  |
| `--no-cache` | Skip reading and writing the task cache.                      | `false`                  |

<Note>
  Unlike [`monorepo:run`](/cli/commands/monorepo-run), `monorepo:check` takes no
  `--commands` option — the command list is fixed to `install,build,lint,test`.
</Note>

## Execution

Each command runs as a group, in order: first `install` at the project root, then every `build`, then every `lint`, then every `test`. Within a group, targets run in workspace dependency order — a target waits for the targets it depends on — with up to four tasks running concurrently.

A target whose `package.json` does not define a script is skipped without an error. If any task fails, the run stops immediately: remaining tasks are cancelled, the failing task's output is printed, and the command exits with code 1 — so a build failure never reaches the lint or test groups.

## Caching and output

`monorepo:check` shares the task cache and reporting of [`monorepo:run`](/cli/commands/monorepo-run). Results are cached in `var/cache/monorepo/`, cache hits restore output artifacts and replay logs, and the interactive view (or `--logs` streaming) behaves identically. See the [`monorepo:run`](/cli/commands/monorepo-run) reference for the full details on caching and output.
