Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
superpowers-evals — 行为评估实验室(Quorum)服务于超级力量项目,该项目通过QA代理驱动真实的编码代理CLI(如Claude、Codex、Gemini、Kimi等),并根据场景标准和确定性后检查对其工作流合规性进行评分。 | Kitploit
工具/GitHubGitHub/prime-radiant-inc/superpowers-evals
脚本与自动化渗透测试实用工具与框架学习与教育AI 安全实验室与实践
GitHubprime-radiant-inc/superpowers-evals

superpowers-evals

行为评估实验室(Quorum)服务于超级力量项目,该项目通过QA代理驱动真实的编码代理CLI(如Claude、Codex、Gemini、Kimi等),并根据场景标准和确定性后检查对其工作流合规性进行评分。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
97122天前Kitploit 审核通过

Superpowers Evals

面向 superpowers 的行为评估实验室。 Quorum 驱动真实的编码代理 CLI(Claude, Codex, Antigravity, Gemini, Kimi, OpenCode, Pi 和 Copilot)通过 Gauntlet QA 代理,并根据场景 验收标准以及确定性后检查进行评分。

代码、CLI、路径和内联文本均使用小写 quorum;大写形式 Quorum 出现在标题和角色表中。

这不是一个通用的基准测试套件。它是一个面向工作流合规性的评估实验室: 技能触发、工作树行为、子代理协调、验证反射、审查质量和成本塑造模式。

Safety Model

quorum 有两种截然不同的执行模式:

  • 静态/单元检查 对公共 CI 是安全的。它们运行 biome、tsc 和 bun test。它们不调用模型 API,也不启动代理 CLI。
  • 实时评估 是受信任维护者的操作。它们以宽松模式启动 Claude Code、 Codex CLI、Antigravity CLI、Gemini CLI、Kimi Code、OpenCode CLI、Pi CLI 或 Copilot CLI,并收集原始转录、工具调用、文件系统状态和会话日志。

公共 CI 必须保持在该线的静态/单元侧。切勿向公共 CI 添加 API 密钥、实时 quorum run … 调用或危险模式代理启动。

Live Eval Risk

实时评估运行被测的编码代理,具有广泛的执行权限:

  • Claude 使用 --dangerously-skip-permissions。
  • Codex 使用 --dangerously-bypass-approvals-and-sandbox。
  • Antigravity 使用 --dangerously-skip-permissions,并依赖本地 浏览器/钥匙串认证进行 agy。
  • Gemini 使用 --skip-trust --approval-mode=yolo;API 密钥认证为默认, 可选 OAuth 认证用于受信任的本地运行。
  • Kimi 使用 --yolo。
  • OpenCode 使用 --dangerously-skip-permissions。
  • Pi 使用显式的工具允许列表和运行本地配置目录中的 API 密钥认证。
  • Copilot 使用 --allow-all。

quorum 将每个编码代理的 HOME(以及 XDG 基础目录和 TMPDIR)固定到 <run>/home 下的单次运行的临时主目录 — 启动器将 src/agents/home-env.ts (xdgHomeEnv,单一事实来源)构建的 $QUORUM_HOME_ENV 令牌拼接进去。 每个代理的配置目录折叠在该主目录下(Claude 的 .claude,Codex 的 .codex, Gemini 的 .,OpenCode 的 .,Antigravity 的 .,Copilot 的 .copilot, Kimi 的 .kimi-code,Pi 的 .pi/agent),因此编码代理通过自己的 $HOME 默认值找到其配置,并且永远不会看到主机的真实 、、 、、、、 或其他与主目录相关的状态、已安装的插件或先前的会话。 预配在启动前将配置 — 以及每个代理所需的主机 OAuth 凭据 — 安装到该临时 主目录中,因此没有运行时登录。Copilot 还将本地 Superpowers 插件放置在 隔离的主目录下,使用允许列表的外部环境,并在运行目录内写入一个包含机密的 chmod-0600 。这缩小了爆炸半径,但并非沙箱。OpenCode 和 Copilot 启动器还使用允许列表环境,但实时编码代理仍然以广泛的文件系统和 命令执行权限运行。

仅在受信任的本地环境中运行实时评估:

  • 仅导出所选编码代理所需的 API 密钥。
  • 避免在环境中运行带有广泛的生产或个人机密。
  • 将 results/、原始会话日志、会话状态/工具调用产物以及 Gauntlet 代理输入视为敏感信息。
  • 未经检查,不要提交或粘贴原始运行产物。

Quick Start

安装并运行静态门禁:```bash bun install bun run check bun run quorum check

root@kitploit:~
在容器外运行一个本地或紧急访问场景:```bash
export SUPERPOWERS_ROOT=/path/to/superpowers
export ANTHROPIC_API_KEY=...
bun run quorum run scenarios/triggering-writing-plans --coding-agent claude
bun run quorum show <run-dir>

Gauntlet-Agent(QA 驱动程序)默认通过 ANTHROPIC_API_KEY 向 Anthropic 进行身份验证。如果想改用已登录的 Claude 订阅来驱动它,请在环境(例如 .env)中设置 CLAUDE_CODE_OAUTH_TOKEN(从 claude setup-token 获取);测试工具会传递该令牌,而 gauntlet 优先使用它而不是 API 密钥。注意:订阅具有针对交互式使用设计的用量限制——高并发 run-all 批次可能会达到这些限制,因此 API 密钥仍然是处理高负载的更好选择。

代理名称包括 claude、codex、antigravity、gemini、kimi、opencode、pi 和 copilot。并非每个场景都适用于每个代理。

重大变更(凭证维度):claude-haiku 和 claude-sonnet 不再是独立的代理名称。要针对 Sonnet 或 Haiku 运行 Claude 测试工具:```bash bun run quorum run scenarios/ --coding-agent claude --credential sonnet bun run quorum run scenarios/ --coding-agent claude --credential haiku

root@kitploit:~
The `claude` agent's default credential is `opus`.

## 共享评估设备

共享远程实时评估设计为从受信任的设备主机运行,具有一个经过批准的凭据包、精确的仓库/引用来源、主机锁定和可恢复的任务记录。一旦存在,代理应在配置的主机上使用设备助手:```bash
evals-appliance doctor --json
evals-appliance prepare --json --superpowers-ref <branch-tag-or-sha>
evals-appliance run-all --json --detach \
  --superpowers-ref <branch-tag-or-sha> \
  -- --tier sentinel \
     --coding-agents claude,codex,kimi \
     --jobs 4
evals-appliance status --json <job-id>
evals-appliance show --json <job-id>
evals-appliance costs --json <job-id>
evals-appliance cancel --json <job-id>

目标接口和操作规则位于 docs/appliance-runbook.md,并由 docs/superpowers/specs/2026-06-18-shared-eval-appliance-design.md 提供支撑。 doctor 是只读的。prepare 返回 lock_busy,而不是在实时作业活跃时更改引用。 主机访问和特定于提供商的应急程序有意未包含在此公共仓库中;有关详细信息,请使用私有运维手册。 原始的 bun run quorum ... 和 scripts/evals-container exec quorum ... 仍作为共享实时评估的本地或可信应急工作流保留。

容器运行时

Docker 运行时是实际套件运行的主要方案。它在主机上保留评估检出、正在测试的 Superpowers 检出、凭据、认证源以及所有运行工件,而 quorum 则在丰富的 Ubuntu 工作空间容器内运行。

创建 .env.container 或将显式环境文件传递给 up:```dotenv ANTHROPIC_API_KEY=... OPENAI_API_KEY=... OPENROUTER_API_KEY=... # Pi default: OpenRouter GLM 5.2 GEMINI_API_KEY=... # or GEMINI_AUTH_TYPE=oauth-personal KIMI_MODEL_API_KEY=... # unless using mounted Kimi OAuth PI_PROVIDER=... # only for raw/custom Pi env auth outside the default credential PI_MODEL=... PI_API_KEY=... COPILOT_GITHUB_TOKEN=...

root@kitploit:~
然后构建、启动并验证容器:```bash
scripts/evals-container build
scripts/evals-container down || true
scripts/evals-container --env-file .env.container up
scripts/evals-container exec evals-tool-versions
scripts/evals-container exec quorum check

