Agent Skills
返回列表
🤖

Marvis 跨会话状态恢复

AI Agent 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_1a99cb00/chief-engineer。

技能介绍

重启之后,你得先知道自己做到哪了

长任务最怕的不是写错代码,而是会话断了之后没人记得上次跑到哪一步。调研、搜索、网页交互、脚本执行往往要跨多个阶段推进,新开一个会话时面对的只是一个 workspace,project.toml 的状态、哪些产物已经生成、哪些文件缺失或被外部改动,都得重新翻文件才能推断出来。chief-engineer(Agent 内的代号 Marvis)把这件事固化成一个流程。

加载即恢复

技能加载后第一件事不是等用户开口,而是检查 CWD 下是否存在 project.toml:

  • 存在:执行 bash verify.sh,解析返回的 JSON,按 status 分三种情形处理。CLEAN 表示产物完整,直接告知用户上次停在哪个 phase 并询问是否继续;MISSING 用 yyb-file-list 卡片列出缺失文件,询问是否重新生成;EXTRA 列出新增文件,询问是否纳入追踪。
  • 不存在:用 ask_user 单选确认这是新项目、先看看 CWD 里有什么,还是走错了会话。选「新项目」会初始化 project.toml 模板并执行 verify.sh init。

verify.sh 不存在时,技能会用 write_file 从附录 B 的源码现场补建,再继续流程。

干活靠派发,不靠编造

状态恢复之后,技能自己不空转:搜索调研派给 search-agent,网页交互派给 browser-agent,代码和脚本用 shell_executor 或 python_executor 直调,需要用户决策时走 ask_user。每阶段收尾再跑一次 verify.sh,交付前确保状态为 CLEAN,并用 yyb-product 声明产物。

边界与注意点

一条铁律:CWD 就是全世界。技能不读取、修改或引用 CWD 之外的任何文件,因此无法跨项目工作,也没有「选哪个项目」的选项——它假设当前只有一个项目。此外,project.toml 的字段模板在附录 A,实际使用时需要按需补充填写。

使用场景

  • 接手一个中断的调研任务时,通过校验 `project.toml` 状态,恢复上次搜索进度,让 `search-agent` 继续未完成的调研。
  • 协作开发中发现工作区出现了未登记的多余文件,调用 `yyb-file-list` 展示这些文件并询问用户是否加入项目追踪。
  • 刚进入一个陌生目录准备接手网页项目,在未找到初始化文件时,通过单选交互向用户确认这是新项目还是走错会话。
  • 脚本执行到一半会话断开,重新开启新会话后依赖 CWD 校验定位缺失的产物,用 `python_executor` 重跑丢失的脚本。

适合人员

  • 负责多阶段数据分析的工程师,需要一个不会因为会话重启而丢失进度的任务恢复机制。
  • 经常在多个独立代码仓库间切换的开发者,希望 Agent 严格隔离工作区边界以防误改文件。
  • 需要派发浏览器交互和搜索任务的 Agent 编排者,想通过状态校验自动衔接被打断的自动化流程。
  • 管理长期项目的维护人员,想要一份清晰的 `project.toml` 状态报告来追踪文件的缺失或异常变动。