尧图精选

AI跨会话规划实践:用Wayfinder实现永久记忆与任务状态恢复

🕒 发布时间:2026/8/31 10:20:36 📁 来源:尧图网络
最近在跟着 Matt Pocock 的教程研究 AI 工作流时我发现很多人在实际使用 AI 辅助开发或规划任务时都卡在同一个问题上新开一个会话AI 就把之前聊的内容忘得一干二净。哪怕你上一个会话已经把需求拆得很细换一个窗口又要从头解释一遍。这个痛点其实非常普遍。尤其当你需要 AI 帮你规划一个跨周、跨月、涉及多个模块的复杂任务时普通对话式 prompt 根本撑不住。Matt Pocock 在视频里提到的wayfinder skill就是专门解决这个问题的思路。它不是某个特定的软件而是一套“跨会话工作规划”的方法论核心是把规划从对话里抽离出来变成可以被反复加载的结构化文档。这篇文章我会从概念、设计、实战到排错完整拆解这套 wayfinder 工作流。无论你用的是 Claude、ChatGPT 还是其他支持自定义技能Skill的 AI 平台都可以参考这套思路落地。内容偏实操建议边看边动手建一个自己的 skill。1. 为什么普通对话式规划撑不起复杂任务1.1 AI 会话的“失忆”本质先理清一个基础概念跨会话cross-session。绝大多数 AI 对话产品每次新建会话都是独立的上下文。你可以理解为 AI 每次打开新窗口时只带着“模型参数”这个先天知识至于上次聊了哪些需求、定了哪些方案、排了哪些优先级它一概不知。会话隔离本身是为了隐私和成本考虑但对复杂项目来说却是一个致命限制。当你试图让 AI 帮你规划一个“从零搭建一个带用户系统的全栈项目”时你需要在同一个会话里持续不断地补充信息。上下文窗口有限聊到后面早期内容会被压缩甚至遗忘最后 AI 给出的方案经常前后矛盾。1.2 用“外部记忆”替代“对话记忆”既然 AI 记不住那就让它每次都能“读”到一份任务档案。这就是 wayfinder 的核心思路把规划变成文件而不是对话内容。wayfinder 这个词直译是“探路者”。在 Matt Pocock 的语境里它代表一种能力——让 AI 成为你的探路者帮你把模糊的目标拆解成清晰的路径并且在任何一次新会话中都能立刻恢复路径。这个思路和程序员的日常非常像。你不会把整个项目的架构设计存在脑子里而是写成设计文档你不会把接口约定靠口口相传而是写进 README。AI 跨会话规划也是同一个道理只是我们需要额外给 AI 一套“阅读档案的方法”。1.3 wayfinder 和普通 prompt 的区别普通 prompt 是“一次性指令”比如“帮我把这个需求拆成任务列表”。它的问题在于任务列表输出后下次会话就丢了。拆解过程不透明AI 可能忽略约束条件。没有版本概念需求变更后无法追溯。wayfinder 的做法是维度普通 PromptWayfinder Skill规划存储位置对话上下文独立 Markdown 文件跨会话恢复不支持通过加载文件恢复任务拆解粒度随机可能粗糙遵循预设模板进度追踪无独立进度日志多次会话一致性低高所以wayfinder 本质上不是某个工具而是一套“文件 提示词 工作流”的组合。2. 环境准备与工具选型2.1 需要一个支持 Skill 机制的 AI 平台落地 wayfinder 的前提是你的 AI 平台支持某种形式的“自定义技能/指令/项目知识”。目前主流平台基本都有类似能力只是叫法不同Claude支持 Projects Custom Instructions也支持 Agent Skills。ChatGPT支持 Custom GPTs 和 Projects 文件引用。开源方案通过 LangChain、Dify 等框架给 AI 挂载外部工具和知识文档。本文示例会以“Skill 定义文件 规划文档”的方式演示具体平台配置项你需要按自己的工具调整。版本差异不影响核心思路。2.2 推荐的项目目录结构建议为每一个需要跨会话规划的“工作目标”单独建一个目录。这里的工作目标可以是一个软件项目、一场活动策划、一次系统迁移任何足够复杂的任务都可以。my-wayfinder-project/ ├── skill.md # wayfinder 技能定义告诉 AI 如何工作 ├── plan.md # 主规划文档包含目标、任务拆解、里程碑 ├── progress.md # 进度日志记录每次会话完成了什么 ├── resources/ # 参考资料目录 │ ├── requirements.md # 需求原稿 │ └── design-notes.md # 设计文档草稿 └── output/ # AI 生成产物目录 └── task-results.md如果你在用的平台不直接支持目录引用也可以把多个文件合并成一个wayfinder.md用标题分区AI 一样能识别。2.3 关于版本与兼容性不同平台的 skill 格式差异较大本文不写死某个平台的配置参数。以 Claude 的 Agent Skills 为例它的 skill 通常是 Markdown 文件包含name和description再通过 frontmatter 声明。其他平台也大同小异。重点提醒配置项名称一定要去查当前平台的官方文档因为这类功能迭代很快网上很多教程已经过时。本文演示的是思路和结构不是某个特定版本的配置清单。3. 核心设计跨会话规划的三层结构要真正实现“任意规模工作的跨会话规划”只建一个文档是不够的。我建议把整个体系拆成三层每一层职责不同。3.1 第一层Skill 定义文件行为层这一层解决“AI 应该怎么工作”的问题。它的作用是约束 AI 的行为让 AI 在每次会话开始时就知道自己的角色是“探路者”而不是“一次性问答助手”。面对复杂任务时应该先读规划文档而不是直接给答案。更新任务状态时应该同步修改进度日志。遇到需求不明确时应该先提问澄清而不是瞎猜。你可以把 skill 定义文件理解为一份“员工手册”。AI 每次加载它后就知道自己的岗位职责。3.2 第二层主规划文档路径层这一层是整个 wayfinder 的核心解决“我们要去哪里”的问题。一个合格的主规划文档必须包含项目目标一句话说明最终要达成什么。范围边界明确哪些事情不在本次范围内。任务拆解把大目标拆成可执行的小任务每个任务有编号、描述、依赖关系。里程碑什么时候应该完成哪些内容。当前状态这个任务现在是“待开始”“进行中”还是“已完成”。主规划文档是跨会话恢复的关键。每次新会话开始AI 只要读一遍这个文档就能快速回到上次的进度。3.3 第三层进度日志状态层主规划文档虽然包含状态但如果每次都直接修改它很容易把文档搞乱。更稳妥的做法是单独维护一个progress.md按时间顺序记录每次会话的进展。进度日志解决“我们走到哪了”的问题。它可以包含会话日期和主题。本次完成了哪些任务。发现了哪些风险或问题。下一步计划。主规划文档和进度日志的分工规划文档负责“当前应该做什么”进度日志负责“过去发生了什么”。两者配合AI 才能判断下一步动作。3.4 三层结构如何协作可以这样理解三层结构的协作关系用户新建会话上传或引用 skill 定义文件。AI 按 skill 定义主动读取主规划文档。AI 读取进度日志确认上次进行到哪里。AI 基于当前状态给出下一步建议或执行任务。任务完成后AI 更新进度日志必要时更新主规划文档。这个循环可以在任意多次会话中重复从而实现真正意义上的跨会话规划。4. 实战案例从零构建一个 wayfinder skill接下来我们动手实现一个完整的 wayfinder 工作流。为了演示效果我会以一个“开发一个简易任务管理 Web 应用”为例从头创建目录、编写定义文件、生成规划。4.1 创建项目结构首先在本地创建基础目录mkdir wayfinder-todo-app cd wayfinder-todo-app mkdir resources output后续所有文件都放在wayfinder-todo-app目录下。4.2 编写 skill 定义文件文件路径wayfinder-todo-app/skill.md--- name: wayfinder description: 跨会话的工作规划与任务推进技能。当用户需要规划或推进复杂任务时使用。能够加载主规划文档、更新进度日志、拆解任务并维护项目状态。 --- # Wayfinder Skill ## 角色 你是一个严谨的“探路者”。你的职责不是一次性回答问题而是帮助用户**持续地规划、推进和复盘**复杂工作。 ## 工作流程 每次会话开始后按以下顺序执行 1. 检查当前工作目录下是否存在 plan.md。 2. 如果 plan.md 存在先阅读它理解项目目标和当前状态。 3. 检查 progress.md了解最近进度。 4. 如果 plan.md 不存在先向用户确认项目目标然后创建 plan.md。 5. 在输出任何方案前必须对照 plan.md 中的任务拆解确认当前任务与整体规划的关系。 ## 规划原则 - 任务拆解遵循 MECE 原则相互独立完全穷尽。 - 每个任务必须有明确的可交付结果。 - 明确任务之间的依赖关系。 - 如果用户的需求超出规划范围先指出边界再询问是否调整规划。 ## 更新规则 - 完成一个任务后立即更新 progress.md。 - 如果任务状态发生变化同步更新 plan.md 中的状态标记。 - 更新时保留历史记录不要覆盖原有内容而是新增会话记录。 ## 提问规范 - 当规划信息不足时先提问再规划。 - 提问时给出选项方便用户快速选择。 - 不要假设用户的限制条件主动询问。这个文件看起来是给 AI“读的”但它实际上也是给我们自己看的。它明确了 AI 的行为边界让我们在后续任何新会话中都能复用同一套工作方式。4.3 编写主规划文档模板文件路径wayfinder-todo-app/plan.md# 项目主规划 ## 项目目标 开发一个支持多用户的任务管理 Web 应用用户可以创建任务、设置截止日期、标记完成状态。 ## 范围边界 - 本期只实现基础任务 CRUD不做日历视图、不做移动端适配。 - 不实现第三方登录。 - 不引入消息通知系统。 ## 里程碑 | 里程碑 | 内容 | 预计完成节点 | 状态 | | --- | --- | --- | --- | | M1 | 项目初始化与数据库设计 | 第 1 周 | 待开始 | | M2 | 后端任务 CRUD API | 第 2 周 | 待开始 | | M3 | 前端页面与 API 联调 | 第 3 周 | 待开始 | | M4 | 基础测试与部署 | 第 4 周 | 待开始 | ## 任务拆解 ### T1: 项目初始化 - [ ] 初始化前端框架 - [ ] 初始化后端框架 - [ ] 搭建数据库连接 ### T2: 数据库设计 - [ ] 设计 users 表 - [ ] 设计 tasks 表 - [ ] 编写迁移脚本 ### T3: 后端任务 CRUD API - [ ] 实现创建任务接口 - [ ] 实现查询任务列表接口 - [ ] 实现更新任务接口 - [ ] 实现删除任务接口 ### T4: 前端页面 - [ ] 任务列表页 - [ ] 创建/编辑任务弹窗 - [ ] 状态切换交互 ### T5: 测试与部署 - [ ] 编写后端单元测试 - [ ] 编写前端集成测试 - [ ] 部署到测试环境 ## 当前状态 - 当前阶段M1 - 进行中任务无 - 下一步动作初始化项目结构这个模板的价值在于你不需要每次重新定义规划结构。AI 看到plan.md后会自动按模板的字段理解项目状态。4.4 编写初始进度日志文件路径wayfinder-todo-app/progress.md# 进度日志 ## 2025-01-10 会话 1 - 创建了项目主规划文档。 - 确定了项目目标和范围边界。 - 下一步初始化前端和后端项目骨架。初始进度日志只有一条记录但它为后续会话提供了“起点坐标”。4.5 编写会话启动提示词当你开启新会话时需要一段启动提示词让 AI 进入 wayfinder 模式。这段提示词可以手动输入也可以保存成自己的常用模板。请加载 wayfinder skill。工作目录是 wayfinder-todo-app。 请先阅读 plan.md 和 progress.md然后告诉我当前项目状态以及接下来的下一步建议。如果你使用的平台支持固定指令可以把这段提示词写入平台的 System Prompt 或项目指令中这样每次会话都会自动生效。5. 运行与验证让 AI 跨会话恢复进度5.1 第一次会话建立基线打开一个新的会话上传或指定wayfinder-todo-app目录输入启动提示词。预期 AI 会读取skill.md。读取plan.md理解项目目标与任务拆解。读取progress.md确认进度基线。输出类似这样的回复当前项目状态如下 - 当前阶段M1项目初始化与数据库设计 - 进度基线已创建主规划文档尚未开始任务拆解中的 T1。 - 建议下一步先初始化前端和后端项目骨架确定技术栈。 请确认技术栈偏好我可以开始执行 T1。此时你可以和 AI 讨论技术栈选择比如前端用 Vue 还是 React后端用 Node 还是 Python。AI 会基于规划文档继续推进而不是重新问一遍项目背景。5.2 在同一个会话中推进任务确认技术栈后让 AI 继续推进任务分解前端使用 React后端使用 Node.js Express数据库用 SQLite。 请基于这个技术栈细化 T1 的具体步骤并开始执行。不要跳出当前任务范围。AI 会输出一系列操作步骤比如初始化 Vite 项目、安装 Express、配置数据库驱动等。这个过程里AI 受skill.md的“范围边界”约束不会突然提议加一个“实时协同功能”。5.3 结束会话前更新进度当会话需要结束时让 AI 更新进度日志本次会话完成了项目初始化包括创建前端 Vite 项目和后端 Express 骨架。 请更新 progress.md并同步修改 plan.md 中 T1 的勾选状态。AI 会重写 progress 和 plan 文件。这样下一次会话就能直接从这里继续。5.4 第二次会话验证跨会话恢复第二天重新打开一个全新会话再次输入启动提示词。这次不提供任何项目背景信息直接让 AI 加载旧文件。预期 AI 的输出应该包含项目目标来自plan.md。当前进行到哪一步来自progress.md。下一步建议来自任务拆解。如果 AI 能准确说出“T1 已完成T2 数据库设计尚未开始”说明跨会话恢复成功。这就是 wayfinder 工作流的核心价值——你不再需要把项目背景重复说第二遍。6. 常见问题与排查思路6.1 问题排查表问题现象常见原因解决思路AI 不读取 plan.md直接回答问题skill 定义没有要求 AI 主动读文件在 skill.md 中增加“必须先读取规划文档再回答”的强制流程AI 读到了旧版本规划状态不一致多个会话并行修改了同一文件建立单一工作目录同一时间只允许一个会话推进任务规划文档越来越臃肿任务拆解粒度太细所有内容堆到一个文件子任务单独建文档plan.md 只保留任务索引AI 频繁跳出范围建议新功能范围边界写得不够具体在 plan.md 中用“不做什么”清单明确排除项新会话提示词很长每次都手输没有配置平台级固定指令把启动提示词放进平台的 System Prompt 或项目说明进度日志被覆盖历史丢失prompt 要求“更新”而不是“追加”更新规则中明确使用追加方式保留历史记录6.2 排查思路从现象定位问题如果你发现跨会话恢复失败建议按以下顺序排查确认文件是否真的被 AI 读取。可以在启动提示词中要求 AI 先复述plan.md的第一段内容再开始工作。确认文件路径是否正确。有些平台对相对路径解析规则不同必要时使用绝对路径。确认 skill 描述是否清晰。AI 是否知道自己在 wayfinder 模式下工作如果它描述自己“只是一个助手”说明 skill 加载失败。确认状态更新是否执行。完成会话前检查progress.md和plan.md是否真的被修改。6.3 避免“规划与执行脱节”在实际项目中最常见的问题是AI 每次新会话都能读规划但执行时完全不按规划走。根本原因通常是 plan.md 里的任务拆解偏“名词化”缺少验收标准。比如“实现创建任务接口”这个任务AI 可能只写一个接口壳子就标记完成。更合理的写法是“实现创建任务接口必须包含参数校验、重复任务名检测、成功和失败两种返回格式”。把验收标准写进任务描述能显著提升执行一致性。7. 最佳实践与工程建议7.1 把规划文档当成代码来管理既然规划文档是跨会话恢复的基础它就应该像代码一样被认真维护。强烈建议把wayfinder-todo-app目录纳入 Git 管理。每次会话结束后提交一次变更commit message 写成会话摘要比如git add . git commit -m session 2: implement task CRUD API and update progress这样做有三个好处可以回滚到任意历史节点。可以对比规划变化复盘需求变更。多人协作时每个人都能看到最新版本。7.2 拆分任务粒度控制文档体量一个文档塞几百个任务AI 读起来会“茫然”。我的经验是主规划文档中的任务数量控制在 20 个以内。超过这个数量就把任务拆到子文档中。例如## 任务拆解 ### T1: 项目初始化 详细步骤见 docs/t1-init.md ### T2: 数据库设计 详细步骤见 docs/t2-db.md这样plan.md变成一张“总览地图”AI 不会被过多细节淹没。7.3 为重要决策建立决策记录当 AI 或你做出重大技术决策时比如“使用 SQLite 而不是 PostgreSQL”、“不做移动端适配”把它记录到一个单独的ADR.mdArchitecture Decision Record文件中。这能防止 AI 在新会话中重新质疑已经确定的方案也能让你自己回顾当时为什么这么选。7.4 安全与权限边界如果你的规划文档涉及内网地址、数据库密码、云服务密钥务必注意不要把真实密钥写入 plan.md 或 progress.md。使用环境变量引用敏感配置。如果 AI 平台有权限隔离给规划文档设置最小访问范围。涉及生产环境操作时先让 AI 输出影响分析和回滚方案再执行。7.5 多人协作的注意事项wayfinder 工作流默认是“单 AI 单用户”的场景。如果团队多人共享同一个规划目录需要注意避免两个会话同时写入同一个progress.md否则可能互相覆盖。建立“更新锁”机制比如进度日志按日期分文件progress-2025-01-10.md。每次会话开始前先git pull拉取最新版本。7.6 定期复盘优化 skill 本身wayfinder 不是一次写好的它应该随着你的使用不断演进。建议每完成一个里程碑后回到skill.md根据实际体验调整工作流程。例如你可能发现 AI 经常忘记检查任务依赖关系就在 skill.md 的“工作流程”中加一条“输出任务前检查该任务的前置依赖是否全部完成”。这种持续优化会让你的 wayfinder 越来越贴合自己的工作习惯。8. 总结与下一步这篇文章从 AI 跨会话“失忆”的痛点出发完整拆解了 wayfinder 的核心理念与落地方式。你可以把它理解成一套轻量级项目管理方法论只是执行者是 AI 而已。关键要点回顾跨会话规划的本质是把规划从对话抽离到文件系统。用“Skill 定义 主规划 进度日志”三层结构实现持续推进。主规划文档要包含目标、边界、里程碑、任务拆解、状态五要素。进度日志采用追加式记录避免覆盖历史。每次新会话用固定启动提示词加载 wayfinder 模式。用 Git 管理规划文档让 AI 工作流具备版本追溯能力。下一步你可以做两件事把你手头某个正在推进的项目按本文模板建一个wayfinder目录跑通一次“会话结束 - 新会话恢复”的完整流程。根据实际使用体验迭代你自己的skill.md让 AI 的行为越来越符合你的工作节奏。跨会话规划并不是某个平台的专属功能而是一种可迁移的工作方法。掌握了这套思路哪怕以后换一个 AI 工具你依然能快速搭建起自己的“探路者”体系。如果你在实践过程中遇到“AI 不按规划执行”或“文档结构不适合当前项目”的情况不妨回到skill.md检查一下约束条件多数问题都能在定义文件层面解决。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →