# kindgi corrections

> Correct a run's decisions and answer, marking them right or wrong, and move each correction until it's fixed (add / list / show / set / export / remove)

## `kindgi corrections`

**Synopsis**

```sh signature
kindgi corrections <command>
```

Correct a run's decisions and answer, marking them right or wrong, and move each correction until it's fixed (add / list / show / set / export / remove).

**Commands**

| Command                                                                                                              | Description                                                                                                                                                                                                                    |
| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [`kindgi corrections add`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-add)       | Correct a finished run: say whether its decisions (`--decisions`) and its answer (`--answer`) were right or wrong, and what should have happened, or mark an item of a ranked list (`--item` with `--yes` or `--no`).          |
| [`kindgi corrections list`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-list)     | List corrections, newest first.                                                                                                                                                                                                |
| [`kindgi corrections show`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-show)     | Show a correction with the stored copy of the run's input and output.                                                                                                                                                          |
| [`kindgi corrections set`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-set)       | Re-sort a correction, change its status, or both (the re-sort first).                                                                                                                                                          |
| [`kindgi corrections export`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-export) | Export an agent's corrections, as CSV (the default) or JSON lines: to --out's file, which takes its name only once the whole export has arrived (an existing file is kept unless --force), or printed once it has all arrived. |
| [`kindgi corrections remove`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections-remove) | Remove a correction.                                                                                                                                                                                                           |

**See also**

- [An agent's test set](https://docs.kindgi.com/v0.4.0/guides/improve/build-a-test-set.md)
- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md)

### `kindgi corrections add`

**Synopsis**

```sh signature
kindgi corrections add --run=<run-id> [--decisions=right|wrong] [--should-call=<tool>[:<json-args>]]… [--must-not-call=<tool>]… [--answer=right|wrong] [--should-say=<text>] [--why=<text>] [--item=<key> [--pointer=<json-pointer>] [--rank=<n>] (--yes | --no)] [--group=<corrector-group-id>] [--participant=<id>]
```

Correct a finished run: say whether its decisions (`--decisions`) and its answer (`--answer`) were right or wrong, and what should have happened, or mark an item of a ranked list (`--item` with `--yes` or `--no`). Each call adds to your correction of the run: it replaces the parts it gives and keeps the rest, and a part said right drops what should have happened there.

**Options**

