wezard 1.3.23 → 1.4.0

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 (43) hide show
  1. package/CLAUDE.md +4 -2
  2. package/README.md +43 -37
  3. package/dist/daemon/chat-name.js +65 -2
  4. package/dist/daemon/chat-name.js.map +1 -1
  5. package/dist/daemon/detail.js +7 -0
  6. package/dist/daemon/detail.js.map +1 -1
  7. package/dist/daemon/graph.js +25 -3
  8. package/dist/daemon/graph.js.map +1 -1
  9. package/dist/daemon/inbound.js +114 -58
  10. package/dist/daemon/inbound.js.map +1 -1
  11. package/dist/daemon/index.js +773 -125
  12. package/dist/daemon/index.js.map +1 -1
  13. package/dist/daemon/jobs.js +91 -0
  14. package/dist/daemon/jobs.js.map +1 -0
  15. package/dist/daemon/mirror-bridge.js +194 -14
  16. package/dist/daemon/mirror-bridge.js.map +1 -1
  17. package/dist/daemon/mirror-store.js.map +1 -1
  18. package/dist/daemon/notices.js +70 -0
  19. package/dist/daemon/notices.js.map +1 -0
  20. package/dist/daemon/peers.js +93 -61
  21. package/dist/daemon/peers.js.map +1 -1
  22. package/dist/daemon/spawn-tmux.js +46 -4
  23. package/dist/daemon/spawn-tmux.js.map +1 -1
  24. package/dist/daemon/tasks.js +90 -0
  25. package/dist/daemon/tasks.js.map +1 -0
  26. package/dist/daemon/wizard.js +151 -0
  27. package/dist/daemon/wizard.js.map +1 -0
  28. package/dist/mcp/server.js +236 -102
  29. package/dist/mcp/server.js.map +1 -1
  30. package/dist/shared/cli-backends.js +10 -0
  31. package/dist/shared/cli-backends.js.map +1 -1
  32. package/dist/shared/config.js +50 -14
  33. package/dist/shared/config.js.map +1 -1
  34. package/dist/shared/detail-render.js +3 -2
  35. package/dist/shared/detail-render.js.map +1 -1
  36. package/dist/shared/detail-store.js.map +1 -1
  37. package/dist/shared/schedule-spec.js +240 -0
  38. package/dist/shared/schedule-spec.js.map +1 -0
  39. package/dist/shared/session-label.js +8 -4
  40. package/dist/shared/session-label.js.map +1 -1
  41. package/package.json +1 -1
  42. package/dist/daemon/topics.js +0 -106
  43. package/dist/daemon/topics.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mirror-store.js","sourceRoot":"","sources":["../../daemon/mirror-store.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,0EAA0E;AAC1E,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAiChD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAe,EAAE;IAC/D,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,GAAG,GAAqC,EAAE,CAAC;IAC/C,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAqC,CAAC;QAClF,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,GAAG,EAAE,CAAC;QACX,CAAC;IACH,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC;IACF,OAAO;QACL,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAClB,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YACd,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;YACV,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YACd,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC;KACxB,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"mirror-store.js","sourceRoot":"","sources":["../../daemon/mirror-store.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,0EAA0E;AAC1E,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAqChD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAe,EAAE;IAC/D,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,GAAG,GAAqC,EAAE,CAAC;IAC/C,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAqC,CAAC;QAClF,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,GAAG,EAAE,CAAC;QACX,CAAC;IACH,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC;IACF,OAAO;QACL,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAClB,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YACd,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;YACV,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YACd,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC;KACxB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,70 @@
1
+ // 名册增量 —— 「你不在场的时候, 这个网络变了」。
2
+ //
3
+ // charter (wizard.ts) 是 spawn 那一刻的快照: 它列出出生时群里有谁。快照只会越来
4
+ // 越假 —— 新分身出生、老 wizard 收工、谁改了职责, 它一概不知道, 除非自己去
5
+ // wizard_roster 问。问一次要花一轮, 于是实际上没人问。
6
+ //
7
+ // 这里是另一半。变动发生时不打扰任何人, 只把一行字投进每个相关 wizard 的信箱;
8
+ // 下一次**无论谁**往它那儿注入点什么 (人在群里说话、同伴派活、定时任务到点),
9
+ // 这些行以 `<system-reminder>` 的形式挂在那段文本尾巴上一起进去。不占一轮、不进
10
+ // 气泡、不进 transcript (META_RE 会把它剥掉) —— 与 renderPeerMentionHint 同一条
11
+ // 边界注入通路。
12
+ //
13
+ // 感知 = spawn 时的快照 + turn 时的增量。两者都不花额外的轮次。
14
+ //
15
+ // 投递即清空: 那一次注入失败的话这几行就丢了。通知是提示, 真相永远可以
16
+ // wizard_roster 问到; 为一行提示做可靠投递不值当。信箱是纯内存的, daemon 重启即
17
+ // 清空 —— 同 graph run, 诚实地说: pane 还在, 没送到的提示没了。
18
+ import { baseOfKey } from "../shared/session-label.js";
19
+ /** 每个信箱最多攒 `max` 行 —— 一个挂了很久的 wizard 不该在醒来时读一部编年史,
20
+ * 溢出时留最新的那些 (旧的那些多半已经被后面的变动覆盖了)。 */
21
+ export const createNoticeBox = (max = 12) => {
22
+ const boxes = new Map();
23
+ return {
24
+ post: (audience, line) => {
25
+ if (!line.trim())
26
+ return;
27
+ for (const t of new Set(audience)) {
28
+ boxes.set(t, [...(boxes.get(t) ?? []), line].slice(-max));
29
+ }
30
+ },
31
+ drain: (target) => {
32
+ const lines = boxes.get(target) ?? [];
33
+ boxes.delete(target);
34
+ return lines;
35
+ },
36
+ };
37
+ };
38
+ // 进程内唯一的信箱。inbound (人说的话) 和 mirror-bridge (同伴/定时注入) 是两条
39
+ // 独立的注入路径, 两边都要能挂增量; 为此给各自的安装函数再加一个参数不值当 ——
40
+ // 同 bindWizardStore 的取舍。没绑 = 全链路退化成无增量, 行为照旧。
41
+ let bound;
42
+ export const bindNoticeBox = (box) => (bound = box);
43
+ export const noticeBox = () => bound;
44
+ /** 纯渲染。`<system-reminder>` 是机器信息而非对话, 与 mention hint 同一个壳。 */
45
+ export const renderNotices = (lines) => {
46
+ if (lines.length === 0)
47
+ return "";
48
+ return [
49
+ "",
50
+ "<system-reminder>",
51
+ "你出生时拿到的那份名册已经变了 —— 这段时间里:",
52
+ ...lines.map((l) => `- ${l}`),
53
+ "要当下真实的状态 (谁在忙、谁在哪个工作区) 就调 wizard_roster。与手头的活无关就略过,",
54
+ "**不要为此回话, 也不要向用户复述这几行** —— 群里该看见的气泡已经发过了。",
55
+ "</system-reminder>",
56
+ ].join("\n");
57
+ };
58
+ /** 注入边界上取一次增量。slash 命令按行解析, 尾巴上多挂一段会让它不再被识别成
59
+ * 命令 —— 同 inbound 对 mention hint 的处理, 这类注入直接跳过 (信箱不清空, 等
60
+ * 下一条普通消息)。 */
61
+ export const noticeSuffixFor = (target, text) => {
62
+ const box = noticeBox();
63
+ if (!box || text.trimStart().startsWith("/"))
64
+ return "";
65
+ return renderNotices(box.drain(target));
66
+ };
67
+ /** 同一个聊天里除了当事人之外的所有 wizard —— 一次变动的默认听众。跨聊天的同伴
68
+ * 不在其中: 群成员变动是那个群的事, 别的群只在真的去 send_peer 时才需要知道。 */
69
+ export const chatAudience = (liveTargets, base, except) => liveTargets.filter((t) => baseOfKey(t) === base && !except.includes(t));
70
+ //# sourceMappingURL=notices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notices.js","sourceRoot":"","sources":["../../daemon/notices.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,EAAE;AACF,wDAAwD;AACxD,+CAA+C;AAC/C,qCAAqC;AACrC,EAAE;AACF,8CAA8C;AAC9C,4CAA4C;AAC5C,oDAAoD;AACpD,kEAAkE;AAClE,UAAU;AACV,EAAE;AACF,4CAA4C;AAC5C,EAAE;AACF,uCAAuC;AACvC,sDAAsD;AACtD,8CAA8C;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AASvD;qCACqC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,GAAG,EAAE,EAAa,EAAE;IACrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC1C,OAAO;QACL,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;YACvB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO;YACzB,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE;YAChB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,wDAAwD;AACxD,4CAA4C;AAC5C,8CAA8C;AAC9C,IAAI,KAA4B,CAAC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAc,EAAa,EAAE,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,SAAS,GAAG,GAA0B,EAAE,CAAC,KAAK,CAAC;AAE5D,8DAA8D;AAC9D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAwB,EAAU,EAAE;IAChE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO;QACL,EAAE;QACF,mBAAmB;QACnB,2BAA2B;QAC3B,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,qDAAqD;QACrD,2CAA2C;QAC3C,oBAAoB;KACrB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC,CAAC;AAEF;;gBAEgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,IAAY,EAAU,EAAE;IACtE,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACxD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF;oDACoD;AACpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,WAA8B,EAC9B,IAAY,EACZ,MAAyB,EACf,EAAE,CACZ,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -1,10 +1,10 @@
1
- // Peer awareness: the read side of "who else is working in this chat".
1
+ // 同伴感知: 「这个聊天里还有谁在干活」的读侧。
2
2
  //
3
- // A single WeCom chat hosts one default session plus any number of `#tag`
4
- // sessions (inbound.ts routes on the tag). Those siblings are *peers* — same
5
- // chat, own tmux pane, own CLI / model / cwd. An agent that can see its peers
6
- // can also collaborate with them: read `#fix`'s pane, inject a nudge, wait for
7
- // it to go idle, then act on its answer.
3
+ // 一个企微聊天里住着一个默认 wizard 加任意多个 `#tag` wizard (inbound.ts 按 tag
4
+ // 路由)。它们互为同伴 —— 同一个聊天, 各有各的 pane、CLI、模型、工作区。看得见
5
+ // 同伴的 wizard 就驱动得动它们: 读 `#fix` 的终端、推它一把、等它闲下来、再拿它
6
+ // 的答案接着干。身份那一层 (名字/职责/记忆/家谱) 在 wizard.ts, 这里只管"此刻它
7
+ // 在干嘛、是不是还活着"。
8
8
  //
9
9
  // Everything here is pure parsing over a transcript tail or a captured pane —
10
10
  // no tmux, no WeCom, no daemon state. The mirror bridge (which owns the live
@@ -18,16 +18,30 @@ export const stripAnsi = (s) => s.replace(/\x1B\[[0-9;?]*[a-zA-Z]/g, "").replace
18
18
  // only ever want the last few turns. 64K covers ~10 turns of prose plus tool
19
19
  // noise even in the worst case.
20
20
  const TAIL_BYTES = 64 * 1024;
21
- const readTail = (jsonlPath) => {
21
+ // …除非单行本身就比窗口大。Claude Code 每轮往 transcript 里写若干 `attachment`
22
+ // 行, 其中 `prompt_snapshot` 带完整系统提示 + skill 清单 —— 实测一行 157KB。一条
23
+ // 这样的行就能把 64K 的窗口整个吃掉, 于是尾部根本够不到真正的对话行: lastText 空、
24
+ // summarizeTail 空、keepalive 的两个时钟一起退化成 mtime。窗口因此按需长大: 常见
25
+ // 情况仍然只读 64K, 读不到要的东西才翻四倍, 到这个上限为止 (再大就不是"尾巴"了)。
26
+ const TAIL_BYTES_MAX = 2 * 1024 * 1024;
27
+ const fileSize = (jsonlPath) => {
28
+ try {
29
+ return statSync(jsonlPath).size;
30
+ }
31
+ catch {
32
+ return 0;
33
+ }
34
+ };
35
+ const readTailBytes = (jsonlPath, want) => {
22
36
  if (!existsSync(jsonlPath))
23
37
  return "";
24
38
  let fd;
25
39
  try {
26
40
  const size = statSync(jsonlPath).size;
27
- const len = Math.min(size, TAIL_BYTES);
41
+ const len = Math.min(size, want);
28
42
  const buf = Buffer.allocUnsafe(len);
29
43
  fd = openSync(jsonlPath, "r");
30
- const read = readSync(fd, buf, 0, len, Math.max(0, size - TAIL_BYTES));
44
+ const read = readSync(fd, buf, 0, len, Math.max(0, size - want));
31
45
  return buf.subarray(0, read).toString("utf8");
32
46
  }
33
47
  catch {
@@ -42,6 +56,18 @@ const readTail = (jsonlPath) => {
42
56
  }
43
57
  }
44
58
  };
59
+ /** 从文件尾读一段并解析; `enough` 说不够就翻四倍重读, 直到够了、读完整个文件、
60
+ * 或者撞上上限。窗口是手段不是目的 —— 调用方只说"我要几轮", 不该关心一条
61
+ * attachment 有多大。 */
62
+ const readTailUntil = (jsonlPath, parse, enough) => {
63
+ const size = fileSize(jsonlPath);
64
+ const ceiling = Math.min(size || TAIL_BYTES, TAIL_BYTES_MAX);
65
+ const walk = (win) => {
66
+ const parsed = parse(readTailBytes(jsonlPath, win));
67
+ return enough(parsed) || win >= ceiling ? parsed : walk(Math.min(win * 4, ceiling));
68
+ };
69
+ return walk(Math.min(TAIL_BYTES, ceiling));
70
+ };
45
71
  // Meta wrappers Claude Code injects around slash commands / hook output. They
46
72
  // are machinery, not conversation — drop them before any summary or handoff.
47
73
  const META_RE = /<(system-reminder|command-[^>]*|local-command-[^>]*|task-notification)>[\s\S]*?<\/\1>/g;
@@ -57,12 +83,13 @@ const blockText = (content) => {
57
83
  };
58
84
  /** Last `n` user/assistant turns of a transcript, oldest first. Backend-agnostic:
59
85
  * the line shape is normalized through the owning CLI's dialect adapter. */
60
- export const tailTurns = (jsonlPath, n = 3) => {
61
- const raw = readTail(jsonlPath);
86
+ export const tailTurns = (jsonlPath, n = 3) => readTailUntil(jsonlPath, (raw) => parseTurns(jsonlPath, raw), (ts) => ts.length >= n).slice(-n);
87
+ /** 纯解析: 一段 transcript 原文 → 里面的对话轮次。 */
88
+ const parseTurns = (jsonlPath, raw) => {
62
89
  if (!raw)
63
90
  return [];
64
91
  const normalize = backendForPath(jsonlPath).normalizeTranscriptLine;
65
- const turns = raw
92
+ return raw
66
93
  .split("\n")
67
94
  .filter((l) => l.trim())
68
95
  .flatMap((line) => {
@@ -98,7 +125,6 @@ export const tailTurns = (jsonlPath, n = 3) => {
98
125
  const ms = typeof rawTs === "number" ? rawTs : Date.parse(String(rawTs ?? ""));
99
126
  return text ? [{ role, text, ms: Number.isNaN(ms) ? 0 : ms }] : [];
100
127
  });
101
- return turns.slice(-n);
102
128
  };
103
129
  // Flatten a message's content for QUOTE DEDUP only — unlike `blockText` this
104
130
  // also lifts `tool_use` (name + stringified input) and `tool_result` text.
@@ -140,66 +166,57 @@ export const keepalivePingSigs = (...pings) => pings.map((p) => normPing(p).slic
140
166
  * the bare "ping" legacy streak form still present in older transcripts. */
141
167
  export const isKeepalivePingText = (text, sigs) => normPing(text).toLowerCase() === "ping" ||
142
168
  sigs.some((sig) => sig.length > 0 && normPing(text).includes(sig));
143
- /** Like `tailTurns` but the flattened text includes tool_use/tool_result
144
- * content — the dedup-only reader so quoted tool bubbles match context.
145
- * `n` counts logical conversation turns (user→assistant transitions), not
146
- * individual transcript records — essential for backends like CodeBuddy
147
- * where a single turn is split across many jsonl lines (text, function_call,
148
- * function_call_result, reasoning, …).
149
- * `pingSigs` 剔除 keepalive ping 及其应答后再数轮次(有效 tail) —— 挂机久了
150
- * ping/pong 会把真实轮次挤出窗口,引用去重 miss → 原文被重复注入。 */
151
- export const tailTurnsWithTools = (jsonlPath, n = 3, pingSigs = []) => {
152
- const raw = readTail(jsonlPath);
169
+ /** 纯解析: transcript 原文 → 条目 (文本含 tool_use/tool_result)。 */
170
+ const parseToolEntries = (jsonlPath, raw) => {
153
171
  if (!raw)
154
- return "";
172
+ return [];
155
173
  const normalize = backendForPath(jsonlPath).normalizeTranscriptLine;
156
- const all = [];
157
- for (const line of raw.split("\n")) {
174
+ return raw.split("\n").flatMap((line) => {
158
175
  if (!line.trim())
159
- continue;
176
+ return [];
160
177
  let parsed;
161
178
  try {
162
179
  parsed = JSON.parse(line);
163
180
  }
164
181
  catch {
165
- continue;
182
+ return [];
166
183
  }
167
184
  let row;
168
185
  try {
169
186
  row = normalize(parsed);
170
187
  }
171
188
  catch {
172
- continue;
189
+ return [];
173
190
  }
174
191
  if (!row || row.isMeta || row.isSidechain)
175
- continue;
192
+ return [];
176
193
  const role = row.message?.role;
177
194
  if (role !== "user" && role !== "assistant")
178
- continue;
195
+ return [];
179
196
  const text = blockTextWithTools(row.message?.content).replace(META_RE, "").replace(/\s+/g, " ").trim();
180
- if (text)
181
- all.push({ role, text });
182
- }
183
- // Keepalive = ping query + whatever the model replies to it (query-based,
184
- // same rule as keepaliveStamps).
185
- const isPingEntry = (e) => !!e && e.role === "user" && isKeepalivePingText(e.text, pingSigs);
186
- const entries = all.filter((e, i) => !isPingEntry(e) && !(e.role === "assistant" && isPingEntry(all[i - 1])));
187
- // Count logical turns: each user→assistant transition (or assistant→user)
188
- // is one turn. Walk backward to find the cut point for the last `n` turns.
197
+ return text ? [{ role, text }] : [];
198
+ });
199
+ };
200
+ /** Keepalive = ping query + whatever the model replies to it (query-based,
201
+ * same rule as keepaliveStamps). */
202
+ const withoutPings = (all, pingSigs) => {
203
+ const isPing = (e) => !!e && e.role === "user" && isKeepalivePingText(e.text, pingSigs);
204
+ return all.filter((e, i) => !isPing(e) && !(e.role === "assistant" && isPing(all[i - 1])));
205
+ };
206
+ /** 逻辑轮次 = 角色交替的次数 (一条模型回复可能被后端拆成好几行记录)。 */
207
+ const countTurns = (entries) => entries.reduce((acc, e, i) => acc + (i > 0 && entries[i - 1].role !== e.role ? 1 : 0), 0);
208
+ /** 从尾部数 `n` 个逻辑轮次的切点; 不足 n 轮就从头给 (要多少给多少)。 */
209
+ const cutForTurns = (entries, n) => {
189
210
  let turns = 0;
190
- let cutIdx = entries.length;
191
211
  for (let i = entries.length - 1; i > 0; i--) {
192
- if (entries[i].role !== entries[i - 1].role) {
193
- turns++;
194
- if (turns >= n) {
195
- cutIdx = i;
196
- break;
197
- }
198
- }
212
+ if (entries[i].role !== entries[i - 1].role && ++turns >= n)
213
+ return i;
199
214
  }
200
- if (turns < n)
201
- cutIdx = 0; // fewer turns than requested — return everything
202
- return entries.slice(cutIdx).map((e) => e.text).join("\n");
215
+ return 0;
216
+ };
217
+ export const tailTurnsWithTools = (jsonlPath, n = 3, pingSigs = []) => {
218
+ const entries = withoutPings(readTailUntil(jsonlPath, (raw) => parseToolEntries(jsonlPath, raw), (es) => countTurns(withoutPings(es, pingSigs)) >= n), pingSigs);
219
+ return entries.slice(cutForTurns(entries, n)).map((e) => e.text).join("\n");
203
220
  };
204
221
  // Transcript prose is arbitrary text: backticks / asterisks / pipes lifted out of
205
222
  // it render as chips and table cells inside a WeCom bubble, shredding the line
@@ -222,6 +239,21 @@ export const summarizeTail = (jsonlPath, n = 3, per = 80) => {
222
239
  export const renderDialog = (turns, per = 800) => turns
223
240
  .map((t) => `${t.role === "user" ? "▸" : "◂"} ${t.text.length > per ? `${t.text.slice(0, per)}…` : t.text}`)
224
241
  .join("\n");
242
+ /** 交付收口行。
243
+ *
244
+ * fan-out 之后 join 的载荷是「最后一条 assistant 文本」, 而一个分身的最后一句可能
245
+ * 是"好的我开始了", 也可能是八百字散文 —— 两种都没法直接汇总。对法与 graph 的
246
+ * `until` 哨兵同源: 不改 CLI 的输出格式 (改不了), 只在派活的提示里要求收口成一行
247
+ * `RESULT: …`, 这里把它捞出来。取**最后一个**匹配 —— 中间复述过这个格式的那些
248
+ * 不算数。捞不到返回 "", 调用方退回整段 lastText, 所以不遵守约定也只是退化。 */
249
+ export const extractResult = (text, max = 800) => {
250
+ // 标记之后的**全部**内容, 而不是"那一行" —— 这个函数的入口 (lastAssistantText)
251
+ // 已经把换行压成空格了, 行的概念到这里不存在。约定是收口在最后, 所以标记之后
252
+ // 剩下的就是结论。取最后一个匹配: 模型常先复述一遍格式要求再给答案。
253
+ const hits = [...text.matchAll(/(?:^|[\s>*|-])(?:RESULT|结论)\s*[::]\s*/gim)];
254
+ const last = hits[hits.length - 1];
255
+ return last ? text.slice((last.index ?? 0) + last[0].length).trim().slice(0, max) : "";
256
+ };
225
257
  /** The peer's most recent assistant message — the handoff payload when one
226
258
  * agent drives another ("take #fix's conclusion and review it"). */
227
259
  export const lastAssistantText = (jsonlPath, max = 4000) => {
@@ -234,8 +266,8 @@ export const lastAssistantText = (jsonlPath, max = 4000) => {
234
266
  * have to re-write at 1.25x. Read from the last assistant usage snapshot in
235
267
  * the tail; 0 when no usage is on record yet. Drives the keepalive decision
236
268
  * and the "session size" note. */
237
- export const lastContextTokens = (jsonlPath) => {
238
- const raw = readTail(jsonlPath);
269
+ export const lastContextTokens = (jsonlPath) => readTailUntil(jsonlPath, (raw) => pickContextTokens(jsonlPath, raw), (v) => v > 0);
270
+ const pickContextTokens = (jsonlPath, raw) => {
239
271
  if (!raw)
240
272
  return 0;
241
273
  const normalize = backendForPath(jsonlPath).normalizeTranscriptLine;
@@ -396,22 +428,22 @@ export const renderPeerMentionHint = (mentions) => {
396
428
  return "";
397
429
  const live = mentions.filter((m) => !m.unborn);
398
430
  const unborn = mentions.filter((m) => m.unborn);
399
- const lines = live.map((m) => `- \`#${m.tag}\` ${m.label} — a live agent session${m.foreign ? ` in ANOTHER chat${m.chat ? ` named "${m.chat}"` : ""}` : " in this chat"}` +
400
- ` (target \`${m.target}\`${m.cwd ? `, cwd ${m.cwd}` : ""}), address "${m.address}".`);
401
- const unbornLines = unborn.map((m) => `- \`${m.address}\` — refers to chat "${m.chat}" tag "#${m.tag}", but that session does NOT exist yet.` +
402
- ` Create it first: new_claude_session({ chat: "${m.chat}", tag: "${m.tag}", cwd: "<project path>" }),` +
403
- ` then send_peer("${m.address}", "<task>") to hand it work.`);
431
+ const lines = live.map((m) => `- \`#${m.tag}\` ${m.label} —— 一个活着的 wizard, 住在${m.foreign ? `**另一个**聊天${m.chat ? ` (\`${m.chat}\`)` : ""}` : "你这个聊天"}` +
432
+ ` (target \`${m.target}\`${m.cwd ? `, 工作区 ${m.cwd}` : ""}), 地址 "${m.address}"。`);
433
+ const unbornLines = unborn.map((m) => `- \`${m.address}\` —— 指的是聊天 "${m.chat}" 里的 "#${m.tag}", 但那个 wizard **还不存在**。` +
434
+ ` 先把它造出来: new_claude_session({ chat: "${m.chat}", tag: "${m.tag}", cwd: "<项目路径>" }) (白纸一张),` +
435
+ ` 或者 spawn_clone 让它继承你此刻的上下文; 然后 send_peer("${m.address}", "<活>") 派活。`);
404
436
  const parts = [
405
437
  "",
406
438
  "<system-reminder>",
407
439
  ];
408
440
  if (lines.length > 0) {
409
- parts.push("The `#tag` token(s) in the message above name peer agent sessions, not literal text:", ...lines);
441
+ parts.push("上面这条消息里的 `#tag` 点的是**别的 wizard**, 不是字面文本:", ...lines);
410
442
  }
411
443
  if (unbornLines.length > 0) {
412
- parts.push("The following compound addresses (`chatName#tag`) refer to sessions that don't exist yet:", ...unbornLines);
444
+ parts.push("下面这些 `聊天名#tag` 形式的地址指向还不存在的 wizard:", ...unbornLines);
413
445
  }
414
- parts.push("When the user asks you to involve, check on, or relay to one of them, use the wezard peer tools rather than", "guessing or answering on its behalf: peek_peer(address) reads its recent conversation, send_peer(address, text)", "hands it work or a nudge, wait_peer(address) blocks until it goes idle, list_peers() shows everyone. Pass the", "`address` shown above verbatim — a bare tag for a sibling, `chatName#tag` for a peer in another chat. A mention that is", "merely referential (\"#b 说的那个方案\") needs no tool call — judge from what the user is asking for.", "</system-reminder>");
446
+ parts.push("用户要你把它们拉进来、看看它们在干嘛、或者把话带到时, 去叫它们, 别猜、更别替它们回答:", "peek_peer(address) 读它最近的对话, send_peer(address, text) 派活或推它一把, wait_peer(address) 等它闲下来,", "wizard_roster() 看全体 wizard 的名字/职责/家谱。地址原样用上面给的那个 —— 同一个聊天里是裸 tag,", "别的聊天里是 `聊天名#tag`。你跟它们说的话会以 `你 → 它` 的气泡出现在群里, 所以直说、别复述。", "只是提了一嘴、并没有要你去找它 (\"#b 说的那个方案\") 就不必调工具 —— 看用户到底要什么。", "</system-reminder>");
415
447
  return parts.join("\n");
416
448
  };
417
449
  //# sourceMappingURL=peers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"peers.js","sourceRoot":"","sources":["../../daemon/peers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"peers.js","sourceRoot":"","sources":["../../daemon/peers.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@
25
25
  // before the first paste-buffer inject hits.
26
26
  import { spawn } from "node:child_process";
27
27
  import { randomUUID } from "node:crypto";
28
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
28
+ import { existsSync, mkdirSync, readFileSync, readdirSync, statSync, unlinkSync, writeFileSync } from "node:fs";
29
29
  import { homedir } from "node:os";
30
30
  import { basename, dirname, join } from "node:path";
31
31
  import { expandHome } from "../shared/paths.js";
@@ -226,7 +226,47 @@ export const trustWorkspace = (claudeBin, cwd, log) => {
226
226
  log.warn({ target, err: e.message }, "trustWorkspace: write failed");
227
227
  }
228
228
  };
229
- export const spawnTmuxClaude = async ({ cfg, log, resumeSessionId, windowName, cwdOverride, cli, model }) => {
229
+ /** 一个会话一份宪章, 会话是无限多的 —— 留最近 200 份就够用 (真正在跑的 pane
230
+ * 远少于此, 更老的那些对应的会话早已不存在)。best-effort: 清不掉也不影响 spawn。 */
231
+ const CHARTER_KEEP = 200;
232
+ const pruneCharters = (dir) => {
233
+ try {
234
+ const files = readdirSync(dir).filter((n) => n.endsWith(".md"));
235
+ if (files.length <= CHARTER_KEEP)
236
+ return;
237
+ files
238
+ .map((n) => ({ p: join(dir, n), m: statSync(join(dir, n)).mtimeMs }))
239
+ .sort((a, b) => b.m - a.m)
240
+ .slice(CHARTER_KEEP)
241
+ .forEach((f) => { try {
242
+ unlinkSync(f.p);
243
+ }
244
+ catch { /* 下次再说 */ } });
245
+ }
246
+ catch { /* ignore */ }
247
+ };
248
+ /** Park a charter next to the daemon's other state and hand back the shell
249
+ * fragment that feeds it to the CLI. "" when the backend has no flag for it,
250
+ * or the write failed — a missing charter degrades the wizard's self-awareness,
251
+ * it must never cost us the pane. */
252
+ const charterArg = (cfg, backend, sessionId, charter, log) => {
253
+ const text = (charter ?? "").trim();
254
+ if (!text || !backend.systemPromptFlag)
255
+ return "";
256
+ try {
257
+ const dir = join(expandHome(cfg.daemon.stateDir), "charters");
258
+ mkdirSync(dir, { recursive: true });
259
+ const file = join(dir, `${sessionId}.md`);
260
+ writeFileSync(file, text, "utf8");
261
+ pruneCharters(dir);
262
+ return `${backend.systemPromptFlag} "$(cat ${shQuote(file)})"`;
263
+ }
264
+ catch (e) {
265
+ log.warn({ err: e.message }, "spawn-tmux: charter write failed; spawning without identity");
266
+ return "";
267
+ }
268
+ };
269
+ export const spawnTmuxClaude = async ({ cfg, log, resumeSessionId, windowName, cwdOverride, cli, model, systemPrompt, forkSession }) => {
230
270
  const backend = backendFor(cfg, cli);
231
271
  const cwd = expandHome((cwdOverride ?? "").trim() || cfg.wrc.cwd);
232
272
  const projectDir = join(expandHome(backend.projectsDir), backend.encodeProjectDir(cwd));
@@ -300,11 +340,13 @@ export const spawnTmuxClaude = async ({ cfg, log, resumeSessionId, windowName, c
300
340
  "DISABLE_AUTOUPDATER=1",
301
341
  ];
302
342
  const argv = [
303
- ...(resumeSessionId ? ["--resume", sessionId] : ["--session-id", sessionId]),
343
+ ...(resumeSessionId ? ["--resume", sessionId, ...(forkSession ? ["--fork-session"] : [])] : ["--session-id", sessionId]),
304
344
  ...(model?.trim() ? ["--model", model.trim()] : []),
305
345
  ...cfg.wrc.extraArgs,
306
346
  ].map(shQuote);
307
- const cmd = [...envPrefix, backend.bin, ...argv].join(" ");
347
+ const cmd = [...envPrefix, backend.bin, ...argv, charterArg(cfg, backend, sessionId, systemPrompt, log)]
348
+ .filter(Boolean)
349
+ .join(" ");
308
350
  // Old tmux couldn't set the pane's start-dir via `-c`; cd into it first.
309
351
  const launch = supportsC ? cmd : `cd ${shQuote(cwd)} && ${cmd}`;
310
352
  const sent = await runTmux(["send-keys", "-t", tmuxPane, launch, "Enter"]);
@@ -1 +1 @@
1
- {"version":3,"file":"spawn-tmux.js","sourceRoot":"","sources":["../../daemon/spawn-tmux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawn-tmux.js","sourceRoot":"","sources":["../../daemon/spawn-tmux.ts"],"names":[],"mappings":"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"}