# `chock sync`

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

Recompile + rewire so the repo matches its policies (--ci/--skills for extras)

> 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 sync [-h] [--repo REPO] [--agents [AGENTS ...]] [--skip-hooks] [--check] [--ci]
           [--skills] [--committed]
```

## 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` | `.` |
| `--agents [AGENTS ...]` |  |
| `--skip-hooks` |  |
| `--check` |  |
| `--ci` |  |
| `--skills` |  |
| `--committed` |  |

## 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 5 of 21, exit code 0. Ask the user before running the commands below:

```text
$ chock sync --repo .
Installed pre-commit dispatcher to /work/demo/.git/hooks/pre-commit
Registered 1 pre-commit policy implementation(s)
Installed pre-merge-commit dispatcher to /work/demo/.git/hooks/pre-merge-commit
Registered 1 pre-merge-commit policy implementation(s)
Installed pre-push dispatcher to /work/demo/.git/hooks/pre-push
No git-pre-push.sh policies found; pre-push dispatcher unchanged
Installed commit-msg dispatcher to /work/demo/.git/hooks/commit-msg
No git-commit-msg.sh policies found; commit-msg dispatcher unchanged
Registered 2 PreToolUse/Stop hook(s) in .claude/settings.json
  claude_code: pre-tool: block+rewrite, best-effort, fail mode open (agentseam basis live-run, recorded 2026-09-07)
  claude_code: Untested: chock has not witnessed its hooks run in this client; the wiring follows agentseam's record. What you see there is wanted as evidence: open-coder-ai/agentseam issues labelled 'evidence wanted'.
Registered 2 hook entr(y/ies) in .gemini/settings.json
  gemini_cli: pre-tool: block+rewrite, best-effort, fail mode open (agentseam basis vendor-source, recorded 2026-08-28)
  gemini_cli: Untested: chock has not witnessed its hooks run in this client; the wiring follows agentseam's record. What you see there is wanted as evidence: open-coder-ai/agentseam issues labelled 'evidence wanted'.
Registered 1 agent hook(s) in .github/hooks/chock.json
  vscode_copilot: pre-tool: block+rewrite, best-effort, fail mode open (agentseam basis live-run-partial, recorded 2026-09-28)
INDEX.md: ~336 tokens (chars/4, max 2000)
Recompiled 1 policies
my-block-marker:
  claude: enforced-at-commit + best-effort at tool use (live-run)
  copilot: enforced-at-commit + best-effort at tool use (live-run-partial)
  gemini: enforced-at-commit + best-effort at tool use (vendor-source)
```

## 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 sync [-h] [--repo REPO] [--agents [AGENTS ...]] [--skip-hooks] [--check] [--ci]
                  [--skills] [--committed]
```

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).
