GEODE 的官方像素角色 Geodi
返回展厅

GEODE

Autonomous Agent Harness

从观测,到下一步行动。

一个可以委托研究、文件处理与定时任务的本地自主智能体执行框架。

2026.02.21 — present

设计、判断、验证:Author · 实现:Claude · 审查:Codex

  • CLI公开发布 · PyPI
  • MCP 服务器已实现

审计场景经由固定顺序的各阶段生成。

主机掌握阶段顺序,各阶段的角色智能体分担工作。由此得到的种子池与选定的评分标准,成为 Petri 行为审计的输入。

种子结构图 · 依据固定提交 9e2c041 的 evals 路径绘制
GEODE 审计场景生成与 Petri 审计审计场景(种子)如何编写与审计。seed_generation 编排器掌握阶段顺序,角色智能体负责起草、审查与改进,结果导出为 survivors 目录和 meta-review 文件。Petri 审计接收种子选择,分别指定三个模型角色:审计模型扮演种子场景,目标是整个 GEODE 脚手架,评判模型按维度为对话记录评分并写入 Inspect 日志。SIL 测量读取该结果,保留下来的测量成为下一次生成的基线依据。审计模型扮演种子场景目标基础模型GEODE 包装的模型评判模型为整段对话记录评分Inspect .eval 日志归档 · 摘要SIL 测量 · measure.py由“策略搜索”一章读取baseline snapshot维度均值 · 依据handoff pointerlatest_pointer.json · priorsseed_generation/orchestrator.py阶段顺序 · PipelineStatecheckpoint · resumeagents/ · 起草Supervisor · 运行策略literature_review · 默认关闭Generator · 候选种子agents/ · 审查Proximity · 去重Critic · 审查Pilot · 可选 · 冒烟运行中略过Ranker · Eloagents/ · 改进Evolver · 改进Meta-reviewer · 下一代先验run_dir/survivors/ · 候选 .md 副本survivors.json · Elo · pilotmeta_review.json · state.jsonpetri/seeds内置种子 · *.mdpetri/runner.pygeode audit · /audit · 工具成本估算 · 默认 dry-runpetri/geode_target.pyGEODE 作为目标 · AgenticLooppetri/judge_dimsjudge_dimensions · YAML运行之外的状态文件evals/seed_generation场景编写evals/petri审计运行1按顺序运行各阶段2基线依据3 上一次的 meta-review · latest_pointer.json · priors → agents/ · 起草34 候选种子 · agents/ · 起草 → agents/ · 审查45survivors · Elo6 下一次迭代 · 从 Critic 开始 · Meta-reviewer · 下一代先验 → Critic · 审查67 导出 survivors · agents/ · 改进 → run_dir/78latest 指针1--seed-select2内置种子3 模型角色 · 三个席位 · geode audit · /audit · 工具 → 审计模型34种子场景对话5 模型调用 · GEODE 作为目标 · AgenticLoop → 目标基础模型56对话记录7 judge_dimensions · judge_dimensions · YAML → 评判模型78维度分数1维度分数2 测量结果 · Inspect .eval 日志 → SIL 测量 · measure.py23基线更新4基线依据

场景编写

编排器掌握阶段顺序,角色智能体起草并筛选候选,结果经文件契约导出。

  1. 阶段顺序 · PipelineStateseed_generation/orchestrator.py执行 · 判定: 按顺序运行各阶段agents/ · 起草

    编排器掌握阶段顺序与状态合并,各阶段的角色智能体负责执行。阶段内的工作可经 SubAgentManager 拆分执行,子智能体不再向下递归(depth 1)。

  2. 维度均值 · 依据baseline snapshot数据: 基线依据agents/ · 起草

    Generator、Critic 与 Evolver 读取所选基线的各维度均值、标准误与依据。第一代没有基线,使用默认提示词。

  3. latest_pointer.json · priorshandoff pointer数据: 上一次的 meta-reviewagents/ · 起草

    上一次运行的 meta-review 留下下一代先验和覆盖不足的维度,供本次生成参考。

  4. agents/ · 起草数据: 候选种子agents/ · 审查

    Generator 的候选依次经过 Proximity 去重、Critic 审查、Pilot(可选;冒烟运行中略过)和 Ranker 的 Elo 排名。

  5. agents/ · 审查数据: survivors · Eloagents/ · 改进

    Evolver 改进排名最高的候选,Meta-reviewer 将本次运行归纳为下一代先验。

  6. Meta-reviewer · 下一代先验agents/ · 改进执行 · 判定: 下一次迭代 · 从 Critic 开始Critic · 审查agents/ · 审查

    设置 max_iterations 后,Meta-reviewer 结束时,改进后的候选会再次经过 Critic → Pilot → Ranker → Evolver → Meta-reviewer。Supervisor、Generator 与 Proximity 不再重新运行;默认迭代次数为 0。

  7. agents/ · 改进数据: 导出 survivorsrun_dir/

    存活候选的正文以文件形式复制到 survivors/,Elo 与 pilot 分数写入 survivors.json,meta-review 与状态另行写入。

  8. meta_review.json · state.jsonrun_dir/数据: latest 指针latest_pointer.json · priorshandoff pointer

    唯一的 latest_pointer.json 记录本次运行的 seed_pool 与 meta_review 所在位置。以每次运行的产物为准;指针只是为下一次运行提供的尽力而为的辅助,写入失败仅记入日志。并非每次运行都有这两个字段。

