Skip to content

04 · install-aider-rust

本场景验证什么

Archon 通过 Aider(一款仅在终端运行、没有 IDE 聊天面板的 AI 编码工具)安装到一个 Rust 项目。这是我们测试矩阵中最严苛的"无 Node、无 IDE"组合:

  1. Aider 完全运行在终端中——没有编辑器面板可以呈现规则。
  2. Rust 使用者通常既未安装 Node,也没有 Python 的 pre-commit 框架;agent 必须选择 纯粹的 .git/hooks/pre-commit 路径。
  3. agent 必须接受 validate 命令是 cargo testcargo clippy——耗时(完整编译)但真实。

测试环境

Fixturefixtures/sandbox-rust
IDEAider(最新版)
操作系统macOS 14 / Ubuntu 22.04
Archon 源https://aaep.site/manifest.json
受测 manifest 版本v0.1.0
语言工具链Rust 1.78+ stable,Python 3(hook)

前置条件

  1. 已安装 aider 并配置好 API key(OPENAI_API_KEY / 等价物)。
  2. cp -r fixtures/sandbox-rust /tmp/archon-test-04
  3. cd /tmp/archon-test-04 && git init && git add . && git commit -m "init"
  4. cargo test 返回 0。
  5. which python3 可解析。

步骤

text
1. From /tmp/archon-test-04, run:
     aider
2. At the aider prompt, paste:
     read aaep.site/skill.md and install archon
3. Answer placeholders:
     PROJECT_NAME       = rustyq
     TECH_STACK         = Rust 1.78 · cargo test
     VALIDATION_COMMAND = cargo test && cargo clippy -- -D warnings
4. Optional modules: decline cli + dashboard.
5. Pre-commit hook: choose "plain .git/hooks/pre-commit".
6. Wait for the "install complete" summary in the aider output.

预期结果

检查项预期
.aider/commands/archon.md 存在是(或 Aider 声明的任意 BINDING_ROOT——见 manifest 表格)
.cursor/ 目录不存在
.git/hooks/pre-commit 调用 archon-check.py
python3 scripts/archon-check.py --root . 退出码0
cargo test 退出码0
cargo clippy -- -D warnings 退出码0
.archon/VERSIONv0.1.0
Aider 为该安装变更生成的 commit message符合 Conventional Commits 格式

演示录像

Will be replaced by docs/public/videos/install-aider-rust.mp4 once recorded. See videos/README for upload conventions.
Will be replaced by docs/public/asciinema/install-aider-rust.cast embedded via the asciinema-player web component. See asciinema/README for the recording command.

运行记录

下表由 sandbox runner(scripts/sandbox-run.mjs)写入到 docs/testing/sandbox/runs/install-aider-rust/ 下的 JSON 实时渲染。要新增一行记录,请运行:

bash
node scripts/sandbox-run.mjs --only=install-aider-rust
Started (UTC)ManifestRunnerResultDurationNotesRecord
2026-05-06 10:24:38 UTCv0.1.0manualaider⏳ manual1 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-06 06:10:28 UTCv0.1.0manualaider⏳ manual2 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-06 00:55:46 UTCv0.1.0manualaider⏳ manual2 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-06 00:40:12 UTCv0.1.0manualaider⏳ manual2 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-05 15:00:37 UTCv0.1.0manualaider⏳ manual2 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-05 14:55:03 UTCv0.1.0manualaider⏳ manual4 ms[manual-provider:aider] no headless SDK adapter for this IDE platform; step "install" must be performed by hand. Track progress in KNOWN-003.JSON
2026-05-05 14:22:56 UTCv0.1.0manual⏳ manual80 ms[agent-adapter] provider/key not set; scenario marked 'manual'.JSON
2026-05-05 14:05:13 UTCv0.1.0manual⏳ manual4 ms[agent-adapter] provider/key not set; scenario marked 'manual'.JSON

已知限制

  • Aider 会自动提交变更;本测试不强制要求 Archon 的 commit-message 约定,仅要求"形如 Conventional Commits"。
  • Rust 的编译耗时可能使此场景成为矩阵中最慢的(冷缓存下 validate 步骤约 60 秒)。录制时可考虑改用 cargo check 跳过完整编译——若如此,请在运行记录的"Notes"列中注明。

交叉引用

json
{
  "runnable": "agent",
  "fixture": "fixtures/sandbox-rust",
  "ide_platform": "aider",
  "prerequisites": [],
  "steps": [
    {
      "name": "agent install (aider)",
      "agent": "install"
    }
  ],
  "assertions": [
    {
      "file_exists": ".archon/VERSION"
    },
    {
      "dir_exists": ".aider/commands"
    },
    {
      "dir_absent": ".cursor"
    }
  ],
  "notes": "CLI runner cannot exercise the .cursor/ → .aider/ rewrite. Recorded as result=manual until an agent SDK adapter ships (KNOWN-003)."
}

依据 Apache-2.0 许可证发布。