فهرست منبع

feat(workspace): 磁盘进度纪律(PROGRESS.md)防 react 车道"乱跳" + 默认 qwen-plus

针对"qwen 工作区助手 react 车道工具调用乱跳/重做/忘记"——根因是上下文被截断后
模型忘了前面干过什么(qwen-max 30720 上下文尤其严重)。对症四招(用户选 1-4):

1+3+4(合并为磁盘进度纪律,assistant.yml systemPrompt 重写"工作方式"段):
  多步任务必须维护工作文件夹里的 PROGRESS.md 待办清单——第一步建/读它,每步开头先
  ReadFile 它定位,完成一项立刻 EditFile 打勾并记产物路径;铁律:不重做已 [x] 项、
  不重复整篇读没变的文件、不全 [x] 不 terminate。本质=把 claude-code 的 TodoWrite
  用"磁盘文件"复刻,绕开"截断导致失忆"的根因(文件不被上下文裁剪冲掉)。
  (注:未用 enforceLoop 硬计数——它会把只读 Q&A 也逼着必须写文件,误伤;改用 prompt
   软约束实现同样的 todo 纪律。)
2: 工作区助手实例默认 model qwen-max→qwen-plus(上下文 30720→131072,max_history
   15360→65536,history 几乎不再被砍 → 少忘少跳)。

DB 实例 ag_dd21a0a31fe7 v4→v5(systemPrompt+model),源 yml 与装好副本同步。
claude-code native 车道不受影响(它本就有 TodoWrite+完整上下文,不跳)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
kenny67nju 2 ماه پیش
والد
کامیت
fc93ae3
1فایلهای تغییر یافته به همراه14 افزوده شده و 6 حذف شده
  1. 14 6
      agentexample/agentpacks/workspace.assistant/agents/assistant.yml

+ 14 - 6
agentexample/agentpacks/workspace.assistant/agents/assistant.yml

@@ -45,13 +45,21 @@ systemPrompt: |
   - 改动前先让用户知道你打算改哪些文件、为什么;大改分步做、边做边汇报。
   - 不读取也不外传工作文件夹之外的隐私数据。
 
-  ## 工作方式
-  1. 先理解任务 + 摸清相关文件(ListFiles/SearchContent/ReadFile)。
-  2. 给出简短计划(要改哪些文件、思路),动手执行。
-  3. 每步用工具真实落地(EditFile/WriteFile/Bash),**不要把改动只写在回答里**——
+  ## 工作方式(多步任务必须维护磁盘进度清单,防"乱跳/重做/忘记")
+  **你的对话上下文会被裁剪、容易忘掉前面做过什么**;工作文件夹里的 `PROGRESS.md`
+  在磁盘上不会丢,是你唯一可靠的"记忆"。对需要多步的任务(写/改代码、改论文、跑实验、
+  出 PDF 等)必须这样做:
+  1. **第一步:在工作文件夹建立或读取 `PROGRESS.md`**——把任务拆成有序待办,每项一行
+     `- [ ] 描述`。若已存在,先 ReadFile 它、承接未完成项,**不要从头重来**。
+  2. **每一步开始前,先 ReadFile `PROGRESS.md`** 确认现在该做哪一项、哪些已 `[x]`。
+  3. **完成一项立刻 EditFile 把它打勾 `- [x]`**,并在该行后追加结果/产物路径(如
+     `- [x] 跑实验 → 02_sim/data.npz`)。
+  4. **铁律:不重做已 `[x]` 的项;不重复整篇读同一个没变过的文件**——要回顾就读
+     PROGRESS.md,而不是把文件再读一遍。冒出"再做一次"的念头时,先读 PROGRESS.md 核对。
+  5. **只有 PROGRESS.md 全部 `[x]`、且产物真的落盘,才 terminate**;否则继续下一个 `[ ]`。
+  6. 每步用工具真实落地(EditFile/WriteFile/Bash),**不要把改动只写在回答里**——
      回答只汇报"改了什么文件、为什么、怎么验证",具体内容落到文件。
-  4. 能验证就验证(跑测试、读回改动、`git diff`)。
-  5. 多轮协作:记住本会话前面做过什么,承接着继续。
+  7. 能验证就验证(跑测试、读回改动、`git diff`)。多轮协作承接 PROGRESS.md 继续。
 
   ## 风格
   中文为主(代码/命令/路径保留原文);简洁、给可执行建议;不确定就说不确定、