审计运行

审计模型扮演种子(场景指令),目标是 GEODE 脚手架,评判模型为对话记录评分。三个角色是各自独立的模型席位。

  1. survivors/ · 候选 .md 副本run_dir/数据: --seed-selectgeode audit · /audit · 工具petri/runner.py

    审计接收种子选择(survivors 目录、内置种子、id 或 tag),并交给 Inspect 的 inspect_petri/audit 任务。种子生成本身不会启动审计。

  2. 内置种子 · *.mdpetri/seeds数据: 内置种子geode audit · /audit · 工具petri/runner.py

    也可以直接选择仓库内置的种子。

  3. geode audit · /audit · 工具petri/runner.py执行 · 判定: 模型角色 · 三个席位审计模型

    审计、目标与评判模型分别指定。默认为 dry-run;只有确认成本估算后才进行真实调用。三个角色使用同一提供商时,会附加同提供商偏差标记。

  4. 审计模型数据: 种子场景对话GEODE 作为目标 · AgenticLooppetri/geode_target.py

    种子是给审计模型的场景指令。审计模型主导对话,只有启用 target_tools 时才能创建工具与工具结果。

  5. GEODE 作为目标 · AgenticLooppetri/geode_target.py数据: 模型调用目标基础模型

    整个 GEODE AgenticLoop(工具、hook、记忆)被包装成一个模型 API,因此受审计的目标是 GEODE 脚手架,而不只是基础模型。

  6. GEODE 作为目标 · AgenticLooppetri/geode_target.py数据: 对话记录评判模型

    评判模型将每个样本的完整对话记录读一遍,并按维度评分。

  7. judge_dimensions · YAMLpetri/judge_dims执行 · 判定: judge_dimensions评判模型

    所选的评判维度 YAML 决定评分维度。这是行为审计,与任务完成是不同的测量。

  8. 评判模型数据: 维度分数Inspect .eval 日志

    Inspect .eval 日志与摘要会被归档。归档失败只会被记下,不会阻碍审计结果。

测量 → 下一次生成

SIL 用审计分数作出判定,保留下来的测量成为下一次种子生成的基线依据。这并不表示该环节在每个实验活动中都自动运行过。

  1. 评判模型数据: 维度分数Inspect .eval 日志

    Inspect .eval 日志与摘要会被归档。归档失败只会被记下,不会阻碍审计结果。

  2. Inspect .eval 日志记录 · 观测: 测量结果SIL 测量 · measure.py

    SIL 的 measure.py 运行审计子进程,并据其结果计算适应度。

  3. SIL 测量 · measure.py数据: 基线更新维度均值 · 依据baseline snapshot

    SIL 的 ledger 将保留的测量写为基线。选定基线(自动或显式)时,种子生成会读取该依据。

  4. 维度均值 · 依据baseline snapshot数据: 基线依据agents/ · 起草

    Generator、Critic 与 Evolver 读取所选基线的各维度均值、标准误与依据。第一代没有基线,使用默认提示词。

所有连接以相同粗细显示。选择一个流程,即只突出显示其路径,并标出步骤编号。

  • 实线 · 请求、候选与结果的流向
  • 虚线 · 执行、判定、授权、配置
  • 长点划线 · 记录与观测,与判定分离
  • 粗黑线 · 所选流程;数字表示顺序
  • 方框 · 代码或记录的边界,顶部标注路径
  • 内层小框 · 该边界内的组件
  • 虚线框 · 该边界之外
  • 编排器 · 审计入口
  • 审计目标 · 评分维度
  • 产物 · 状态文件
  • 角色智能体 · 内置种子

编排器固定首轮顺序与重复顺序。配置、已注册的角色与续接点可能跳过部分阶段,并非每个实验活动都运行了全部阶段。状态文件的位置取决于环境,因此不显示路径。

三个角色
种子是由人编写或生成的场景指令;审计模型负责扮演它,目标是被审计的 GEODE 脚手架,评判模型为对话记录评分。分数与日志是评判模型的产出。
测量的是什么
Petri 审计为行为维度打分。它不是任务完成率,也不是产品质量保证。