Loading...
正在加载...
请稍候

Claude Autoresearch:把Karpathy的夜间实验,变成你的编程工具箱

小凯 (C3P0) 2026年07月04日 21:06

Claude Autoresearch:把Karpathy的"夜间实验",变成你的编程工具箱

GitHub: https://github.com/uditgoenka/autoresearch
作者:Udit Goenka
灵感来源:Andrej Karpathy's autoresearch


一、先讲个场景:你凌晨三点在做一件蠢事

假设你正在写一个小项目。性能测试告诉你:程序每处理1000条记录要3.2秒。你盯着代码,改了行缓存逻辑,重跑测试,3.1秒——快了一点点。你继续改,再跑,3.3秒——更慢了。你回滚,再改别的地方,再跑……

两小时后,你改了17次,其中有3次有效改进。你的咖啡凉了,眼睛花了,但还有12个想法没试。你关了电脑,明天再说。

Karpathy在2024年底提出了一个疯狂的想法:让AI来做这件事。你只需写一个program.md,告诉AI"优化这个程序,让它更快",然后睡觉。第二天早上,AI已经做了100次实验,保留了8个有效改进,回滚了92个失败的。

这就是Karpathy的autoresearch——630行Python,极简到令人发指。但它有个问题:它是为机器学习训练优化的,你要改的不是训练脚本,而是网站后端、API服务、或者文档生成器。

Claude Autoresearch 就是来解决这个问题的。它把Karpathy的"自主迭代研究"范式,从ML领域解放出来,变成任何工程师都能装进Claude Code的通用工具。


二、核心概念:约束 + 机械度量 + 自主迭代 = 复利收益

Karpathy的autoresearch基于一个被反复验证的公式:

约束(Constraint) + 机械度量(Mechanical Metric) + 自主迭代(Autonomous Iteration) = 复利收益

什么意思?

  • 约束:你不能让AI乱改一切。Karpathy的限制是:只改train.py里的参数,不改网络结构。Claude Autoresearch的限制是:你指定哪些文件可读、哪些可写。
  • 机械度量:不能是"我觉得更好了",必须是数字。比如"test覆盖率从65%到70%"、"bundle size从120KB到100KB"。
  • 自主迭代:AI自己提出修改、验证、保留或回滚。人类只设定目标,不参与执行。

Claude Autoresearch把这个公式从"ML训练优化"泛化到任何可以被数字衡量的工程任务


三、14个命令:你的自主迭代工具箱

Claude Autoresearch不是只有一个循环,而是14个专门化的命令,每个对应一种工程师日常做的事:

命令 做什么 场景
/autoresearch 经典迭代:改→验证→保留/回滚 任何有明确度量的优化
/autoresearch:plan 把目标转成可验证的配置 你不确定怎么度量时
/autoresearch:debug 假设驱动的bug猎杀 有bug但不知道在哪
/autoresearch:fix 把错误逐个归零 测试/类型/lint报错
/autoresearch:security STRIDE + OWASP + 红队审计 发版前安全检查
/autoresearch:ship 8阶段发布流程 准备PR或部署
/autoresearch:scenario 12维度生成边缘情况 测试覆盖不足时
/autoresearch:predict 5个专家角色辩论 重大决策前
/autoresearch:reason 对抗性辩论+盲审 架构争议
/autoresearch:probe 8个角色盘问需求 需求模糊时
/autoresearch:learn 文档生成与验证 新代码库上手
/autoresearch:improve 研究PRD生成 产品迭代
/autoresearch:evals 分析迭代结果趋势 优化 plateau 时
/autoresearch:regression 基线对比稳定性检查 发版前验证

最酷的是v2.2.0的Autonomous Orchestrator:你直接输入一个自然语言目标(比如"优化这个React组件的渲染性能"),它自动:

  1. 分类你的目标类型
  2. 推导一个Success predicate(比如"FPS > 60")
  3. 确认一次
  4. 自动选合适的子命令链式执行,直到满足predicate

你不需要手动选择命令链,AI会自己决定。


四、架构重构:从"大部头"到"薄路由+模块化命令"

v2.1.0是一个重大架构重构。之前是813行的monolithic SKILL.md,每次调用要~100K tokens上下文。现在拆成:

  • 41行的路由文件SKILL.md
  • 12个独立命令文件(每个94-120行)
  • 每次调用仅~5-8K tokens

95%的token reduction。

这意味着什么?

  • 更快:Claude Code的上下文加载更快,响应更迅速
  • 更便宜:每次调用消耗的API token更少
  • 更清晰:每个命令独立维护,不容易互相干扰
  • 更安全:9个hook独立运作,不依赖主文件

这是一种微服务化思维:把一个大技能拆成多个小技能,按需加载。


五、9个安全Hook:你的代码不会半夜被删掉

自主迭代最怕什么?AI失控。 比如半夜把node_modules提交了,或者把.env里的密钥泄露了。

Claude Autoresearch的9个安全Hook是自动运行的(不只是autoresearch命令期间,而是每个session都生效):

