The Sprint System Underneath
上周五,一个想法在午饭前浮现。到下午时分,它已成为一个可用的产品,并已部署上线,取代了我多年来一直使用的 3,997 行电子表格。
三个小时。从想法到生产环境,当日完成。
我的路线图第四阶段——为期十二个月的 Fusion Growth 愿景——悄然降临在一个个人费用追踪器上。我在 Build Log #3 中写下了那一刻。但我没有写的是,是什么让这一切成为可能。
不是更智能的 agent。这个 agent 几个月来大致相同。
其底层改变的是一个流程主干。六项运营纪律,独角兽创始人被告知在当前规模下不需要这些。
正是这些要素,将“有趣的演示”变成了“下午三点前上线”。
What Got Built
六大支柱,自 Sprint 1 以来并行强化。各自平平无奇。合力则威力无穷。
1. Sprint cadence
六天周期,周一至周六。每天结束时,在 `tos_time_log` 中记录时间日志——我做了什么,花费时间,剩余时间。每个 sprint 结束时进行回顾并重新调整 backlog。一个名为 `v_sprint_burndown` 的 Supabase view 向我展示了实际进度,而非计划进度。Solo 创始人会跳过 cadence,因为没有团队需要协调。这是错误的理由。cadence 是心跳。没有它,工作会膨胀以填满你给它的任何时间窗口。
The six-day heartbeat — burndown from `v_sprint_burndown`.
2. Lean agile
一个真实的 backlog,而非愿望清单。包含描述、成果和待办事项的 stories。下方是带有估算和实际时间的 tasks。所有这些都存在于 `projects/tri-venture-phase-01/` 下的 markdown 文件中,以及两个 Supabase 表中——`tos_task_state` 用于实时状态,`tos_time_log` 用于累计时间。BUD 门户渲染它。agent 读取它。当我说“start task E27.1-3”时,agent 已经知道 story、成果和已完成的工作。没有项目管理软件。只有 git 加上 Postgres。
One real backlog. Stories carry intent. Tasks carry time.
3. CI/CD
每个项目都在 `git push` 时部署。推送到 `dev`,Cloudflare Pages 构建预览。推送到 `master`,它构建生产版本。没有发布窗口。没有手动部署。没有人为地阻碍“在我机器上能用”到“用户已上线”之间的字节流。pipeline 就是部署。taikim-finance 从本地 commit 到 `finance.taikim.com` 只需我保存文件时相同的操作。
The pipeline is the deploy.
4. QA regression
每个界面都有自己的测试套件——Next.js 应用使用 Jest 结合 React Testing Library 和 MSW,Python 服务在 s07 上使用 pytest。每次 push 都会运行测试。一个红色测试会阻止构建。这不如统一的 harness 优雅,但更真实地反映了每个应用实际的需求。当一个操作员并行交付六个界面时,regression 不是可有可无的——它是唯一能防止昨天的工作在今天的 commit 下悄然崩溃的保障。
A red test blocks the build. Yesterday’s work doesn’t quietly rot.
5. Codified doctrines
绑定性的架构规则,以书面形式记录,agent 无需重复询问即可应用。Thin-host doctrine:一切都在 Docker 中,host 保持最小化。Resumable-pipeline doctrine:每次提交都能在后端宕机后幸存。Web-design-defaults doctrine:每个 webapp 都应包含 back-to-top、自定义 favicon 和主题切换器。Backup doctrine、monitoring doctrine 等等。现在共有十二条。每条都是我做过一次决定,无需再争论。它们存在于 `core/operations/` 中,agent 在编写任何代码之前都会阅读它们。
Decided once. Applied every time.
6. Persistent agent context
repo 根目录下的 `CLAUDE.md`,每次会话自动加载。`~/.claude/projects/` 下的每个项目的自动记忆。一个 `tos-docs` repo,其内容已足够丰富,可作为业务的长期记忆。结果就是我在 Build Log #3 中所说的 repeat-free working——我不再每天早上重新介绍 ventures、stack 或规则。入职成本降至零。Build Log #3 讲述了这一转变。本文则讲述了它所实现的可能性:cadence 和 discipline 最终可以复合,因为没有任何东西会在一夜之间重置。
The agent doesn’t onboard each morning. It’s already home.
Below the AI layer — the process substrate that makes same-day possible.
The Decisions That Mattered
一些值得一提的决定:
– Lean-agile lite 优于 Scrum、Jira 或 Linear。一个操作员与一个 AI agent 不需要 ticket board、仪式堆栈或分配角色。Linear 非常适合团队;当 assignee 总是你时,它的 queue 模型就会失效。Notion 页面在第三周就会腐烂。git 中的 markdown stories 加上 Supabase actuals 表,为我提供了 Scrum 中真正有用的 10%——backlog、story、task、estimate、actual、retro。agent 读取它们的方式与读取代码相同。 – 六天 sprints 优于公司默认的两周——也优于一周。对于 solo 规模来说,两周太长;burndown 在十四天中有九天是谎言。一周的 sprints 没有喘息空间,每次 retro 都会变成恐慌。六天让我每天都有 EOD log,周六的 retro 能够真正暂停,周一的重新开始感觉像是一个全新的开始,而不是宿醉。 – Git-push deploys 优于手动发布窗口或审批门控的 CI。发布窗口是团队协议,当团队只有一人时就不存在。审批门控是为了防御十分钟前不在键盘前的人——同样不存在。Cloudflare Pages 在 push 时自动部署:`dev` 到预览,`master` 到生产。唯一的门控是我输入 `git push origin master` 而不是 `git push origin dev`——这正是正确的门控。 – Per-project test suites 优于 Nx 或 Turborepo 等统一 harness。taikim-finance 和 trendmedia.au 没有任何共同点——不同的 frameworks、mocks、fixture data。强迫它们进入一个 rig 会增加我不想支付的协调成本。每个界面都有自己的 regression:Next.js 应用使用 Jest + RTL + MSW,Python 服务在 s07 上使用 pytest。不那么 DRY,但更真实,红色测试信号更快。 – Doctrines as written artifacts 优于部落知识或 wiki 页面。记忆会漂移;agent 记忆也会漂移。wiki 页面在单独的工具中腐烂,有自己的访问仪式。如果规则只存在于我的脑海或聊天记录中,下一次会话就会从头开始重新辩论——agent 一半时间会得出不同的答案。`core/operations/` 中的 doctrines 是 git 跟踪的、agent 可读的,并且在提交的那一刻就具有约束力。
What This Actually Enables
1-day-to-production 循环。不是作为噱头——而是作为工作假设。
现在,当我想到一个新工具时,我的默认期望是它今天就能上线。这个 substrate 带来了这种期望。Sprints 承载 cadence。backlog 承载 intent。CI/CD 承载字节。Tests 承载安全。Doctrines 承载架构。Persistent context 承载记忆。
agent 读取所有这些。我输入指令。工作通过 substrate,以已部署产品的形式从另一端输出。
The Thesis, Revisited
Lean agile、CI/CD、sprints、QA regression——这些是行业曾认为是企业专属的实践。对于 solo 操作员来说太重了。在你拥有团队之前无法承受的开销。
当操作员只是人类时,这是事实。当操作员是人类加上一个能同时处理所有六个支柱的 resident agent 时,这就不再是事实了。
我一直在问自己——现在也问你——这个问题:
你的业务中,你一直跳过的流程层是什么,因为你是唯一一个运营它的人?
把它加进去。你认为你无法承受的 discipline,正是让一切成为可能的东西。
从想法到生产环境的当日完成不是未来的承诺。它是 AI 底层 substrate 在你停止跳过它时悄然实现的能力。