> ## Documentation Index
> Fetch the complete documentation index at: https://agent-compass.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 首次 Docker 运行

> 在 Docker 中运行一个 SWE-bench Verified 任务，并检查结果文件。

用这个 cookbook 验证 AgentCompass、Docker 执行、本地 GLM-5.2 endpoint 和结果写入是否正常，再运行更大规模 benchmark。

## 前置条件

* 已在仓库根目录安装 AgentCompass。
* `MODEL_BASE_URL` 指向本地 OpenAI-compatible GLM-5.2 endpoint，例如 `http://localhost:8000/v1`。
* 已导出 `MODEL_API_KEY`。如果本地 endpoint 需要鉴权，请使用真实 key；如果本地服务忽略 API key，可以使用 `EMPTY`。
* Docker 已安装、daemon 正在运行，并且可以拉取 SWE-bench 任务镜像。
* 已安装 SWE-bench 和 mini-SWE-agent 依赖：

```bash theme={null}
uv pip install -r requirements/swe.txt
uv pip install -r requirements/mini-swe-agent.txt
docker version
```

## 命令

```bash theme={null}
agentcompass run \
  swebench_verified \
  mini_swe_agent \
  glm-5.2 \
  --env docker \
  --benchmark-params '{"sample_ids":["astropy__astropy-12907"]}' \
  --model-base-url "$MODEL_BASE_URL" \
  --model-api-key "$MODEL_API_KEY" \
  --model-api-protocol openai-chat \
  --model-params '{"temperature":0}' \
  --task-concurrency 1
```

## 命令含义

| 部分                  | 含义                                            |
| ------------------- | --------------------------------------------- |
| `swebench_verified` | 加载 curated repository repair 任务的 benchmark。   |
| `mini_swe_agent`    | 在准备好的 workspace 中运行 mini-SWE-agent 的 harness。 |
| `glm-5.2`           | 写入结果并传给本地 endpoint 的模型 id。                    |
| `docker`            | 使用 SWE-bench recipe 选择的本地容器运行任务。              |

## 预期输出

结果会写到 `results/swebench_verified/glm-5.2/<timestamp>/`。

| 文件               | 用途                         |
| ---------------- | -------------------------- |
| `details/*.json` | 逐样本预测、状态和 scoring payload。 |
| `summary.md`     | 运行级指标。                     |
| `progress.jsonl` | 结构化执行事件。                   |
| `logs/*.log`     | setup 和模型调用诊断。             |

## 常见调整

| 需求                       | 调整                                      |
| ------------------------ | --------------------------------------- |
| 运行另一个 SWE-bench instance | 替换 `sample_ids` 中的 id。                  |
| 运行更多任务                   | smoke test 通过后提供多个 id，或移除 `sample_ids`。 |
| 使用另一个本地 endpoint         | 修改 model id、base URL、key 和 protocol。    |
| 不激活环境运行                  | 使用 `uv run` 前缀。                         |
