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

# Quickstart

> Run your first coding-agent eval

## Prerequisites

Create a key under **Settings > API keys**, then set the key and a model id:

```bash theme={null}
export ANPORD_API_KEY="anp_..."
export EVAL_MODEL="gpt-5.6-sol"
```

The key needs `evals:write` and `evals:read`. Use a model id from your configuration, or find one with `anpord.evals.models({ harness: "codex" })`.

## Install

<CodeGroup>
  ```bash npm theme={null}
  npm install anpord
  ```

  ```bash bun theme={null}
  bun add anpord
  ```
</CodeGroup>

## Run an eval

Create `eval.ts`:

```ts theme={null}
import { Anpord } from "anpord";

const anpord = new Anpord();
const model = process.env.EVAL_MODEL;

if (!model) throw new Error("Set EVAL_MODEL");

const { id } = await anpord.evals.start({
  cases: [
    {
      name: "writes the requested file",
      goal: "Create hello.txt containing exactly hello",
      verify: "test \"$(cat hello.txt)\" = hello",
    },
  ],
  prompt: "Work in the current repository. {{goal}}",
  tasks: [{ harness: "codex", model, provider: "daytona" }],
  trials: 3,
});

let run = await anpord.evals.get({ id });

while (run.status === "running") {
  await new Promise((resolve) => setTimeout(resolve, 2_000));
  run = await anpord.evals.get({ id });
}

if (run.status === "failed") {
  throw new Error(run.failure ?? "Eval run failed");
}

const result = run.cells[0]?.distribution;
if (!result) throw new Error("Run produced no result");

console.log({ id, passRate: result.passRate, scored: result.scored });
await anpord.dispose();
```

Run it:

```bash theme={null}
bun eval.ts
```

Each trial runs in its own sandbox. The first scored result becomes the baseline for this case, harness, harness version, model, and sandbox provider.

<CardGroup cols={2}>
  <Card title="Write cases" icon="list-check" href="/evals/cases">
    Set the source, task, setup, and verifier.
  </Card>

  <Card title="Run in CI" icon="code-branch" href="/guides/ci">
    Fail a build on regressions or missing evidence.
  </Card>
</CardGroup>