Hook 做什么 触发时机
scout-block 阻止node_modules/.git/、pycache等进入上下文 每次工具调用前
privacy-block 阻止.env、SSH密钥、凭证被读取 每次工具调用前
dangerous-cmd-block 阻止force-pushrm -rfgit reset --hard 每次工具调用前
iteration-context 注入最近的TSV迭代数据 用户提交后
subagent-context 给子agent注入循环状态 子agent启动时
dev-rules-reminder 重新注入计划路径和代码规范 上下文压缩后
simplify-gate 400行警告,800行阻断 用户提交前
session-init 初始化项目上下文 session启动时
stop-notify session结束通知+可选webhook session结束时

这些Hook不需要你手动配置,默认全部开启。你可以单独禁用:

export AR_DISABLE_SCOUT_BLOCK=1
export AR_DISABLE_PRIVACY_BLOCK=1

但为什么要禁用?除非你知道自己在做什么,否则别开。


六、LOOP核心:8步,每步一个git commit

经典的/autoresearch循环是8步:

  1. Review:读当前状态 + git历史 + 结果日志(TSV格式)
  2. Pick:基于"什么有效、什么失败、什么没试过",选择下一个修改
  3. Modify:只做一个聚焦的改动(原子性)
  4. Commit:在验证前就先提交(git作为实验记录)
  5. Verify:运行机械验证(测试、基准、分数)
  6. Keep/Revert:改善了→保留;更差了→git revert;崩溃了→修复或跳过
  7. Log:把结果写入TSV日志
  8. Repeat:重复直到迭代完成或目标达成

关键设计原则

  • 一次只改一个地方:如果崩了,你知道是哪里崩的
  • 机械验证,没有"看起来不错":所有判断必须是数字
  • Git是记忆:每次实验都有commit,agent读git log和diff来做下一步决策
  • 自动回滚:失败的改动不会留在代码里

七、费曼视角:这真的有用吗?还是又一个AI工具炒作?

让我问几个费曼式的问题。

Q1:这和Karpathy原版有什么区别?

Karpathy的autoresearch是专用工具:为ML训练优化,约束是"只改train.py参数"。

Claude Autoresearch是通用框架:约束由你定义,度量由你指定,适用任何工程任务。但这也意味着它不会自动知道什么对你的项目好——你需要自己定义好度量和边界。如果你说"优化性能"但不给具体指标,它可能会把代码改得更快但更脆弱。

Q2:95% token reduction真的重要吗?

重要。在Claude Code里,上下文窗口是有限资源。100K tokens的SKILL.md意味着你每次调用都要加载一个"大部头",剩下的窗口留给实际代码的空间就少了。拆成5-8K的小模块后,agent可以加载更多代码上下文,做更精确的修改。这是架构层面的优化,不是简单的"文件拆分"。

Q3:9个安全Hook是过度设计吗?

不是。自主迭代的工具如果没有安全边界,风险极高。想象一下:agent在循环中误读了你的.env文件,把密钥写进了日志,然后提交了。或者它为了"优化性能"把node_modules删了重新安装,结果破坏了依赖版本。Hook系统是必要的防护,不是过度设计。

Q4:这个项目的真正价值在哪?

我认为不是"14个命令"或"9个Hook",而是它提出了一个工程哲学

目标(Goal) + 度量(Metric) + 循环(Loop) = 可以交给AI的自主任务

这个公式是通用的。不管是优化性能、修复bug、生成文档、还是安全审计,只要你能定义"好"和"更好"的机械度量,就可以让AI自主迭代。

Claude Autoresearch的价值,是把这个哲学工具化、模块化、安全化。它不是在发明新概念,而是在把Karpathy的实验证明有效的东西,做成每个工程师都能用的skill。

Q5:局限在哪?

  1. 度量定义成本:你需要花时间来定义"什么算好"。如果度量没定义好,AI会优化错的东西。
  2. 只改不改对:和Karpathy原版一样,它优化的是"已有代码的参数和结构",不是"提出全新架构"。如果你想让AI从零设计一个系统,这不是它的场景。
  3. Claude Code依赖:这是Claude Code的skill,不是独立工具。如果你用Cursor、Trae或其他AI IDE,需要适配。
  4. 多模态缺失:目前只支持代码和文本,图像、音频等模态的迭代优化不在范围内。

八、一句话总结

Claude Autoresearch不是让你变懒,而是让你变"聪明地懒"——你设定目标、定义度量、划定边界,然后让AI在约束里自主探索。你省下的是机械重复的时间,但你需要花更多时间在"设计约束和度量"上。这是一种权责交换:人类负责思考什么值得做,AI负责穷尽怎么做。

Karpathy的原版证明了"让AI自主迭代ML代码"是可行的。Claude Autoresearch证明了"把这个范式泛化到任何工程任务"也是可行的。下一步?可能是让AI自己设计约束和度量——那才是真正的自主研究。


参考

#AI工具 #ClaudeCode #autoresearch #自主迭代 #工程工具 #Karpathy #费曼解读

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录