参考来源与版本锚定
本页目标不是重复 README 的安装说明,而是把 Autoresearch / ARIS 拆成适合站内教学的结构图:它到底把哪些研究控制点做成了协议,哪些部分仍依赖 Claude Code 的宿主能力。
官方来源:uditgoenka/autoresearch、README、COMPARISON,以及 Karpathy autoresearch 的方法源头;当前也补充对照 wanshuiyin/Auto-claude-code-research-in-sleep,作为 ARIS(Auto-Research In Sleep) 这条延伸分支。
本地锚点:reference/reference_agent/autoresearch/README.md、COMPARISON.md、claude-plugin/.claude-plugin/plugin.json、claude-plugin/skills/autoresearch/SKILL.md、claude-plugin/commands/autoresearch/、guide/,以及 reference/reference_agent/aris/README.md、skills/、docs/、templates/。
01 · 为什么 Autoresearch / ARIS 值得单独拆
Autoresearch / ARIS 最值得讲的,不是“它有很多子命令”,而是它把一个原本很散的研究 / 改进过程,压缩成了一套很清晰的 loop 协议:先定义 goal、metric、scope、verify,再让系统在小步修改、机械验证、自动回滚和 git memory 之间持续迭代。
这使它更像一个研究循环协议层,而不是厚重工作台。它依赖 Claude Code 作为宿主,但在宿主之上补了一层“如何定义研究改进问题并持续迭代”的方法面。
02 · 先拆成五层:Autoresearch 到底在拼什么
| 层次 | 关键锚点 | 解决的问题 |
|---|---|---|
| 宿主层 | Claude Code / plugin 安装路径 | 循环并不是自己凭空运行,而是借宿主的会话、文件与命令能力 |
| 协议层 | README 的 goal / metric / scope / verify / rollback / git memory | 如何把“改进”定义成可机械验证的任务 |
| 主循环层 | /autoresearch 主命令与 guide/autoresearch.md | 如何做 one change per iteration、验证、保留或回滚 |
| 子命令面 | plan / security / ship / debug / fix / scenario / predict / learn / reason | 把不同研究或发货动作拆成可复用 protocol |
| 知识与文档层 | guide/、references、COMPARISON | 让这个 loop 不只是 prompt,而是一套可教学、可演化的方法系统 |
所以 Autoresearch / ARIS 更像一个 plugin-style research loop protocol,而不是完整 studio。
[插图提示词]
用途:画出 Autoresearch 的五层总图,让读者先分清宿主、协议、主循环、子命令面和知识层。
形式:分层结构图;优先 Mermaid。
提示词:画一个 Autoresearch 五层架构图,底部是 Claude Code 宿主能力,中间是 goal/metric/scope/verify/rollback/git memory 协议层,再上面是 /autoresearch 主循环,右侧展开 plan/security/ship/debug/fix/scenario/predict/learn/reason 子命令面,顶部是 guide 和 comparison 文档层,箭头标出配置、迭代、验证、回滚和日志沉淀。
Mermaid 更适合:是。
03 · 它的控制面到底在哪:不是界面,而是那套 loop contract
Autoresearch / ARIS 的主脑不在某个页面,也不在某个 dashboard,而在那套很明确的 contract:goal、metric、scope、verify、guard、rollback、git memory。只要这些条件定义清楚,它就能把“一个模糊的改进愿望”转成连续迭代的问题。
也正因为这样,它特别适合做方法教学。和厚重 studio 相比,Autoresearch / ARIS 的优点是:你更容易一眼看清“系统到底靠什么在继续迭代”。它的控制点非常显式,没有太多 UI 壳层把真正逻辑藏起来。
04 · 九条子命令不是散功能,而是扩展协议面
README 列出的 plan、security、ship、debug、fix、scenario、predict、learn、reason,表面看像工具箱,实际更像围绕同一套 loop contract 做的不同子协议。
| 子命令 | 它扩展的是哪一面 | 更像什么 |
|---|---|---|
plan | 把目标转成可验证配置 | 配置向导 |
debug / fix | 把循环转到 bug hunting / repair | 问题追猎协议 |
security | 把循环转到 STRIDE / OWASP / red team | 安全审计协议 |
ship | 把循环转到发货与上线 | shipping protocol |
scenario / predict / reason | 把循环扩到边界场景、多视角预测和主观辩论 | 探索与论证协议 |
learn | 把循环转到文档与知识沉淀 | 知识维护协议 |
所以它的“命令很多”并不等于功能堆砌,反而说明它试图把同一种研究 loop 扩展到多个高频任务域里。ARIS 这条分支则进一步把这种方法包装成更强调“睡觉时持续推进”的叙事和更广的跨代理适配层。
05 · 它和 DeepScientist 的根本差异:研究协议 vs 研究工作台
下方为讲解型步进演示(数据来自 site/data/aris-loop-steps.json):可点步骤标签、播放/暂停、倍速与键盘 ← →、Space。步骤条下方彩色细条为下一帧倒计时;末步点播放会先回到第 1 步再自动翻页。非真实运行时遥测。
| 维度 | Autoresearch / ARIS | DeepScientist |
|---|---|---|
| 主隐喻 | plugin / command surface / loop contract | quest repo / local-first research studio |
| 控制面 | goal + metric + verify + rollback | quest + stage workflow + visible workspace |
| 持久状态 | 更偏 git history、logs、机械验证结果 | 更偏 repo、memory、artifact、paper outputs |
| 适合学什么 | 怎么把研究问题定义成可迭代协议 | 怎么把整条研究链做成工作台 |
这也是为什么 `VibePaper` 需要同时保留两条线。Autoresearch / ARIS 适合拿来教“研究 loop 的 contract 是什么”,DeepScientist 则适合拿来教“如果把这套 contract 做成真正的工作台,会多出哪些层”。
06 · 对我们自己的站点和值得学什么
第一,自动科研系统不一定都要先做厚 UI。Autoresearch / ARIS 证明,先把 loop contract 讲清楚,也能形成非常强的方法系统。
第二,站内教程可以直接借它的结构:goal、metric、scope、verify、rollback、git memory 这些概念很适合做成教学骨架。
第三,后续 VibePaper 的比较页应该继续围绕“控制面在哪里、持久状态是什么、是否需要厚工作台”来写,而不是只比 feature list。
参考与原始链接
- uditgoenka/autoresearch
- wanshuiyin/Auto-claude-code-research-in-sleep (ARIS)
- Karpathy autoresearch
reference/reference_agent/autoresearch/README.mdreference/reference_agent/autoresearch/COMPARISON.mdreference/reference_agent/autoresearch/claude-plugin/.claude-plugin/plugin.jsonreference/reference_agent/autoresearch/claude-plugin/skills/autoresearch/SKILL.mdreference/reference_agent/autoresearch/claude-plugin/commands/autoresearch/reference/reference_agent/autoresearch/guide/reference/reference_agent/aris/README.mdreference/reference_agent/aris/skills/reference/reference_agent/aris/docs/