包装器将此 evals 检出点挂载到 /workspace/evals,父级 Superpowers 检出点挂载到 /workspace/superpowers,主机的 results/ 挂载到 /workspace/evals/results。当默认父级路径不是被测系统时,使用 --superpowers-root <dir> 覆盖 Superpowers 检出点。

镜像构建需要本地的 Gauntlet 检出点。包装器从 GAUNTLET_ROOT 或 Bun 全局 bun link 安装中自动发现;使用 --gauntlet-root <dir> 连同 build 显式选择。

凭据是只读挂载。默认情况下,up 首先使用 .env.container,然后使用 .env,并将第一个找到的文件挂载到 /run/evals/credentials.env。在 up 之前传递 --env-file <file> 来显式选择。包装器不会整体传递主机环境;只有容器内的 quorum 垫片会加载 dotenv 文件,因此 scripts/evals-container exec bash ... 不会自动接收到实时的 eval 凭据。在更改现有容器上的 env-file 挂载之前使用 down。

OAuth/文件认证源也是只读的。现有的 ~/.codex、~/.gemini、~/.kimi-code 和 ~/.pi 目录分别挂载到 /auth/codex、/auth/gemini、/auth/kimi-code 和 /auth/pi。使用 --auth codex=<dir>、--auth gemini=<dir>、--auth kimi=<dir> 或 --auth pi=<dir> 来覆盖某个源。

从哨兵套件开始:```bash scripts/evals-container exec quorum run-all
--tier sentinel
--coding-agents claude,codex,kimi
--jobs 4

for agent in gemini opencode pi copilot; do scripts/evals-container exec quorum run-all
--tier sentinel
--coding-agents "$agent"
--jobs 1 done

root@kitploit:~
对于完整的就绪套件,运行相同的命令但不带 `--tier sentinel`。
`run-all` 将每个批次写入 `results/batches/<batch-id>/` 目录下,并将每次运行写入 `results/<scenario>-<agent>-<os>-<timestamp>-<nonce>/` 目录下;使用以下命令渲染一个批次:```bash
scripts/evals-container exec quorum show <batch-id>

run-all 会定期打印运行状态的心跳信息(⋯ … · 运行中 N/任务 · 已完成 D · 排队中 Q · [agent:scenario, …]);可通过 --heartbeat-seconds <n> 调整(0 表示禁用)。

中断一个批次(Ctrl-C 或 exec 会话关闭)会优雅地停止它:队列被取消,正在运行的任务会收到 SIGINT 信号(并记录为已停止),批次页脚仍会写入,因此 finished_at 永远不会为空。

容器运行时不会挂载 Docker 套接字、发布仪表板端口或包含桌面 IDE。镜像省略了 Antigravity 的桌面 agy 安装程序;在出现无头安装路径之前,请在主机端运行 Antigravity:```bash bun run quorum run-all --coding-agents antigravity --jobs 1

root@kitploit:~
对于分组全代理主机扫描、每个代理的凭据、认证挂载详情以及故障排除,请参阅 [docs/coding-agent-care-and-feeding.md](https://github.com/prime-radiant-inc/superpowers-evals/blob/HEAD/docs/coding-agent-care-and-feeding.md)。

## Windows 运行时

对于 Windows 11 上的评估,使用 `--os windows`(仅限 Linux+KVM 主机):```bash
bun run quorum run scenarios/<name> --coding-agent claude --os windows

请参阅 docs/windows/eval-runtime.md 了解设置与部署。

规范角色

务必分清角色;混淆它们是最常见的分类错误。 这些名称在文档、CLI 输出、代码、文件名以及提交信息中随处可见。

一次运行涉及两个 LLM——Gauntlet-Agent(QA 测试者)和 Coding-Agent(被测对象)。模型独立、日志独立、Token 成本独立。

