全自动化软件开发工具,你只需负责喝茶和睡觉。 一觉醒来,Features 全自动高质量的实现了。
基于 karpathy/autoresearch 思想实现的通用的全自动化开发工具。支持 GitHub Issue、本地 Issue 和百度 iCafe 四种模式,适用于任意 Git 项目(Go、Node.js、Python、Rust、Java 等)。
使用 autoresearch 实现本项目 Issue#2:
# 下载项目
git clone git@github.com:smallnest/autoresearch.git
# 处理当前目录项目的 Issue#10
autoresearch/run.sh 10
# 处理指定目录项目的 Issue#10
autoresearch/run.sh -p /path/to/project 10
# 指定最大迭代次数为 16 次
autoresearch/run.sh -p /path/to/project 10 16
# 调整达标线为 90 分
PASSING_SCORE=90 autoresearch/run.sh 10
# 指定全局 model(所有 agent 使用 opus)
AGENT_MODEL=opus autoresearch/run.sh 10
# 单独指定某个 agent 的 model(优先级高于 AGENT_MODEL)
AGENT_MODEL=opus AGENT_MODEL_CLAUDE=sonnet autoresearch/run.sh 10
# 指定启用的 agents 及顺序(首个 agent 做初始实现)
autoresearch/run.sh -a claude,codex 10
# 继续处理 Issue#42,追加 10 次迭代
autoresearch/run.sh -c 42 10
# 处理本地 Issue #8(从 .autoresearch/issues/ 读取)
autoresearch/run.sh --issues-dir=.autoresearch/issues 8
# 百度 iCafe 模式(卡片 #22210)
autoresearch/run.sh --issue-source=baidu --space=cloud-iCafe 22210
# 阿里云效 Codeup 模式(Issue #42)
autoresearch/run.sh --issue-source=codeup --codeup-token=xxx --codeup-org=123 --codeup-repo=456 42需要安装以下工具(按需安装):
gh auth status # GitHub CLI(仅 GitHub 模式需要)
icafe-cli whoami # iCafe CLI(仅百度模式需要)
icode-cli whoami # iCode CLI(仅百度模式需要)
curl --version # 阿里云效 Codeup 模式需要 curl
which claude # Claude Code CLI
which codex # OpenAI Codex CLI
which opencode # OpenCode CLI
which deepseek-tui # DeepSeek CLI (npm install -g deepseek-tui)项目需有对应语言的构建工具(Go/Node/Python/Rust/Java)。
核心流程:
| 组件 | 说明 |
|---|---|
| GitHub Issue / 本地 Issue / 百度 iCafe / 阿里云效 Codeup | 触发输入 |
| run.sh | 核心运行器 |
| Claude / Codex / OpenCode / Claude-Mimo / DeepSeek | Agent 轮转审核 |
| Score ≥ 85? | 评分门控 |
| PASS | 自动创建 PR → 合并 → 关闭 Issue |
| FAIL | 进入下一轮迭代修复 |
Agent 轮转公式:(iter − 1) % N
Issue → 首个 Agent 实现 → 轮转审核+修复 → 自动 PR → 合并 → 关闭 Issue
- 迭代 1:
-a列表中的第一个 agent 初始实现 - 迭代 2+: 所有启用的 agents 按顺序轮流审核并修复
- 评分达标(默认 ≥ 85)后自动创建 PR、合并、评论并关闭 Issue
完整端到端工作流:PRD 生成 → Issue 拆分 → autoresearch 实现
PRD 生成 → Issue 拆分与创建 → 选择 Issue → autoresearch 实现 → 选择下一个 Issue → ...
使用 /prd skill 生成交付需求文档:
/prd 为本项目创建一个桌面 app
让智能体基于 PRD 拆分 Issue:
基于 PRD 中的 User Stories 拆分为细粒度 Issue,并在 GitHub 上创建这些 issue。
拆分原则:
- 每个 Issue 可在单次开发会话中完成
- 有明确的验收标准(checkbox)
- 标注依赖关系
./run.sh 22autoresearch 会:
- 规划阶段:拆分 subtasks(如需要)
- 迭代实现:首个 agent 实现 → 轮转审核 → 修复 → 评分
- 质量门禁:Build/Lint/Test + LLM 评分 ≥ 85
- 自动收尾:创建 PR → 合并 → 评论 Issue → 关闭 Issue
以本项目 Desktop App 为例:19 个 Issues (#22 ~ #40) 从 PRD 到全部实现。
详细过程见 docs/desktop-app-prd-to-issues.md。
除了从 GitHub 拉取 Issue,autoresearch 还支持从项目本地目录读取 Issue 文件,无需 GitHub 即可运行。适合本地项目、内网项目或不想创建 GitHub Issue 的场景。
# 1. 创建 issues 目录
mkdir -p .autoresearch/issues
# 2. 创建 Issue 文件(命名格式:issue-NNN-描述.md)
cat > .autoresearch/issues/issue-008-add-login.md << 'EOF'
# 添加登录功能
实现用户登录页面,包括:
- 用户名/密码输入框
- 表单验证
- 登录 API 调用
- 错误提示
EOF
# 3. 运行(自动检测本地文件)
./run.sh 8- 位置:
$PROJECT_ROOT/.autoresearch/issues/(默认)或--issues-dir指定 - 命名:
issue-NNN-描述.md,编号补零到 3 位(如issue-008-add-login.md) - 内容:第一个
# 标题行作为 Issue 标题,其余内容作为 Issue 正文 - 匹配:CLI 传入的编号
8会匹配issue-008-*.md或issue-8-*.md
- 代码提交到本地分支(不推送远程、不创建 PR、不合并)
- 处理结果自动追加到 Issue 文件末尾:
---
## 自动处理结果
- **评分**: 92/100
- **迭代次数**: 3
- **实现方式**: autoresearch 多 agent 迭代 (claude codex opencode)
- **分支**: feature/issue-8
- **完成时间**: 2026-04-27 15:30:00
- 子任务: 2/2 完成
...日志内容...
该 Issue 已由 autoresearch 自动实现。# 自动检测模式(默认目录下有匹配文件即生效)
./run.sh 8
# 手动指定 issues 目录
./run.sh --issues-dir=.autoresearch/issues 8
# 指定项目路径 + 本地模式
./run.sh -p /path/to/project --issues-dir=.autoresearch/issues 8
# 组合其他参数
./run.sh --issues-dir=.autoresearch/issues 8 10 # 最多迭代10次| GitHub 模式 | 本地模式 | 百度 iCafe 模式 | |
|---|---|---|---|
| Issue 来源 | gh issue view |
本地 .md 文件 |
icafe-cli card get |
需要 gh CLI |
是 | 否 | 否 |
| 需要 GitHub remote | 是 | 否 | 否 |
需要 icafe-cli / icode-cli |
否 | 否 | 是 |
| 推送/PR/合并 | 自动执行 | 不执行 | push_cr + submit_review |
| 评论/关闭 Issue | 自动执行 | 不执行 | 自动执行 |
| 结果记录 | PR 评论 + 关闭 Issue | 追加到文件末尾 | CR 评论 + 关闭卡片 |
两种模式完全兼容,互不影响:
- 有匹配的本地 Issue 文件 → 自动进入本地模式
- 没有本地文件 → 走 GitHub 流程(
gh issue view→ push → PR → merge → close)
同一项目可以混合使用:
./run.sh 8 # .autoresearch/issues/issue-008-*.md 存在 → 本地模式
./run.sh 42 # 没有对应的本地文件 → GitHub 模式百度模式使用 iCafe(卡片管理)和 iCode(代码评审)替代 GitHub Issue/PR 流程,适合百度内部项目。
# 安装并登录 icafe-cli
icafe-cli login
# 安装并登录 icode-cli
icode-cli login
# 项目 git remote 需指向 icode.baidu.com
git remote -v
# origin https://icode.baidu.com/path/to/repo (fetch)# 显式指定 baidu 模式 + 空间
./run.sh --issue-source=baidu --space=cloud-iCafe 22210
# 指定最大迭代次数
./run.sh --issue-source=baidu --space=cloud-iCafe 22210 16
# 指定 CR 目标分支(默认自动检测远程 HEAD,回退到 master)
./run.sh --issue-source=baidu --space=cloud-iCafe --target-branch=develop 22210
# 使用环境变量设置空间
export ICAFE_SPACE=cloud-iCafe
./run.sh --issue-source=baidu 22210如果同时满足以下两个条件,即使不指定 --issue-source=baidu,也会自动切换到百度模式:
- Git remote 包含
icode.baidu.com --space参数或ICAFE_SPACE环境变量已设置
# 在 iCode 仓库中,设置环境变量即可自动识别
export ICAFE_SPACE=cloud-iCafe
./run.sh 22210 # 自动检测为 baidu 模式iCafe 卡片 → Agent 实现 → 轮转审核+修复 → icode-cli push_cr → 评分 +2 → 合入 → 关闭卡片
与 GitHub 模式的主要区别:
| 步骤 | GitHub 模式 | 百度 iCafe 模式 |
|---|---|---|
| 获取 Issue | gh issue view |
icafe-cli card get |
| Commit 消息 | feat: implement issue #N |
{space}-{seq} [{type}] {title} |
| 创建 PR | gh pr create |
icode-cli git push_cr |
| 合并 | gh pr merge |
icode-cli api submit_review |
| 关闭 Issue | gh issue close |
icafe-cli card update --status 已关闭 |
| 评论 | gh issue comment |
icafe-cli comment create |
| 参数 | 说明 |
|---|---|
--issue-source=baidu |
指定百度模式(也可自动检测) |
--space=<prefixCode> |
iCafe 空间前缀代码(baidu 模式必需) |
--target-branch=<name> |
iCode CR 目标分支(默认自动检测) |
ICAFE_SPACE |
环境变量,等效于 --space |
在项目目录下创建 .autoresearch/:
.autoresearch/
├── agents/
│ ├── codex.md # 自定义 Codex 指令
│ ├── claude.md # 自定义 Claude 指令
│ ├── claude-mimo.md # 自定义 Claude-Mimo 指令(不设则 fallback 到 claude.md)
│ └── opencode.md # 自定义 OpenCode 指令
├── issues/ # 本地 Issue 文件(issue-NNN-描述.md)
├── program.md # 自定义实现规则与约束
├── workflows/ # 各 Issue 详细记录(自动生成)
└── results.tsv # 处理结果日志(自动生成)
| 参数 | 默认值 | 说明 |
|---|---|---|
-p <path> |
当前目录 | 项目路径 |
-a <agents> |
claude,codex,opencode |
指定启用 agents 及顺序 |
-c |
关闭 | 继续模式,从上次中断的迭代继续 |
--issues-dir=<path> |
.autoresearch/issues |
本地 Issue 目录(启用本地模式) |
--issue-source=<mode> |
github |
Issue 来源:github / local / baidu |
--space=<prefixCode> |
- | iCafe 空间前缀代码(baidu 模式必需) |
--target-branch=<name> |
自动检测 | iCode CR 目标分支 |
PASSING_SCORE |
85 | 达标评分线(百分制) |
AGENT_MODEL |
- | 全局默认 model(如 sonnet, opus, o3),不设则用 CLI 默认 |
AGENT_MODEL_CLAUDE |
- | Claude 专用 model(优先级高于 AGENT_MODEL) |
AGENT_MODEL_CODEX |
- | Codex 专用 model |
AGENT_MODEL_OPENCODE |
- | OpenCode 专用 model |
AGENT_MODEL_CLAUDE_MIMO |
- | Claude-Mimo 专用 model |
AGENT_MODEL_DEEPSEEK |
- | DeepSeek 专用 model |
MAX_CONSECUTIVE_FAILURES |
3 | 连续失败停止阈值 |
MAX_RETRIES |
5 | 单次 agent 调用重试次数 |
program.md 包含多种语言的规范模板。使用前应根据目标项目语言裁剪,只保留相关规范以减少 token 消耗。
示例:Go 后端项目只需保留「通用规范」和「Go 代码规范」章节,删除 Python/TypeScript/Rust/前端等无关章节。
| 文件 | 用途 |
|---|---|
run.sh |
主脚本 |
lib/agent_logic.sh |
agent 列表解析与轮转共享逻辑 |
program.md |
默认实现规则与约束 |
agents/*.md |
Agent 提示词模板 |
tests/test_agent_logic.sh |
agent 选择与顺序逻辑测试 |
阿里云效 Codeup 模式使用 Codeup(代码托管)替代 GitHub Issue/PR 流程,适合使用阿里云效的企业项目。
# 需要 Codeup Access Token
# 在 Codeup 控制台 -> 设置 -> Access Token 中创建
export CODEUP_TOKEN=your_token_here
# 需要组织 ID 和仓库 ID
# 在 Codeup 项目设置页面可以看到
export CODEUP_ORG_ID=your_org_id
export CODEUP_REPO_ID=your_repo_id# 显式指定 codeup 模式
./run.sh --issue-source=codeup --codeup-token=xxx --codeup-org=123 --codeup-repo=456 42
# 使用环境变量
export CODEUP_TOKEN=xxx
export CODEUP_ORG_ID=123
export CODEUP_REPO_ID=456
./run.sh --issue-source=codeup 42
# 指定 MR 目标分支
./run.sh --issue-source=codeup --codeup-branch=develop 42
# 批量处理所有未关闭的 Issues
./run_all.sh --issue-source=codeup --codeup-token=xxx --codeup-org=123 --codeup-repo=456Codeup Issue -> Agent 实现 -> 轮转审核+修复 -> 创建 MR -> 合入 -> 关闭 Issue
与 GitHub 模式的主要区别:
| 步骤 | GitHub 模式 | 阿里云效 Codeup 模式 |
|---|---|---|
| 获取 Issue | gh issue view |
Codeup REST API |
| 创建 PR | gh pr create |
Codeup REST API (Create MR) |
| 合并 | gh pr merge |
Codeup REST API (Merge MR) |
| 关闭 Issue | gh issue close |
Codeup REST API (Close Issue) |
| 评论 | gh issue comment |
Codeup REST API (Add Note) |
| 参数 | 说明 |
|---|---|
--issue-source=codeup |
指定阿里云效 Codeup 模式 |
--codeup-token=<token> |
Codeup Access Token(也可用 CODEUP_TOKEN 环境变量) |
--codeup-org=<org_id> |
Codeup 组织 ID(也可用 CODEUP_ORG_ID 环境变量) |
--codeup-repo=<repo_id> |
Codeup 仓库 ID(也可用 CODEUP_REPO_ID 环境变量) |
--codeup-branch=<name> |
Codeup MR 目标分支(默认自动检测) |
ralph 是类似的自动化开发工具。
| 维度 | autoresearch | ralph |
|---|---|---|
| 驱动方式 | GitHub Issue / 本地 Issue / 百度 iCafe | PRD(prd.json) |
| Agent 模型 | 多 Agent 轮转交叉审核 | 单 Agent 反复迭代 |
| 质量门禁 | 硬门禁(Build/Lint/Test)+ 软门禁(LLM 评分) | 纯工具链检查 |
| 审核机制 | 不同 Agent 交叉审核 | 无独立审核 |
| 端到端 | Issue → PR → 合并 → 关闭(全自动闭环) | 止步于代码完成 |
| Continue 模式 | 支持 -c 恢复 |
无 |
| UI 验证 | 浏览器截图 + LLM 视觉验证 | dev-browser skill |
autoresearch 优势:
- 双轨质量门禁覆盖更广
- 多 Agent 交叉审核提供不同视角
- GitHub 端到端自动化闭环,也支持本地项目、百度 iCafe/iCode 和阿里云效 Codeup 运行
- 上下文溢出自动交接
- Continue 模式支持中断恢复
ralph 优势:
- PRD 驱动,语义更丰富
- 四通道记忆形成完整知识体系
- 确定性质量门禁更稳定
- Skills 插件系统可扩展
- 内置流程序可视化
- snarktank/ralph
- karpathy/autoresearch(原版思想)
- 达尔文.skill: 使用 autoresearch 优化Skill, 花叔出品
- TheGreenCedar/codex-autoresearch: A codex plugin for running optimization loops inside a codebase.
- pi-autoresearch: Autonomous experiment loop extension for pi agent
- good night, have fun: gnhf is a ralph, autoresearch-style orchestrator that keeps your agents running while you sleep
- Auto-claude-code-research-in-sleep
- autoharness
- awesome-autoresearch: 一大批的autoresearch思想的落地



