@tom2012/cc-web 2026.5.19-a → 2026.5.20-a

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +1 -1
  2. package/backend/dist/__tests__/cli-prompt-detector.test.d.ts +2 -0
  3. package/backend/dist/__tests__/cli-prompt-detector.test.d.ts.map +1 -0
  4. package/backend/dist/__tests__/cli-prompt-detector.test.js +150 -0
  5. package/backend/dist/__tests__/cli-prompt-detector.test.js.map +1 -0
  6. package/backend/dist/cli-prompt-detector.d.ts +92 -0
  7. package/backend/dist/cli-prompt-detector.d.ts.map +1 -0
  8. package/backend/dist/cli-prompt-detector.js +208 -0
  9. package/backend/dist/cli-prompt-detector.js.map +1 -0
  10. package/backend/dist/index.d.ts.map +1 -1
  11. package/backend/dist/index.js +9 -0
  12. package/backend/dist/index.js.map +1 -1
  13. package/backend/dist/routes/projects.d.ts.map +1 -1
  14. package/backend/dist/routes/projects.js +85 -0
  15. package/backend/dist/routes/projects.js.map +1 -1
  16. package/backend/dist/terminal-manager.d.ts.map +1 -1
  17. package/backend/dist/terminal-manager.js +9 -0
  18. package/backend/dist/terminal-manager.js.map +1 -1
  19. package/backend/dist/track-flow/__tests__/prompt-translator.test.js +25 -9
  20. package/backend/dist/track-flow/__tests__/prompt-translator.test.js.map +1 -1
  21. package/backend/dist/track-flow/prompt-translator.d.ts +5 -0
  22. package/backend/dist/track-flow/prompt-translator.d.ts.map +1 -1
  23. package/backend/dist/track-flow/prompt-translator.js +19 -12
  24. package/backend/dist/track-flow/prompt-translator.js.map +1 -1
  25. package/frontend/dist/assets/{ChatOverlay-DjQG-D3e.js → ChatOverlay-CGyDxUxJ.js} +3 -3
  26. package/frontend/dist/assets/{GraphPreview-6lCKfwRL.js → GraphPreview-B9kooQxE.js} +1 -1
  27. package/frontend/dist/assets/MobilePage-3uMLckd9.js +14 -0
  28. package/frontend/dist/assets/{OfficePreview-JP6AL7sS.js → OfficePreview-l1O2K0sM.js} +2 -2
  29. package/frontend/dist/assets/{PdfPreview-BKo68LVQ.js → PdfPreview-fZPK_FeM.js} +1 -1
  30. package/frontend/dist/assets/{ProjectPage-U_KWNV4Q.js → ProjectPage-CBFQ2TQC.js} +3 -3
  31. package/frontend/dist/assets/{SettingsPage-DmN0jImm.js → SettingsPage-BZ3vBlYj.js} +1 -1
  32. package/frontend/dist/assets/{SkillHubPage-B43q_C9T.js → SkillHubPage-DfsO4OIa.js} +1 -1
  33. package/frontend/dist/assets/{chevron-down-KlovjBUT.js → chevron-down-C53vkdK1.js} +1 -1
  34. package/frontend/dist/assets/{index-oIfsoXa-.js → index-3NT40D4Y.js} +1 -1
  35. package/frontend/dist/assets/index-B55CtERr.css +1 -0
  36. package/frontend/dist/assets/{index-CL3UvKUz.js → index-BbEFdJn-.js} +1 -1
  37. package/frontend/dist/assets/{index-B_EZBR-m.js → index-BnxUVJSG.js} +4 -4
  38. package/frontend/dist/assets/{jszip.min-Bkka1zYS.js → jszip.min-D5b8OJpG.js} +1 -1
  39. package/frontend/dist/assets/{search-BgPctIFS.js → search-F_MnOHbB.js} +1 -1
  40. package/frontend/dist/assets/{select-CYNd7HhF.js → select-MFyjPNJE.js} +1 -1
  41. package/frontend/dist/index.html +2 -2
  42. package/package.json +1 -1
  43. package/frontend/dist/assets/MobilePage-CUeKKIsi.js +0 -14
  44. package/frontend/dist/assets/index-D7mI92Gj.css +0 -1