操作指南

  • docs/scenario-authoring.md - 场景结构、故事/AC 编写、设置助手、检查动词以及作者需避免的陷阱。
  • docs/appliance-runbook.md - 共享远程设备对智能体的操作规则。
  • docs/coding-agent-care-and-feeding.md - 凭据、扫描、各智能体运行时说明及故障排除。
  • docs/adding-a-coding-agent.md - 添加新智能体目标、启动器、供应器、标准化器及冒烟测试的检查清单。
  • docs/superpowers/skills/triaging-a-failing-eval.md - 未通过运行的归因图谱。
  • docs/baselines/ - 各后端的当前已知良好基线。

凭据轴

评估维度为 (场景, 编码智能体, 凭据, 操作系统)。credentials.yaml 位于仓库根目录,定义命名凭据;每个条目声明模型、传输协议(api:openai-chat、openai-responses、anthropic 或 gemini)、可选的 base_url(用于非默认端点)、认证类型(api-key、subscription 或 oauth)、可选的 api_key_env、所服务的运行时系列(harnesses),以及可选的调度器覆盖(max_concurrency、launch_spacing_seconds)和一个 compat 块(、)。

每个智能体 YAML 声明一个 default_credential。运行时覆盖:```bash

run against a named credential

bun run quorum run scenarios/ --coding-agent claude --credential sonnet

run-all against multiple credentials (incompatible cells are skipped)

bun run quorum run-all --coding-agents claude,opencode --credentials sonnet,haiku,opencode_gpt5 --jobs 4

root@kitploit:~
`quorum check` 验证 `credentials.yaml` 和每个代理的 `default_credential`。

调度器使用凭据的 **limiterKey** 来决定其并发上限和速率限制锁存器——如果设置了凭据的 `base_url`,则为该值,否则为凭据名称,与它的 `api` 连接(例如 `https://…/v1|openai-chat`,或者对于没有 `base_url` 的本机凭据为 `opus|anthropic`)。共享同一个 limiterKey 的单元共享一个上限和一个速率限制锁存器:任何单元上的速率限制响应会立即跳过该端点的所有剩余排队单元。

标准命名凭据(参见 `credentials.yaml`):`opus`、`sonnet`、`haiku`(Claude 工具集)、`codex_sub`(Codex 订阅)、`kimi_default`、`openrouter_glm_5_2`(Pi 默认)、`pi_default`(原生 Pi OAuth 可选)、`opencode_gpt5`、`gemini_default`、`serf_default`、`glm_5_2_chat`、`glm_5_2_responses`、`ollama_local`。

### 外部 Serf 活动

短期的 Serf 模型/提供者活动使用外部凭据文件,而不是仓库的标准 `credentials.yaml`。通过 `--credentials-file` 显式传递给 `quorum run`、`quorum run-all` 或 `quorum check`。将真实的 campaign YAML 和所有原始运行产物保留在 Git 外部:YAML 包含路由标签和选定的 API 密钥环境变量名称,从不包含密钥值。

每个活动预设必须精确指定一个模型和一个提供者,禁用回退,并且不包含提示、采样、推理、工具或令牌限制的覆盖。通过受信任的运行时凭据包提供其专用密钥。密钥必须强制执行活动的预期数据策略,设置活动支出上限,并且对于共享容量的活动,没有 BYOK 绑定。BYOK 比较是一个单独的活动,具有单独的密钥和候选文件。

在分发之前,`run-all` 解析外部文件一次,并将其标准快照写入 `results/batches/<batch-id>/credentials.snapshot.yaml`;每个子进程都会收到该不可变快照。直接通过 `quorum run` 会将其标准快照写入其运行目录下。在批次开始后编辑源 YAML 无法更改后续单元。快照包含模式已知的路由元数据和环境变量名称,而不是机密值,但它们仍然是敏感运行产物的一部分。

