让模型学会列清单 —— 规划和持久化

第四篇:让模型学会列清单 ------ 规划和持久化

模型不是鱼,它的记忆不止 7 秒------但也没长到能记住 100 轮对话里的所有事。


那个经典的翻车现场

你:"帮我重构这个模块,分三步:第一步提取接口,第二步实现新逻辑,第三步迁移测试。"

模型:"好的,我来处理!"

第 5 轮对话后,模型突然开始写一个完全不相干的文件......它迷路了。

这不是模型笨。这是缺少短期记忆管理。最初的计划被挤到了不知道哪个角落。

s03 的解法:TodoManager + Nag Reminder

python 复制代码
class TodoManager:
    def __init__(self):
        self.items = []

    def update(self, items: list) -> str:
        ...

    def render(self) -> str:
        lines = []
        for item in self.items:
            marker = {"pending": "[ ]", "in_progress": "[>]", "completed": "[x]"}[item["status"]]
            lines.append(f"{marker} #{item['id']}: {item['text']}")
        ...
        return "\n".join(lines)

渲染出来:

复制代码
[>] #1: 提取数据访问接口
[x] #2: 实现新的 Repository 类
[ ] #3: 迁移测试用例

(1/3 completed)

更有意思的是 Nag Reminder------模型每 3 轮没用 todo 工具,就塞一条提醒:

python 复制代码
rounds_since_todo = 0 if used_todo else rounds_since_todo + 1
if rounds_since_todo >= 3:
    results.append({"type": "text", "text": "<reminder>Update your todos.</reminder>"})

你不是强制模型做什么,你是给它一个信号,让它自己意识到该更新计划了。

s07 的进化:从 TODO 到持久化任务

s07 把 TODO 从内存列表升级为磁盘上的 JSON 文件:

json 复制代码
{
  "id": 1,
  "subject": "Extract database interface",
  "status": "completed",
  "blockedBy": [],
  "owner": ""
}

为什么要持久化?因为上下文压缩(s06)随时可能把你的对话变成一个摘要。如果任务只存在于 messages 里,一压缩就没了。

任务系统还加了依赖图:

复制代码
[x] #1: 提取数据访问接口
[>] #2: 实现新的 Repository 类
[ ] #3: 迁移测试用例 (blocked by: [2])

规划工具的关键设计原则

Harness 提供结构化的状态管理。模型提供决策。两者各司其职。

坏的做法:框架强定 workflow,模型只是管道里的一环。

好的做法:提供状态管理工具,让模型自己规划。

又回到了那个核心思想:模型是司机。

从 TODO List 到任务板的进化链

复制代码
s03: TodoManager(内存列表)
s07: TaskManager(JSON 文件,依赖图)
s11: 自主认领 + 任务板
s12: 任务 + Worktree 绑定(控制平面和执行平面分离)

下一篇:Subagent ------ 进程隔离就是上下文隔离

相关推荐
感谢地心引力3 天前
我用 Doubao-Seed-2.1-pro 做了一个深度融入 AI 功能的本地知识库软件
ai·开源·seed·markdown·豆包
阿昌喜欢吃黄桃3 天前
提示词工程:User Prompt 与 System Prompt
ai·prompt·提示词·提示词工程
AI产品测评官3 天前
海内外AI招聘工具分赛道横向对比:五大品类的技术路线与选型参考
人工智能·ai·求职招聘
俊哥V3 天前
每日 AI 研究简报 · 2026-09-21
人工智能·ai
omenkk73 天前
上下文工程:优化系统提示词,利用 KV Cache 降低 Token 成本
ai
代码方舟3 天前
零信任架构实战:基于天远手机在网状态V即时版构建自动化通信分发网关
人工智能·ai·工具分享
MicrosoftReactor3 天前
技术速递|GitHub Copilot App 入门指南:使用 Diff、终端和浏览器
ai·copilot·agent
TechEdu2026063 天前
[人工智能]人工智能时代的零日漏洞与零日攻击
人工智能·网络安全·ai·信息安全
程序员无隅3 天前
Pi Agent Loop 完整流程源码解析:从 Agent.prompt() 到 agent_end
ai