@@ -29,6 +29,11 @@ function formatValue(v) {
29
29
  * spec §7(v-j 修订):完成判定从 "outputs 改了 = 完成" 改为 "LLM 自报 done=true",
30
30
  * 避免 LLM 第一次 Edit 就被强制结束节点(影响多步操作场景)。
31
31
  *
32
+ * v-19-b:发给 LLM 的英文化(CLI LLM 对英文 prompt 执行更稳定)。变量
33
+ * description 字段是用户数据,保留原始(多语言)。codex P1 顺修:所有提到 run-state.json
34
+ * 的句子都用完整路径插值,防止 LLM 误改项目根的 run-state.json;P2 加 done/failed
35
+ * 互斥提示 + outputs 更新指令用显式 slot 替代 `to ...` 省略号。
36
+ *
32
37
  * Unknown keys (not in `variables`) are preserved literally to aid debugging.
33
38
  */
34
39
  function translatePrompt(template, variables, snapshot, outputs, ctx) {
@@ -43,7 +48,7 @@ function translatePrompt(template, variables, snapshot, outputs, ctx) {
43
48
  const decl = byKey.get(key);
44
49
  if (!decl)
45
50
  return `\${${key}}`;
46
- return `修改变量 ${key}(${decl.description};记录路径为 .ccweb-flow-train.json 中的 key:${key})=${formatValue(snapshot[key] ?? null)} 为...`;
51
+ return `Update variable ${key}(${decl.description}; stored at .ccweb-flow-train.json under key:${key}). Current value: ${formatValue(snapshot[key] ?? null)}. Write the new value.`;
47
52
  });
48
53
  // 系统指令始终追加(v-j:即便 outputs 为空,也得告诉 LLM 通过 done flag 结束节点)
49
54
  result += '\n\n' + buildSystemInstruction(outputs, ctx);
@@ -53,23 +58,25 @@ function buildSystemInstruction(outputs, ctx) {
53
58
  const runStatePath = ctx
54
59
  ? `.ccweb/tracks/${ctx.basename}.run-state.json`
55
60
  : '.ccweb/tracks/<basename>.run-state.json';
56
- const nodeId = ctx?.nodeId ?? '<节点 id>';
61
+ const nodeId = ctx?.nodeId ?? '<node-id>';
57
62
  const lines = [
58
- '【系统指令】',
59
- '运行进度记录在文件 `' + runStatePath + '`(相对当前项目根目录)。',
60
- `本节点 id \`${nodeId}\`,状态在该文件的 \`nodes.${nodeId}\` 下。`,
63
+ '[System Instructions]',
64
+ 'Runtime progress is recorded in `' + runStatePath + '` (path is relative to the project root).',
65
+ `This node's id is \`${nodeId}\`; its state lives under \`nodes.${nodeId}\` in that file.`,
66
+ '',
67
+ `After completing this node's task, use the Edit/Write tool to modify \`${runStatePath}\`:`,
68
+ ` Set \`nodes.${nodeId}.done\` to true.`,
61
69
  '',
62
- '完成本节点的任务后,请用 Edit/Write 工具修改 run-state.json:',
63
- ` \`nodes.${nodeId}.done\` 设为 true。`,
70
+ `If the task cannot be completed (e.g. invalid user input, unavailable resource), modify \`${runStatePath}\`:`,
71
+ ` Set \`nodes.${nodeId}.failed\` to true and set \`nodes.${nodeId}.reason\` to a string explaining why.`,
64
72
  '',
65
- '如果任务无法完成(如用户输入不合理 / 资源不可用),请改 run-state.json:',
66
- ` 把 \`nodes.${nodeId}.failed\` 设为 true,并把 \`nodes.${nodeId}.reason\` 设为字符串(说明原因)。`,
73
+ `Rules: set exactly one of \`done\` or \`failed\` to true (never both). Do not modify other fields under \`nodes.${nodeId}\` (such as \`iter\`, \`status\`, \`type\`) — ccweb manages those.`,
67
74
  '',
68
- 'ccweb 实时监听该文件;done=true 后进入下一节点,failed=true 后停止整个工作轨。',
69
- ' done/failed 标记前 ccweb 不会推进,**LLM 可以多步交互后再标记**。',
75
+ `ccweb watches \`${runStatePath}\` in real time: once done=true the next node starts; once failed=true the entire flow stops.`,
76
+ 'Until you mark done/failed, ccweb does NOT advance — you may perform multiple steps before marking.',
70
77
  ];
71
78
  if (outputs.length > 0) {
72
- lines.push('', '业务变量在 `.ccweb-flow-train.json`,本节点声明的输出字段:' + outputs.join(', '), '(任务过程中也请用 Edit/Write 更新这些字段,未更新会在 audit log warning 但不阻塞)。');
79
+ lines.push('', 'Business variables live in `.ccweb-flow-train.json`. Output fields declared by this node: ' + outputs.join(', '), '(Please update these fields with Edit/Write during the task; missing updates are logged as a warning in the audit log but do not block progress.)');
73
80
  }
74
81
  return lines.join('\n');
75
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-translator.js","sourceRoot":"","sources":["../../src/track-flow/prompt-translator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-translator.js","sourceRoot":"","sources":["../../src/track-flow/prompt-translator.ts"],"names":[],"mappings":"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"}