先运行代理中立的冒烟测试,然后仅对最终冒烟判定为 `pass` 的凭据运行昂贵的场景:```bash
quorum run-all \
  --scenarios 00-quorum-smoke-hello-world \
  --include-drafts \
  --coding-agents serf \
  --credentials-file /secure/campaign.yaml \
  --credentials serf_example_a \
  --jobs 1

quorum run-all \
  --scenarios serf-builder-fractals \
  --coding-agents serf \
  --credentials-file /secure/campaign.yaml \
  --credentials serf_example_a \
  --jobs 1

--jobs 1 是顺序延迟/成本基线。一个矩阵单元代表一次付费尝试;活动调度器不会自动重试或重复某个单元。使用 quorum costs <batch-id> 渲染带标签的比较。只有最终的 pass 行被视为可比;fail 和 indeterminate 行保持可见但不参与排名,缺失的测量结果显示为缺失而非零。已收取费用、估算费用和差异列是编码代理(Coding-Agent)的成本。现有的 --with-gauntlet 列则是独立的 Gauntlet-Agent 测试框架开销。

实时验收是受信任维护者的人工操作,绝不能依赖公共 CI 自动化:

  1. 使用 --jobs 1 运行一个已知能用的 hello-world 单元。
  2. 检查 verdict.json、trajectory.json、openrouter-generations.json、coding-agent-token-usage.json 以及 quorum costs <batch-id> 的内容。确认模型、提供商、预设版本、BYOK 为 false、令牌/缓存桶、持续时间、已收取费用、估算费用、差异以及候选标签(包括量化方式和目录日期)。
  3. 使用 --jobs 1 运行一个 Fractals 单元;要求最终结果为 pass,通过所有确定性检查,完成主分支检出交付,并生成完整的比较行。
  4. 使用 --jobs 2 运行两个 hello-world 候选;确认归属清晰,没有键、生成结果、标签或经济数据的交叉污染。
  5. 只有在前述步骤全部通过后,才能为每个通过冒烟测试的候选运行一个顺序 Fractals 单元。

仅将经过发布审查、去敏处理的结论保存到带日期的 docs/experiments/ 笔记中,同时记录失败和成功案例。外部活动 YAML 和原始工件保留在 Git 仓库之外。

核心命令```bash

bun run quorum list bun run quorum new my-new-scenario bun run quorum check my-new-scenario bun run quorum run scenarios/ --coding-agent bun run quorum run scenarios/ --coding-agent claude --credential sonnet bun run quorum run-all --coding-agents claude,codex --jobs 2 bun run quorum run-all --coding-agents claude --credentials sonnet,haiku --jobs 2 bun run quorum show bun run quorum costs

root@kitploit:~
`quorum check` 不带参数时验证每个场景和 `credentials.yaml`。
`run-all` 对每个选定的 Coding-Agent 运行每个包含的场景,并根据每个场景的 `# coding-agents:` 指令进行过滤。

## 判定与产物

quorum 产生三值判定:

- `pass` - Gauntlet-Agent 通过且所有后检查通过。
- `fail` - Gauntlet-Agent 失败,或后检查失败。
- `indeterminate` - 设置/预检查/捕获/quorum 失败,Gauntlet `investigate`,或当存在追踪检查时追踪为空。

退出码:`pass` 为 0,`fail` 为 1,`indeterminate` 为 2。

每次运行在 `results/` 下生成一个目录:```text
results/<scenario>-<coding-agent>-<os>-<timestamp>-<nonce>/
|-- verdict.json                     composed result; start here
|-- gauntlet-agent/                  Gauntlet-Agent evidence
|-- coding-agent-workdir/            files the Coding-Agent produced
|-- home/                            throwaway Coding-Agent HOME
|-- trajectory.json                  normalized ATIF trace
`-- coding-agent-token-usage.json    Coding-Agent token cost, when priced

results/ 被 .gitignore 忽略,因为运行产物可能包含敏感信息:对话记录、凭据、工具调用以及文件系统状态。

安全检查

