Back/harness engineering

文件夹即 Agent(The Folder Is the Agent)

Updated 2026-04-20
2 min read
382 words

文件夹即 Agent(The Folder Is the Agent)

来源:2026-04-14 The Folder Is the Agent 作者:Kieran Klaassen(Every AI 邮件助手 Cora 的 GM)

核心洞察

同一个模型,指向不同文件夹,就是不同的 Agent。

一个 Agent 的本质是"一个拥有足够上下文、让你不必每次重新解释一切的模型"。专业化不是模型能力的问题,而是上下文工程的问题。

~/cora/          → Rails 工程师 Agent(开发)
~/cora-agent/    → 运维工程师 Agent(监控/日志/数据库)

文件夹结构决定专业化程度

一个专业化 Agent 文件夹包含:

文件/目录 作用
CLAUDE.md 定义工作方式、约定、部署工作流
docs/developer-docs/ 架构报告、邮件处理管道等机构知识
docs/runbooks/ 运维模式、事故处理手册
docs/investigations/ 事后分析积累
.claude/agents/ 专门化子 Agent
.claude/skills/ 外部系统参考文件("驾驶舱")

开发/运维分离原则

将开发和运维工作分离到两个独立文件夹,防止 Agent 在做运维时意外修改生产代码:

  • 开发 Agent~/project/):包含完整应用代码,负责构建功能
  • 运维 Agent~/project-ops/):无应用代码,专注监控。技能包括:
    • 查询 AppSignal 检查错误和性能
    • 追踪 Render 日志
    • 从 Postgres 只读副本查询用户数据
    • 读取 Intercom 工单,关联客户投诉与技术问题
    • 将 GitHub 部署与生产事故关联

调度层(Dispatch Layer)架构

作者用两个命令替代了 20 个终端标签页:

Ruby daemon 监视目录
  → 创建 lead agent
  → lead agent 分解任务,写入文件
  → daemon 读取文件,在正确文件夹生成 worker agent
  → worker 写文件汇报结果
  → daemon 每 60 秒检查状态

两个核心命令

  • /hey:获取状态报告(每个项目完成了什么、出错了什么、被阻塞了什么)
  • /orchestrate "Fix GitHub issue #1765":创建 lead agent,分解任务,生成 worker,产出 PR

关键设计:基于文件消息传递,没有自定义网络协议,没有复杂框架。

"The dispatch layer is not sophisticated infrastructure. The sophistication lies in the folders underneath it."

规模化失败模式

失败类型 原因 处理方式
编码 bug em dash/弯引号导致 daemon 崩溃(ASCII 编码问题) 手动排查,genuinely hard to find
上下文漂移 数十个 Agent 中有些运行过时版本 定期手动清理,无好的自动化方案
Agent 停滞 过多 API 调用或等待输入,状态永远"working" 仪表板监控 Agent 树

核心原则:不能 Vibe Orchestrate

先构建 → 自己使用直到可预测 → 信任后才交给调度层

跳过这一步会导致 Agent 为已完成的工作开 PR、提重复 issue。这与"不能 vibe code"(需要先规划)、"不能 vibe fix"(生产故障需要系统性排查)形成一套完整的 AI 工程哲学。

与 Compound Engineering 的关系

harness-engineering/compound-engineering 是这套方法论的完整版本:

  • Plan → Work → Review → Compound → Repeat
  • Compound 步骤:捕获解决方案 → 使其可检索 → 更新系统(CLAUDE.md + 新 Agent)→ 验证学习
  • 传统开发在 Review 后停止;Compound Engineering 在 Review 后继续积累

规模化:44 个文件夹 Agent(2026-04-20 更新)

来源:Every 2026-04-20

Kieran Klaassen 目前运行着 44 个文件夹 Agent,通过一个 Ruby 调度层在他睡觉时路由工作。

这是对 2026-04-14 原文(3 个文件夹示例)的显著规模化验证:

  • 原文:2 个核心 Agent(开发 + 运维)
  • 6 天后:44 个专业化 Agent 同时运行
  • 调度层:Ruby daemon,异步路由,无需人工干预

核心结论:这种架构具备真正的规模化能力,不是一次性实验。

相关页面

Sources

Linked from