跳到正文

软件工厂建不动:你缺的不是 Agent,是提 Issue 的人

软件工厂卡住往往不是 Agent 不会写代码,而是上游没有高质量 issue。用 issue tracker 把工厂切成两半:上游用定时 loop 抓日志和录像自动提需求,下游用 auto 标签触发 Agent 开 PR。Backlog 见底先建上游,堆满先做标签触发。

2026年9月4日·1,389 字·4 分钟
问题证据进入 issue 后,空转的执行端才启动

那张架构图在白板上挂了两周,我一行代码都没动。

图上画的是最近被聊烂的“软件工厂”:任务从哪来、怎么排队、Agent 怎么领活、失败了怎么重试、谁来跑测试验收。起点其实很小:给 Claude Code 提个 issue,看它自己读上下文、改代码、提 PR,这套动作早就熟了。顺着这个思路,我就想把整条链路串成一个全自动闭环。

结果越画越像在设计一套复杂的分布式调度系统,然后就彻底卡在那儿了。

想通这个问题,是因为我意识到自己犯了一个典型的工程师毛病:我一直在给流水线造复杂的调度器,但流水线的入口根本没有东西可进。

你不缺干活的 Agent,缺的是提 Issue 的人

今天把一个定义清楚的 issue 扔给 Agent,它基本能在几分钟内把 PR 提出来。代码实现这一侧早就不是瓶颈了。

真正卡死整条流水线的是上游:Backlog 里的 issue 是谁写的?

还是你。每天深夜下班,凭着记忆在面板里敲几行“优化一下定价页”、“修一下登录超时”。这种 issue 扔给 Agent,它连报错现场都找不到,只能对着代码库瞎猜。

软件工厂本质上只做两件事:

  1. Pre-triage:把非结构化的世界(错误日志、用户退订、操作录像),变成结构化的 issue;
  2. Implementation:把结构化的 issue,变成 PR。

issue tracker 连接产生、存放和完成工作

工程师的本能是扑向第二半,试图做出一套全自动的执行引擎。但现实是:只要上游还需要你肉身去盯监控、看录像、手写 issue,你的软件工厂就依然是一家纯手工小作坊。

Pierson Marks 做软件工厂时最聪明的做法,就是拿 Issue Tracker(比如 Linear 或 GitHub Issues)在中间切了一刀,把两半彻底分开。

入口没活,先建“找活儿”的那一半

如果你的 backlog 经常见底,就先别碰任何自动化写代码的逻辑。先建输入端。

输入端的核心,是让 AI 替你盯住那些平时根本懒得看的数据源,自动产出带有“第一现场”的高质量 issue:

  • 日志巡检:每天凌晨定时扫一遍 Sentry 和网关日志,发现未捕获异常直接开 issue,自动附带调用堆栈和发生频次。
  • 行为回放(Session Replay):扫一遍用户的操作录像。录像里能清楚看到用户在哪个按钮连续点击(Rage Click)、在哪一步卡住退出。录像一直都在,只是人肉不可能每天看几百条。
  • 流失分析:拉取过去 24 小时点击退订的用户数据、退订前的操作链路,分析他是踩了 bug、用量未达预期,还是核心体验受阻,直接生成具体的改进建议。

这种 issue 产出来,天然带着复现路径、报错堆栈和用户上下文。“用户在定价页点击结账 3 次无响应”比“优化定价页”有用得多,因为 Agent 接到手就知道该去看哪段交互。

哪怕后半段完全由你自己手动改代码,你也等于雇了一个每天 24 小时替你看数据、提明确需求的产品经理。

干活的那一半:放权的单位是一张标签

当上游源源不断产生高质量 issue 后,实现侧的触发链反而极短。

不需要复杂的权限系统和流水线总控台,人机协作的边界可以收敛成一个动作:打标签

  1. 默认状态:上游巡检开出的 issue,默认不打 auto 标签。
  2. 人工介入:人扫一眼 issue 列表,确认问题真实、复现路径明确,顺手打上 auto 标签。
  3. Agent 动工:Webhook 捕获到标签变更,自动拉起远程 Agent,读 issue、改代码、跑浏览器验证、提 PR。

issue 打上 auto 标签后触发 agent 开 PR

这一设计的精妙之处在于渐进式交权

你不需要在“全人工”和“全自动黑盒”之间二选一。刚开始,所有人肉审核打标;等某个巡检(比如明确的 Sentry 报警、前端格式修复)运行稳定了,就允许它自己打上 auto 标签实现全自动闭环。哪天发现它开始瞎提 PR,收回自动打标的权限即可。

放权不需要给整条流水线装总开关,一张标签就够了。

半个工厂就值得建

回头看白板上那张大图,最大的误区在于预设了“必须一次性做完整套闭环”。

真正的做法是按瓶颈分步走:

  • 如果你的 backlog 经常见底,今天就挑一个数据源——错误日志、客服对话或退订记录,写一个定时 Prompt 抓问题提 issue,实现侧继续人工做;
  • 如果你的 backlog 已经堆满,顺序就反过来:先配一个 Webhook,给打上 auto 标签的 issue 自动触发 Agent 改代码,别再让上游造更多待办。

先用 issue tracker 把两半切开,再去自动化真正卡住你的那半个工厂。


这里专注拆解一人软件工厂与工程自动化的落地细节。后面我会持续记录输入端自动化、打标签渐进放权,以及如何用最小的系统复杂度搭建一人流水线。欢迎关注。

版权声明

作者
XingKaiXin
标题
软件工厂建不动:你缺的不是 Agent,是提 Issue 的人
发布时间
2026年9月4日

本作品采用CC BY-NC-ND 4.0 DEED许可。