# `chock doctor`

Ask the user before running chock doctor: what it takes and prints, from the engine at the pinned commit.

Check each client's hooks on each route: present, current, and seen running (--client X)

> Ask the user before running any command on this page: each one changes how their agent or repository behaves.

## Syntax

This is the usage line argparse builds from this command's parser. Ask the user before running the commands below:

```text
chock doctor [-h] [--repo REPO] [--client CLIENT] [--client-version CLIENT_VERSION]
             [--sessions SESSIONS] [--json]
```

## Arguments and options

The table lists every argument the parser declares, except `-h, --help`, written as argparse prints it. Default is the value the parser uses when you leave the option out. It is empty for a flag or when the parser sets none. Help for each argument is in the table on this page's HTML version and in Help as printed, as the engine words it.

| Argument | Default |
| --- | --- |
| `--repo REPO` | `.` |
| `--client CLIENT` |  |
| `--client-version CLIENT_VERSION` |  |
| `--sessions SESSIONS` | `3` |
| `--json` |  |

## Exit codes

- 2: argparse rejected the arguments, for example an option this command does not have. The site's tests run every command with an unknown option and check that it exits 2.
- Chock documents no other exit codes. Each example below shows the code its run returned.

## Examples

Real runs, recorded by `python -m sitegen.cliexamples` with the engine at the pinned commit. The steps of `data/cli-examples.yaml` ran in order, offline, in one fresh git repository at `/work/demo` (made with `git init -b main`), with HOME at `/home/demo`. Those paths stand for the throwaway folders the runs used, and `<time>` stands for a timestamp. Output is stdout and stderr together.

Step 14 of 21, exit code 0. Ask the user before running the commands below:

```text
$ chock doctor
claude_code [sync] /work/demo
  PASS  hooks: /work/demo/.claude/settings.json runs claude_code.py
  PASS  launcher: launch.sh present; python3 is 3.12
  PASS  engine: runtime matches chock 1.0.0 (5a4b6287a46e)
  INFO  client: agentseam witnessed 2.1.263, 2.1.275; doctor does not run the client
        fix: pass --client-version to compare
  INFO  last fired: no hook record yet
  WARN  heartbeat: no session_start heartbeat yet
        fix: start a new session; if none appears, the client is not loading it: run `chock sync --repo /work/demo`
gemini_cli [sync] /work/demo
  PASS  hooks: /work/demo/.gemini/settings.json runs gemini_cli.py
  PASS  launcher: launch.sh present; python3 is 3.12
  PASS  engine: runtime matches chock 1.0.0 (5a4b6287a46e)
  INFO  client: agentseam has witnessed no gemini_cli version
        fix: see agentseam's evidence wanted issues
  INFO  last fired: no hook record yet
  WARN  heartbeat: no session_start heartbeat yet
        fix: start a new session; if none appears, the client is not loading it: run `chock sync --repo /work/demo`
vscode_copilot [sync] /work/demo
  PASS  hooks: /work/demo/.github/hooks/chock.json runs vscode_copilot.py
  PASS  launcher: launch.sh present; python3 is 3.12
  PASS  engine: runtime matches chock 1.0.0 (5a4b6287a46e)
  INFO  client: agentseam has witnessed no vscode_copilot version
        fix: see agentseam's evidence wanted issues
  INFO  last fired: no hook record yet
  WARN  heartbeat: no session_start heartbeat yet
        fix: start a new session; if none appears, the client is not loading it: run `chock sync --repo /work/demo`
```

## Help as printed

This is what `--help` prints, from the same parser. The usage line names the program as the engine's parser does. Ask the user before running the commands below:

```text
usage: chock doctor [-h] [--repo REPO] [--client CLIENT] [--client-version CLIENT_VERSION]
                    [--sessions SESSIONS] [--json]
```

The full options are on this page's HTML version, as the engine prints them.


---

Built from engine [5a4b6287a46e](https://github.com/open-coder-ai/chock/commit/5a4b6287a46e07f9f856d9bbe10622bd1ff2e021) and catalog [1e60d211c1bb](https://github.com/open-coder-ai/chock-catalog/commit/1e60d211c1bb767152c6ab0167932da06ab3a10f).
