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

# Command-line tools

> Install any of the Coalesce Quality CLIs, and find the reference for each

Three command-line tools, all of them installable and runnable on your own
infrastructure without involving us. They share credentials, so one login covers
all three.

| Tool             | What it does                                                                                                | Guides                                                                                                                                                                              |
| ---------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`synqcli`**    | Declares monitors, SQL tests and deployment rules as code, and reconciles a workspace with that declaration | [Monitors as code](/monitors/monitors-as-code) · [Agent workflow](/monitors/agent-workflow) · [CLI reference](/monitors/cli)                                                        |
| **`synq-recon`** | Compares a dataset in one database against another and reports whether they agree, without moving row data  | [Overview](/reconciliation/overview) · [Getting started](/reconciliation/getting-started) · [Agent workflow](/reconciliation/agent-workflow) · [CLI reference](/reconciliation/cli) |
| **`synq-scout`** | Runs the Scout agent, or serves its tools locally over MCP                                                  | [Scout](/scout/scout) · [Agent workflow](/scout/agent-workflow) · [CLI reference](/scout/cli)                                                                                       |

<Note>
  Each tool ships an **`AGENTS.md`** beside the binary — the operating guide,
  written for a coding agent to read top-down and act on. It is the same content as
  the "Agent workflow" page linked above, so an agent with a download and no web
  access still has it. If you are pointing an agent at one of these tools, that is
  the file to give it.
</Note>

## Install

Every release publishes archives for macOS and Linux on both `amd64` and `arm64`
(`synqcli` also builds for Windows), plus a `checksums.txt`. Pick a version from the
releases page — the archive filename carries it, so it has to be named explicitly.

<Tabs>
  <Tab title="synqcli">
    ```bash theme={null}
    VERSION=0.4.3   # from https://github.com/getsynq/synqcli/releases
    OS=$(uname -s | tr '[:upper:]' '[:lower:]')
    ARCH=$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/')

    curl -fL "https://github.com/getsynq/synqcli/releases/download/v${VERSION}/synqcli_${VERSION}_${OS}_${ARCH}.tar.gz" \
      | tar -xz
    sudo mv synqcli /usr/local/bin/
    synqcli --version
    ```

    On Windows, download the `.zip` for your architecture from the releases page and
    put `synqcli.exe` on your `PATH`.
  </Tab>

  <Tab title="synq-recon">
    ```bash theme={null}
    VERSION=0.2.0   # from https://github.com/getsynq/synq-recon/releases
    OS=$(uname -s | tr '[:upper:]' '[:lower:]')
    ARCH=$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/')

    curl -fL "https://github.com/getsynq/synq-recon/releases/download/v${VERSION}/synq-recon_${VERSION}_${OS}_${ARCH}.tar.gz" \
      | tar -xz
    sudo mv synq-recon /usr/local/bin/
    synq-recon --version
    ```

    Also available as a container image, which is the quickest way to try it with no
    warehouse at all — the walkthrough in
    [Getting started](/reconciliation/getting-started) runs against DuckDB:

    ```bash theme={null}
    docker pull europe-docker.pkg.dev/synq-cicd-public/synq-public/synq-recon:latest
    ```
  </Tab>

  <Tab title="synq-scout">
    ```bash theme={null}
    VERSION=0.2.0   # from https://github.com/getsynq/synq-scout/releases
    OS=$(uname -s | tr '[:upper:]' '[:lower:]')
    ARCH=$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/')

    curl -fL "https://github.com/getsynq/synq-scout/releases/download/v${VERSION}/synq-scout_${VERSION}_${OS}_${ARCH}.tar.gz" \
      | tar -xz
    sudo mv synq-scout /usr/local/bin/
    synq-scout --version
    ```

    For a long-running deployment, use the Kubernetes manifests in
    [getsynq/synq-scout-k8s](https://github.com/getsynq/synq-scout-k8s) — see
    [Scout on-premise setup](/scout/on-premise).

    You do **not** need this binary to use Scout's tools from an AI client: the MCP
    server is hosted. See [MCP](/scout/mcp).
  </Tab>
</Tabs>

Verify a download against the checksums published with the release:

```bash theme={null}
sha256sum -c checksums.txt --ignore-missing
```

On macOS a downloaded binary may be quarantined. If it refuses to start,
`xattr -d com.apple.quarantine /usr/local/bin/<tool>` clears the flag.

## Sign in

All three resolve credentials the same way, and take the first they find:

1. **Client credentials** — `QUALITY_CLIENT_ID` + `QUALITY_CLIENT_SECRET`, for
   servers, containers and CI. Create the pair under Settings → API.
2. **An API token** — `QUALITY_TOKEN`, the `st-…` token from your workspace.
3. **A browser login** — `<tool> auth login`, which caches a refresh token under
   `~/.synq/oauth/`.

The cache is shared, so one `auth login` covers all three for the same deployment.

```bash theme={null}
synqcli auth login
synqcli auth status      # every stored credential, for every region
```

If your workspace is not in the EU, add `--region us` (or `au`), or set
`QUALITY_REGION`. The flag works on every command, and a successful login is
remembered, so later commands need neither it nor `--endpoint`.

<Warning>
  Confirm which workspace you are pointed at before running anything that writes.
  `synq-scout auth whoami` and `synqcli auth status` both print it. A `synqcli
      deploy` against the wrong region reconciles the wrong workspace — and a reconcile
  deletes what it does not find declared.
</Warning>

## Get the command reference

Each tool's full command and flag reference is generated from the tool itself, so it
always matches the release you have:

* [`synqcli` reference](/monitors/cli)
* [`synq-recon` reference](/reconciliation/cli)
* [`synq-scout` reference](/scout/cli)

`--help` on any command prints the same content locally, and every tool supports
shell completion.

## Field references for the YAML

Each tool's configuration schema is published and versioned, and each is
authoritative in a way prose is not. Two forms of the same thing: a rendered page to
read, and the JSON Schema to point an editor at.

| Tool         | Configures                        | Reference                                                              | Schema URL                                                    |
| ------------ | --------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------- |
| `synqcli`    | monitors, tests, deployment rules | [config.html](https://schemas.synq.io/synq-monitors/v1/config.html)    | `https://schemas.synq.io/synq-monitors/v1/config.schema.json` |
| `synq-recon` | suites, connections, comparisons  | [config.html](https://schemas.synq.io/synq-recon/v1/config.html)       | `https://schemas.synq.io/synq-recon/v1/config.schema.json`    |
| `synq-recon` | the audit log a run writes        | [audit-log.html](https://schemas.synq.io/synq-recon/v1/audit-log.html) | `https://schemas.synq.io/synq-recon/v1/audit-log.schema.json` |
| `synq-scout` | `agent.yaml`                      | [config.html](https://schemas.synq.io/synq-scout/v1/config.html)       | `https://schemas.synq.io/synq-scout/v1/config.schema.json`    |

Put the matching line at the top of your YAML and any editor with the YAML language
server gives completion and validation as you type:

```yaml theme={null}
# yaml-language-server: $schema=https://schemas.synq.io/synq-recon/v1/config.schema.json
```

The [data-warehouse agent](/dw-integrations/agent) publishes its config schema the
same way.

## Use them from CI

Client credentials plus the archive download is all CI needs; no interactive login
is involved. `synqcli deploy --auto-confirm` and `synq-recon`'s exit codes are the
two things worth reading before wiring a pipeline —
[Reconciliation in CI/CD](/reconciliation/cicd-and-automation) covers the second in
full.

Need something not covered here? [Get in touch](/support/support).