这些是持续集成和常规 PR 中预期的检查:```bash bun run check # biome ci . && tsc --noEmit && bun test — the full gate bun run quorum check # validate every scenario directory

root@kitploit:~
`bun run check` 是单一关卡(Biome lint/format + full-strict `tsc` + `bun test`);单独的步骤是 `bun run lint`、`bun run typecheck` 和 `bun test`。

## 架构

quorum 是 **基于 Bun 的 TypeScript**。控制台是 `bun run quorum <cmd>`(一个位于 `src/cli/index.ts` 的 [commander](https://github.com/tj/commander.js) CLI,也作为 `quorum` 二进制文件暴露);关卡是 `bun run check`(Biome + full-strict `tsc` + `bun test`)。

跨越进程和文件边界的形状——`verdict.json`、批量索引、经济指标、Gauntlet 结果、agent YAML——是位于 `src/contracts/` 的 **zod 模式**,在每个边界进行验证,因此格式错误的外部文件会大声失败,而不是破坏裁决。`cli/` 层解析命令并分派到 `runner/` 管道(一个场景 × 一个 Coding-Agent)或 `run-all/`(矩阵)。每个 Coding-Agent 的差异存在于两个以 agent 名称键控的并行扇出中:`agents/` 在每次运行的一次性 `$HOME`(`<run>/home`)下植入 agent 的配置,而 `normalize/` 将该 agent 的会话日志转换为统一的工具调用轨迹。实时的 agent-CLI 调用和其他非封闭子进程通过 `agents/command-runner.ts` 接缝,因此单元套件注入假对象,从不启动真实的 CLI。`scheduler/` 是 `run-all/` 下共享的并发引擎。仪表板是一个单独的只读包,扫描 `results/` 和 `grid-manifest.json`。`env.ts` 是唯一读取 `process.env` 的模块。```text
src/
  cli/                  commander CLI: run, list, new, check, show, costs, run-all, grid-manifest
    index.ts              command wiring + run / costs / run-all / grid-manifest actions
    render.ts             verdict renderer for triage (quorum show)
    render-batch.ts       batch-matrix renderer (quorum show <batch>)
    resolve-target.ts     run/batch target resolution; scenario.ts scenario loading
  runner/               per-run orchestration (one scenario × one Coding-Agent)
    index.ts              setup → pre-checks → gauntlet drive → capture → post-checks → compose
    context.ts            populate the Gauntlet-Agent context dir (HOWTO + launch-agent shim)
    phase.ts              phase.json (setup/agent/checks) for the dashboard
    stopped.ts            SIGINT → stopped (indeterminate) verdict; errors.ts staged run-error stages
  agents/               per-Coding-Agent provisioning (resolveAgent dispatch)
    index.ts              agent registry + dispatch (incl. the inline Claude/Default adapters)
    command-runner.ts     injectable subprocess seam (live CLIs faked in tests)
    <agent>.ts            codex/gemini/kimi/opencode/pi/copilot/antigravity adapters
  normalize/            session-log → normalized tool-call trace, one module per dialect
  capture/              session-log snapshot/diff + tool-call capture + token usage; cwd-filter
  obol/                 obol cost estimation (session-log + gauntlet sidecar)
  economics.ts          token-cost composition → coding-agent-token-usage.json
  composer.ts           three-valued verdict from the gauntlet + checks layers
  checks/               sources prelude.sh + checks.sh, runs pre()/post(), collects check records
    prelude.sh            bare-verb DSL: defines each check verb as a bash function that
                          delegates to the TS dispatchers (no bin/ shims, no PATH prepend)
  scheduler/            central concurrency dispatcher (one global slot pool, per-harness limits + spacing)
  run-all/              scenario × Coding-Agent matrix over the scheduler; batch index
  setup-helpers/        scenario fixture builders + the `setup-helpers` CLI (dispatch registry)
  contracts/            zod schemas at the JSON boundaries (verdict, batch, economics, gauntlet, agent-config)
  scaffold.ts           `quorum new` / `quorum check`
  setup-step.ts         runs scenario setup.sh (sources prelude.sh via BASH_ENV so bare verbs resolve)
  story-meta.ts         story.md frontmatter (quorum_max_time, quorum_tier, status)
  env.ts                the single process.env boundary
  paths.ts              repo root, UTC stamps, nonces
  invariant.ts          assertNever exhaustiveness guard for closed unions
  check/                typed check verbs: fs-verbs.ts (file/git/env + bootstrap),
                        dispatch.ts (table + `not`), transcript-dispatch.ts, record.ts (sole emitter)
  cli/check-tool.ts     the dispatcher behind every check verb function (file-exists,
                        file-contains, command-succeeds, git-*, assert-checkout-clean,
                        requires-tool, not, files-exist, the *-installed/hook/extension
                        checks); check-transcript.ts and setup-helpers/cli.ts are the
                        other two dispatchers the prelude delegates to
  cli/list-check-verbs.ts  prints the FS_VERBS verb set the prelude loops over (drift-proof)
