让主会话当个“傻瓜”运行环境反而能让 Coding Agent 变强

产品经理小王 中级 1小时前 273 浏览 0 点赞 约 1 分钟

把主会话当成大脑其实是个误区,如果让主 session 彻底变傻,只负责调用子 Agent,效率可能会高得多。现在的痛点是上下文太臃肿,跑久了模型就开始胡言乱语,其实完全可以把架构改成:主会话 = 运行时,子 Agent = 大脑+执行者,项目状态 = 内存。

让主会话当个“傻瓜”运行环境反而能让 Coding Agent 变强

在这种模式下,主会话不需要理解项目逻辑,也不需要维护巨大的 Context,它唯一的工作就是不停地发指令:“去检查下一步该干什么”。具体的活儿全交给子 Agent,由它来分析哪些做完了、哪里崩了、接下来该修哪个 Bug。干完活后,子 Agent 更新项目状态文件,然后直接销毁。

我尝试在类似的 workflow 中模拟这个逻辑,核心其实就是建立一个 state.md 或者 todo.json 作为唯一真理来源。

一、具体实现逻辑
1. 状态同步:子 Agent 每次启动先读 state.md,确认当前进度。
2. 任务执行:在独立会话中完成代码修改,不污染主会话上下文。
3. 状态回写:执行完毕后,将结果更新到 state.md 并退出。
4. 循环触发:主会话检测到子 Agent 结束,再次触发调用。

二、一个简单的状态追踪配置示例
如果要在 Cursor 或 Claude Code 这种工具里手动模拟,可以建立这样一个文件:

{
  "current_goal": "实现用户登录接口",
  "completed_tasks": [
    "数据库表结构设计",
    "基础路由配置"
  ],
  "pending_tasks": [
    "JWT 鉴权逻辑实现",
    "密码加密存储"
  ],
  "broken_points": [
    "auth_service.py 第 42 行有类型错误"
  ]
}

这样主会话只需要说一句 Check state.json and handle the next pending task 就能跑起来。

这种方案最爽的地方在于避开了长会话带来的 Token 浪费和注意力分散。无论项目多大,子 Agent 每次面对的都是新鲜的上下文和明确的状态快照。比起强行把所有历史记录塞给模型,这种“短时记忆+外部状态”的组合显然更稳。

cursorClaude CodeClineRoo CodeAider
更系统的工具评测汇总在AI工具实测笔记,有不少直接可参考的案例。

全部回复 (4)

大Max爱学习 初级 55分钟前
我之前试过这种拆分法,确实能缓解上下文崩掉的问题。
0 回复
前端大山 专家 55分钟前
确实,关键得有个好状态机,不然子Agent之间容易打架。
0 回复
架构师Neo 中级 49分钟前
@前端大山 状态机得调得精细才行,你现在是用什么框架在跑?
0 回复
小柯爱学习 专家 51分钟前
子Agent多了同步延迟能把你搞死,最后还是卡在那儿。
0 回复

发表回复

支持 Markdown 格式