| Option                    | Default                                                                  | Description                                                                                                                                                                                                                                   |
| ------------------------- | ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--answer <value>`        | none (at least one of `--decisions`, `--answer` or `--item` is required) | Whether the run's answer (a flow run's whole output) was `right` or `wrong`. Wrong needs `--should-say` or `--why`, now or from before.                                                                                                       |
| `--decisions <value>`     | none (at least one of `--decisions`, `--answer` or `--item` is required) | Whether the tools the agent called, and the ones it left alone, were `right` or `wrong`. Wrong needs `--should-call` or `--must-not-call`, now or from before.                                                                                |
| `--group <value>`         | none (the correction is ungrouped)                                       | The corrector group id to record the correction under. Without one, it keeps the group it has, or is unclassified.                                                                                                                            |
| `--item <value>`          | none (at least one of `--decisions`, `--answer` or `--item` is required) | Your stable id for an item of a ranked list in the output, e.g. a matched case id, with `--yes` or `--no`.                                                                                                                                    |
| `--must-not-call <value>` | none                                                                     | With `--decisions=wrong`: a tool the agent should not have called at all. Repeat for several. Repeatable.                                                                                                                                     |
| `--no`                    | off (with `--item`, exactly one of `--yes` or `--no` is required)        | The item was wrong. With `--item`.                                                                                                                                                                                                            |
| `--participant <value>`   | none                                                                     | Your opaque id for the end user who corrected, when you correct on their behalf.                                                                                                                                                              |
| `--pointer <value>`       | none (item recorded without a pointer)                                   | Where the item is in the run's output, as a JSON Pointer such as `/matches/2`.                                                                                                                                                                |
| `--rank <value>`          | none                                                                     | The item's position in a ranked list (0 = first).                                                                                                                                                                                             |
| `--run <value>`           | required                                                                 | The run that is corrected. Required.                                                                                                                                                                                                          |
| `--should-call <value>`   | none                                                                     | With `--decisions=wrong`: a tool the agent should have called, as `<tool-id>`, or `<tool-id>:<json-args>` with the arguments that matter (those left out are not compared), e.g. `acme.refund:{"amount":25}`. Repeat for several. Repeatable. |
| `--should-say <value>`    | none                                                                     | With `--answer=wrong`: what the answer should have said.                                                                                                                                                                                      |
| `--why <value>`           | none                                                                     | Why, in your words. An empty `--why=` clears it; saying a part right keeps it.                                                                                                                                                                |
| `--yes`                   | off (with `--item`, exactly one of `--yes` or `--no` is required)        | The item was right. With `--item`.                                                                                                                                                                                                            |

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

From [An agent's test set](https://docs.kindgi.com/v0.4.0/guides/improve/build-a-test-set.md):

```sh
pnpm exec kindgi corrections add --run=<run-id> --item=kb-101 --pointer=/output/articles/0 --rank=0 --yes
pnpm exec kindgi corrections add --run=<run-id> --item=kb-102 --pointer=/output/articles/1 --rank=1 --no
```

**See also**

- [An agent's test set](https://docs.kindgi.com/v0.4.0/guides/improve/build-a-test-set.md)
- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)

### `kindgi corrections list`

**Synopsis**

```sh signature
kindgi corrections list [--run=<run-id>] [--agent=<id> [--agent-version=<v>]] [--flow=<id>] [--status=<status>]… [--sorted-to=<where>]… [--from=experts|end-users|all] [--since=<date>] [--group=<corrector-group-id>] [--participant=<id>] [--project=<id>] [--limit=<n>] [--cursor=<c>]
```

List corrections, newest first. Replaced ones are left out, and removed ones unless `--status` names `removed`.

**Options**

| Option                    | Default                               | Description                                                                                                                                                                            |
| ------------------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--agent <value>`         | none                                  | Only corrections of runs of this agent.                                                                                                                                                |
| `--agent-version <value>` | none                                  | Only corrections of runs of this agent version. Needs `--agent`.                                                                                                                       |
| `--cursor <value>`        | none                                  | Resume after this cursor, from the previous page's `nextCursor`.                                                                                                                       |
| `--flow <value>`          | none                                  | Only corrections of runs of this flow.                                                                                                                                                 |
| `--from <value>`          | `all`                                 | `experts` (made under a restricted corrector group), `end-users` (made for an app's end user, with a participant id) or `all`.                                                         |
| `--group <value>`         | none                                  | Only corrections under this corrector group id.                                                                                                                                        |
| `--limit <value>`         | `25` (at most `100`)                  | The most corrections to return (default 25, at most 100).                                                                                                                              |
| `--participant <value>`   | none                                  | Only corrections made for this end user's opaque id.                                                                                                                                   |
| `--project <value>`       | none                                  | Only corrections in this project.                                                                                                                                                      |
| `--run <value>`           | none                                  | Only corrections of this run.                                                                                                                                                          |
| `--since <value>`         | none                                  | Only corrections made at or after this time: an ISO 8601 time with a zone, or a date (the start of that day in UTC).                                                                   |
| `--sorted-to <value>`     | none (sorted anywhere, or not at all) | Only corrections sorted to these (repeat, or comma-separate): `improve`, `developer` or `owner`, or `none` for unsorted ones. Repeatable.                                              |
| `--status <value>`        | none (every status but `removed`)     | Only corrections in these statuses (repeat, or comma-separate): `open`, `being-fixed`, `with-owner`, `fixed`, `wont-fix` or `removed`, or `not-fixed` for the first three. Repeatable. |

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

List an agent's corrections that aren't fixed yet, sorted to its owner.

```sh
kindgi corrections list --agent=acme-ops.reply-drafter --status=not-fixed --sorted-to=owner
```

From [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md):

```sh
pnpm exec kindgi corrections list --run=<run-id>      # newest first; replaced and removed ones are left out
```

From [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md):

```sh
pnpm exec kindgi corrections list --agent=acme-store.refunds --status=open --sorted-to=developer
```

**See also**

- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)

### `kindgi corrections show`

**Synopsis**

```sh signature
kindgi corrections show <correction-id>
```

Show a correction with the stored copy of the run's input and output.

**Options**

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

From [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md):

```sh
pnpm exec kindgi corrections show <correction-id>       # with copies of the run's input and output
```

From [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md):

```sh
pnpm exec kindgi corrections show <correction-id>
```

**See also**

- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)

### `kindgi corrections set`

**Synopsis**

```sh signature
kindgi corrections set <correction-id> [--status=open|being-fixed|wont-fix] [--sorted-to=improve|developer|owner] [--link=<url|ir-<uuid>|sc-<uuid>>] [--reason=<text>]
```

Re-sort a correction, change its status, or both (the re-sort first). Only a pin or a deploy makes one `fixed`, and only `kindgi corrections remove` makes one `removed`.

**Options**