coding-agents/          per-Coding-Agent material:
  <name>.yaml             CLI config
  <name>-context/         HOWTO prose and launchers for the Gauntlet-Agent
scenarios/              scenarios (one directory each)
fixtures/               shared static fixture repos (e.g. template-repo/, sdd-*/)
test/                   bun test suite
docs/                   design notes, specs, plans, testing protocols, baselines
packages/dashboard/     read-only web matrix UI: scan/view, typed HTML templates, SSE bus, Bun.serve

分类

对未通过的运行进行分类从以下开始:```bash bun run quorum show []

root@kitploit:~
然后使用 [docs/superpowers/skills/triaging-a-failing-eval.md](https://github.com/prime-radiant-inc/superpowers-evals/blob/HEAD/docs/superpowers/skills/triaging-a-failing-eval.md) 进行归因图谱。对于特定于代理的认证、配置和捕获检查,请使用 [docs/coding-agent-care-and-feeding.md](https://github.com/prime-radiant-inc/superpowers-evals/blob/HEAD/docs/coding-agent-care-and-feeding.md)。

关于当前已知良好的基线,请参见 [docs/baselines/](https://github.com/prime-radiant-inc/superpowers-evals/blob/HEAD/docs/baselines/)。

## 贡献规则

本仓库继承了 `superpowers` 的质量标准。

- 每个 PR 只处理一个问题。
- 不要提交生成的运行产物或密钥。
- 不要在公共 CI 中添加实时评估。
- 使用 PR 模板,并对触及 Coding-Agent 配置、Shell 执行、设置辅助工具、检查工具或 Gauntlet-Agent 输入的更改解释安全/评估实验室风险。
- 对影响行为塑造的评估方法论的更改需要证据,而不仅仅是文字描述。

## 父仓库子模块更新

`superpowers-evals` 作为 `evals` 子模块被 `superpowers` 消费。
在此处的任何 PR 合并到 `main` 后,需在父仓库 `superpowers` 中针对 `dev` 分支发起一个后续 PR,将 `evals` 子模块指针升级到已合并的 `superpowers-evals` 提交。

在存在该父仓库子模块更新 PR 之前,不要认为 `superpowers-evals` 的合并已完全传播。

---

安全报告 → [SECURITY.md](https://github.com/prime-radiant-inc/superpowers-evals/blob/HEAD/SECURITY.md)。
下载工具
~/.claude
~/.codex
~/.gemini
~/.kimi-code
~/.pi
~/.copilot
~/.config
.copilot-env
角色是什么所在位置/文件
Gauntlet通用 QA 框架;gauntlet CLI。一个黑盒测试工具。仓库 github.com/prime-radiant-inc/gauntlet;PATH 上作为 gauntlet(通过 bun link 或 GAUNTLET_ROOT)
Gauntlet-AgentGauntlet 内部的 LLM,驱动 Coding-Agent 并基于故事的 AC 进行自评分。模型例如 claude-sonnet-4-6;事件流 → <run>/gauntlet-agent/results/<runId>/run.jsonl;判定 → result.{json,md}
Coding-Agent被测智能体——即 SUT。实例:Claude、Codex、Antigravity、Gemini、Kimi、OpenCode、Pi、Copilot。配置与会话日志位于其一次性 $HOME,路径为 <run>/home/…;其写入的文件 → <run>/coding-agent-workdir/
QuorumTypeScript/Bun 封装器。负责设置、Coding-Agent 适配、确定性检查以及最终判定。仓库 superpowers-evals/src/;<run>/verdict.json
thinking_format
max_tokens_field