# kindgi judge-classes

> Manage judge classes, the weighted kinds of judge (list / add / set / remove)

## `kindgi judge-classes`

**Synopsis**

```sh signature
kindgi judge-classes <command>
```

Manage judge classes, the weighted kinds of judge (list / add / set / remove).

**Commands**

| Command                                                                                                                     | Description                                                                                     |
| --------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| [`kindgi judge-classes list`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes-list)     | List judge classes, newest first.                                                               |
| [`kindgi judge-classes add`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes-add)       | Add a judge class: a named kind of judge with a weight, for the tenant, a project, or an agent. |
| [`kindgi judge-classes set`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes-set)       | Change a judge class's weight, description, or who may assert it.                               |
| [`kindgi judge-classes remove`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes-remove) | Retire a judge class: no new judgments may name it; existing ones keep it.                      |

**See also**

- [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md)

### `kindgi judge-classes list`

**Synopsis**

```sh signature
kindgi judge-classes list [--tenant | --project=<id> | --agent=<id> --project=<id>] [--limit=<n>] [--cursor=<c>]
```

List judge classes, newest first.

**Options**

| Option              | Default                                           | Description                                                      |
| ------------------- | ------------------------------------------------- | ---------------------------------------------------------------- |
| `--agent <value>`   | none                                              | One agent, by id. Needs `--project`.                             |
| `--cursor <value>`  | none                                              | Resume after this cursor, from the previous page's `nextCursor`. |
| `--limit <value>`   | `25` (at most `100`)                              | The most classes to return (default 25, at most 100).            |
| `--project <value>` | none                                              | A project, by id. With `--agent`, the project the agent is in.   |
| `--tenant`          | off (with no scope flag, no scope filter is sent) | The whole tenant.                                                |

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

**Examples**

List the judge classes of the whole tenant.

```sh
kindgi judge-classes list --tenant
```

List the classes of one agent in a project.

```sh
kindgi judge-classes list --agent=acme-ops.reply-drafter --project=<project-id>
```

**See also**

- [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md)
- [`kindgi judge-classes`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes)

### `kindgi judge-classes add`

**Synopsis**

```sh signature
kindgi judge-classes add --name=<name> --weight=<w> (--tenant | --project=<id> | --agent=<id> --project=<id>) [--description=<text>] [--min-reviewer-role=standard|senior|admin] [--principal-kind=user|service ...] [--principal-id=<id> ...]
```

Add a judge class: a named kind of judge with a weight, for the tenant, a project, or an agent. The restriction flags limit who may assert it; without them, anyone who may judge the run may.

**Options**

| Option                        | Default                                                                           | Description                                                                                                    |
| ----------------------------- | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `--agent <value>`             | none                                                                              | One agent, by id. Needs `--project`.                                                                           |
| `--description <value>`       | none                                                                              | What the class is for.                                                                                         |
| `--min-reviewer-role <value>` | none (anyone who may judge the run may assert)                                    | Only reviewers of this role or above may assert the class: standard, senior, admin.                            |
| `--name <value>`              | required                                                                          | The class name, e.g. `expert`. Required.                                                                       |
| `--principal-id <value>`      | none (no restriction)                                                             | Only this user or token id may assert the class. Repeat the flag for several. Repeatable.                      |
| `--principal-kind <value>`    | none (no restriction)                                                             | Only people (`user`) or service tokens (`service`) may assert the class. Repeat the flag for both. Repeatable. |
| `--project <value>`           | none                                                                              | A project, by id. With `--agent`, the project the agent is in.                                                 |
| `--tenant`                    | off (a scope is required: `--tenant`, `--project`, or `--agent` with `--project`) | The whole tenant.                                                                                              |
| `--weight <value>`            | required                                                                          | How much a judgment of this class counts, a number of 0 or more. Required.                                     |

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

**Examples**

From [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md):

```sh
pnpm exec kindgi judge-classes add --name=expert --weight=3 --project=<project-id>
pnpm exec kindgi judge-classes add --name=expert --weight=3 --tenant --min-reviewer-role=senior --description="Order desk leads"
```

**See also**

- [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md)
- [`kindgi judge-classes`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes)

### `kindgi judge-classes set`

**Synopsis**

```sh signature
kindgi judge-classes set <judge-class-id> [--weight=<w>] [--description=<text>] [[--min-reviewer-role=standard|senior|admin] [--principal-kind=user|service ...] [--principal-id=<id> ...] | --unrestricted]
```

Change a judge class's weight, description, or who may assert it. The restriction flags replace the class's whole restriction; `--unrestricted` lifts it.

**Options**

| Option                        | Default   | Description                                                                                                    |
| ----------------------------- | --------- | -------------------------------------------------------------------------------------------------------------- |
| `--description <value>`       | unchanged | The new description.                                                                                           |
| `--min-reviewer-role <value>` | unchanged | Only reviewers of this role or above may assert the class: standard, senior, admin.                            |
| `--principal-id <value>`      | unchanged | Only this user or token id may assert the class. Repeat the flag for several. Repeatable.                      |
| `--principal-kind <value>`    | unchanged | Only people (`user`) or service tokens (`service`) may assert the class. Repeat the flag for both. Repeatable. |
| `--unrestricted`              | off       | Lift the restriction: anyone who may judge the run may assert the class.                                       |
| `--weight <value>`            | unchanged | The new weight, a number of 0 or more.                                                                         |

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

**Examples**

Change a class's weight.

```sh
kindgi judge-classes set <judge-class-id> --weight=5
```

Limit who may assert the class to senior reviewers.

```sh
kindgi judge-classes set <judge-class-id> --min-reviewer-role=senior
```

Lift the restriction.

```sh
kindgi judge-classes set <judge-class-id> --unrestricted
```

**See also**

- [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md)
- [`kindgi judge-classes`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes)

### `kindgi judge-classes remove`

**Synopsis**

```sh signature
kindgi judge-classes remove <judge-class-id>
```

Retire a judge class: no new judgments may name it; existing ones keep it.

**Options**

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

**Examples**

Retire a judge class.

```sh
kindgi judge-classes remove <judge-class-id>
```

**See also**

- [Judge a run's output](https://docs.kindgi.com/v0.1.10/guides/evals/judge-a-runs-output.md)
- [`kindgi judge-classes`](https://docs.kindgi.com/v0.1.10/reference/cli/judge-classes.md#kindgi-judge-classes)