| Option                | Default                                                        | Description                                                                                                                                                         |
| --------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--link <value>`      | none                                                           | With `--status=being-fixed`: what fixes it, a pull request URL, an Improve run (`ir-<its id>`) or a suggested change (`sc-<its id>`).                               |
| `--reason <value>`    | none                                                           | Why. `--status=wont-fix` needs one; with `--status=open`, it's why the correction went back; otherwise, it's the re-sort's reason.                                  |
| `--sorted-to <value>` | none (at least one of `--status` or `--sorted-to` is required) | `improve`, `developer` or `owner`, from `open`, `being-fixed` or `with-owner`. To `owner` makes it `with-owner`, and away from `owner`, `open`.                     |
| `--status <value>`    | none (at least one of `--status` or `--sorted-to` is required) | `being-fixed` (from `open` or `with-owner`, with `--link`), `open` (from `being-fixed` or `wont-fix`) or `wont-fix` (from anything but `removed`, with `--reason`). |

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

Say a pull request is fixing a correction.

```sh
kindgi corrections set <correction-id> --status=being-fixed --link=https://github.com/acme/agents/pull/7
```

Close a correction that won't be fixed, with why.

```sh
kindgi corrections set <correction-id> --status=wont-fix --reason='The refund policy changed.'
```

Send a correction to the developer instead.

```sh
kindgi corrections set <correction-id> --sorted-to=developer --reason='It needs a new tool.'
```

From [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md):

```sh
pnpm exec kindgi corrections set <correction-id> --status=being-fixed \
```

**See also**

- [Fix what the experts corrected](https://docs.kindgi.com/v0.4.0/guides/improve/fix-what-experts-corrected.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)

### `kindgi corrections export`

**Synopsis**

```sh signature
kindgi corrections export --agent=<id> [--project=<id>] [--format=csv|jsonl] [--status=<s>]… [--sorted-to=<s>]… [--from=experts|end-users|all] [--since=<time>] [--until=<time>] [--out=<file>] [--force]
```

Export an agent's corrections, as CSV (the default) or JSON lines: to --out's file, which takes its name only once the whole export has arrived (an existing file is kept unless --force), or printed once it has all arrived. The run's own text isn't in it, only the run's id.

**Options**

| Option                | Default                           | Description                                                                                                                                                                            |
| --------------------- | --------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--agent <value>`     | required                          | The agent whose corrections to export.                                                                                                                                                 |
| `--force`             | off                               | Replace --out's file if it exists.                                                                                                                                                     |
| `--format <value>`    | `csv`                             | `csv` (the default) or `jsonl`: one correction per line, as each one in `list`'s `data`.                                                                                               |
| `--from <value>`      | `all`                             | Whose corrections: experts, end-users, or all (the default).                                                                                                                           |
| `--out <value>`       | none (the export is printed)      | Write the export to this file.                                                                                                                                                         |
| `--project <value>`   | none                              | Only corrections in this project.                                                                                                                                                      |
| `--since <value>`     | none                              | Only corrections made at or after this time (ISO 8601 with a zone) or date.                                                                                                            |
| `--sorted-to <value>` | none                              | Only corrections sorted to these (repeat, or comma-separate): `improve`, `developer` or `owner`, or `none` for unsorted ones. Repeatable.                                              |
| `--status <value>`    | none (every status but `removed`) | Only corrections in these statuses (repeat, or comma-separate): `open`, `being-fixed`, `with-owner`, `fixed`, `wont-fix` or `removed`, or `not-fixed` for the first three. Repeatable. |
| `--until <value>`     | none                              | Only corrections made before this time (ISO 8601 with a zone) or date.                                                                                                                 |

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

From [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md):

```sh
pnpm exec kindgi corrections export --agent=<agent-id> --since=2026-10-01 --until=2026-11-01 --out=october.csv
pnpm exec kindgi corrections export --agent=<agent-id> --format=jsonl --status=not-fixed --out=not-fixed.jsonl
```

**See also**

- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)

### `kindgi corrections remove`

**Synopsis**

```sh signature
kindgi corrections remove <correction-id>
```

Remove a correction.

**Options**

Every command also takes the [global flags](https://docs.kindgi.com/v0.4.0/reference/cli.md#global-flags).

**Examples**

From [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md):

```sh
pnpm exec kindgi corrections remove <correction-id>
```

**See also**

- [Correct a run's output](https://docs.kindgi.com/v0.4.0/guides/improve/correct-a-runs-output.md)
- [`kindgi corrections`](https://docs.kindgi.com/v0.4.0/reference/cli/corrections.md#kindgi-corrections)
