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

# bt scorers

> Create, list, view, delete, and invoke Braintrust scorers from the CLI.

`bt scorers` manages Braintrust scorers from the CLI. Use `bt scorers create` to create prompt-based LLM scorers and classifiers. The other subcommands are aliases for [`bt functions`](/docs/reference/cli/functions) scoped to scorers.

## Subcommands

| Subcommand                 | Description                                    |
| -------------------------- | ---------------------------------------------- |
| `bt scorers list`          | List scorers in the current project            |
| `bt scorers create [name]` | Create a prompt-based LLM scorer or classifier |
| `bt scorers view [slug]`   | View a scorer's details                        |
| `bt scorers delete [slug]` | Delete a scorer                                |
| `bt scorers invoke [slug]` | Invoke a scorer                                |

## Examples

```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
bt scorers list
bt scorers view my-scorer
bt scorers create "Helpfulness" --model gpt-5.4-nano --messages @messages.json \
  --choice-scores '{"A":1,"B":0}'
bt scorers delete my-scorer
```

`--messages`, `--choice-scores`, `--classifications`, `--metadata`, and `--response-format` accept inline values, `@PATH` to read from a file, or `-` to read from stdin.

## Command-specific flags

| Command             | Flag                         | Description                                                                                                             |
| ------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `bt scorers create` | `--name <NAME>`              | Scorer name (alternative to the positional name)                                                                        |
| `bt scorers create` | `--slug`, `-s <SLUG>`        | Unique scorer slug. Defaults to a slug generated from the name                                                          |
| `bt scorers create` | `--description`, `-d <TEXT>` | Scorer description                                                                                                      |
| `bt scorers create` | `--messages <SOURCE>`        | Chat messages as a JSON array                                                                                           |
| `bt scorers create` | `--model`, `-m <MODEL>`      | Model used by the LLM judge                                                                                             |
| `bt scorers create` | `--choice-scores <SOURCE>`   | Choice-to-score mapping for score output. Scores must be between 0 and 1                                                |
| `bt scorers create` | `--classifications <SOURCE>` | Classification labels as a JSON array                                                                                   |
| `bt scorers create` | `--allow-no-match`           | Allow a classifier to return no matching classification                                                                 |
| `bt scorers create` | `--use-cot[=true\|false]`    | Whether the scorer should use chain-of-thought reasoning. Defaults to `true`                                            |
| `bt scorers create` | `--pass-threshold <NUMBER>`  | Score threshold for passing, between 0 and 1                                                                            |
| `bt scorers create` | `--metadata <SOURCE>`        | Metadata as YAML                                                                                                        |
| `bt scorers create` | `--if-exists <MODE>`         | Conflict behavior when a scorer with the same slug already exists: `error`, `ignore`, or `replace`. Defaults to `error` |
| `bt scorers view`   | `--slug`, `-s <SLUG>`        | Scorer slug (alternative to the positional argument)                                                                    |
| `bt scorers view`   | `--id <ID>`                  | Function ID selector                                                                                                    |
| `bt scorers view`   | `--version <VERSION>`        | Version selector                                                                                                        |
| `bt scorers view`   | `--web`                      | Open the scorer in your browser                                                                                         |
| `bt scorers delete` | `--slug`, `-s <SLUG>`        | Scorer slug (alternative to the positional argument)                                                                    |
| `bt scorers delete` | `--force`, `-f`              | Skip the confirmation prompt                                                                                            |
| `bt scorers invoke` | `--slug`, `-s <SLUG>`        | Scorer slug (alternative to the positional argument)                                                                    |
| `bt scorers invoke` | `--input`, `-i <INPUT>`      | JSON input to the scorer                                                                                                |
| `bt scorers invoke` | `--message`, `-m <MESSAGE>`  | User message. Pass multiple times to provide multiple messages                                                          |
| `bt scorers invoke` | `--mode <MODE>`              | Response format: `auto`, `json`, `text`, or `parallel`                                                                  |
| `bt scorers invoke` | `--version <VERSION>`        | Pin to a specific function version                                                                                      |

## Prompt options

`bt scorers create` also accepts prompt configuration flags:

| Flag                                 | Description                                                                                                                                             |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--temperature <NUMBER>`             | Sampling temperature                                                                                                                                    |
| `--max-tokens <N>`                   | Maximum number of generated tokens                                                                                                                      |
| `--top-p <NUMBER>`                   | Nucleus sampling probability                                                                                                                            |
| `--frequency-penalty <NUMBER>`       | Frequency penalty                                                                                                                                       |
| `--presence-penalty <NUMBER>`        | Presence penalty                                                                                                                                        |
| `--stop-sequence <TEXT>`             | Stop sequence. Repeat to specify multiple sequences                                                                                                     |
| `--tool-choice <CHOICE>`             | Tool choice: `auto`, `none`, `required`, or a specific function name                                                                                    |
| `--reasoning-effort <EFFORT>`        | Reasoning effort: `none`, `minimal`, `low`, `medium`, or `high`                                                                                         |
| `--verbosity <VERBOSITY>`            | Response verbosity: `low`, `medium`, or `high`                                                                                                          |
| `--use-cache[=true\|false]`          | Whether to use Braintrust's completion cache                                                                                                            |
| `--response-format <FORMAT\|SOURCE>` | Response format: `text`, `json-object`, or a response format JSON object                                                                                |
| `--template-format <FORMAT>`         | Prompt template syntax: `mustache`, `jinja`, or `none`. Jinja is stored as Braintrust's `nunjucks` format; `nunjucks` and `jinja2` are accepted aliases |

For shared function behavior and flags, see [`bt functions`](/docs/reference/cli/functions).
