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

# Tasks and packages

> What a task's package holds, and how to run it with Harbor

A task comes as a package: one Harbor task, as a plain tar. Download it with
`GET /v1/tasks/{task_id}/versions/{version}/package`. The task ID keeps its slash in the path.

## What's inside

| File | What it is |
| - | - |
| `instruction.md` | What the agent is asked to do |
| `task.toml` | The task's configuration, as we run it |
| `environment/Dockerfile` | One line: our lab image, pinned by digest |
| `tests/test.sh`, `tests/report_reward.py` | The verifier: it sends the agent's answer to us and writes the reward |

There is no rubric, reference solution or judge in it: those stay with us.

## Check the bytes

The same version always returns the same bytes. Their SHA-256 is in the `ETag` and `Repr-Digest` response headers,
and AICME sends it with the version's ID. Check it before you use the package:

```bash theme={null}
shasum -a 256 package.tar
```

## Run it with Harbor

Set two things before you run it:

* **Your model's host.** The agent's network is an allowlist, and it ships empty. Add the host your agent calls.
* **Your key, in your environment, as `AICME_API_KEY`.** `task.toml` passes it to the verifier. The key is never
  written into the package.

Optionally, set `AICME_CLIENT_REF` to your own label for the run, such as your rollout ID, up to 256 characters. The
verifier sends it as the reward's `client_ref`, and we return it with the reward. An answer you've already had
scored returns that first reward, with the `client_ref` it was sent with.

When the agent finishes, the verifier posts its answer, `/app/answer.md`, to `POST /v1/rewards` and waits for the
reward. It writes the four scores to `/logs/verifier/reward.json`, which Harbor reads, and the reward's ID and flags
to `/logs/verifier/aicme.json`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.