clawconnect-agent 0.2.14 → 0.2.15

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 (37) hide show
  1. package/README.md +2 -2
  2. package/README.zh-CN.md +1 -1
  3. package/dist/commands/install.js +5 -3
  4. package/dist/commands/install.js.map +1 -1
  5. package/dist/config/profile-log-rotation.d.ts +1 -1
  6. package/dist/config/profile-log-rotation.js +1 -1
  7. package/dist/config/profile-log-rotation.js.map +1 -1
  8. package/dist/hermes/runtime/hermes-runtime-chat-file-transfer.d.ts +28 -0
  9. package/dist/hermes/runtime/hermes-runtime-chat-file-transfer.js +53 -55
  10. package/dist/hermes/runtime/hermes-runtime-chat-file-transfer.js.map +1 -1
  11. package/dist/hermes/runtime/hermes-runtime-history-turn-output.d.ts +30 -0
  12. package/dist/hermes/runtime/hermes-runtime-history-turn-output.js +61 -0
  13. package/dist/hermes/runtime/hermes-runtime-history-turn-output.js.map +1 -0
  14. package/dist/hermes/runtime/hermes-runtime-history.js +24 -3
  15. package/dist/hermes/runtime/hermes-runtime-history.js.map +1 -1
  16. package/dist/hermes/runtime/hermes-runtime-state-db.js +28 -0
  17. package/dist/hermes/runtime/hermes-runtime-state-db.js.map +1 -1
  18. package/dist/index.js +1 -1
  19. package/dist/index.js.map +1 -1
  20. package/dist/openclaw/handlers/local-handlers.js +1 -1
  21. package/dist/openclaw/handlers/local-handlers.js.map +1 -1
  22. package/dist/platform/service-manager-windows.d.ts +39 -29
  23. package/dist/platform/service-manager-windows.js +256 -448
  24. package/dist/platform/service-manager-windows.js.map +1 -1
  25. package/dist/platform/windows-process-control.d.ts +16 -0
  26. package/dist/platform/windows-process-control.js +91 -0
  27. package/dist/platform/windows-process-control.js.map +1 -0
  28. package/dist/platform/windows-service-host-source.d.ts +23 -0
  29. package/dist/platform/windows-service-host-source.js +357 -0
  30. package/dist/platform/windows-service-host-source.js.map +1 -0
  31. package/dist/platform/windows-service-legacy-startup.d.ts +27 -0
  32. package/dist/platform/windows-service-legacy-startup.js +101 -0
  33. package/dist/platform/windows-service-legacy-startup.js.map +1 -0
  34. package/dist/platform/windows-service-paths.d.ts +15 -0
  35. package/dist/platform/windows-service-paths.js +30 -0
  36. package/dist/platform/windows-service-paths.js.map +1 -0
  37. package/package.json +1 -1
package/README.md CHANGED
@@ -192,9 +192,9 @@ clawconnect install
192
192
 
193
193
  - macOS: installs a `launchd` user agent
194
194
  - Linux: prefers `systemd --user`, and falls back to `nohup` when `systemctl --user` is unavailable
195
- - Windows: registers a limited-privilege Windows Task Scheduler task when allowed, otherwise uses the current user's Startup registry entry; both auto-start silently at logon without requiring administrator elevation
195
+ - Windows: registers a real Windows Service that runs as the current user and starts automatically at boot. The service supervises the agent and restarts it after a crash or when it is killed. Installing, updating, restarting and removing the service require an elevated terminal ("Run as administrator"); the first install asks once for the current Windows account password, which is validated and handed to the Service Control Manager without ever being written to a command line or file. The service host is compiled at install time with the .NET Framework 4 compiler that ships with Windows (`csc.exe`), so no SDK is needed.
196
196
 
197
- Windows profiles use isolated background startup entries and UTF-8 logs, for example `ClawConnectAgent-openclaw` and `ClawConnectAgent-hermes`.
197
+ Windows profiles use isolated services and UTF-8 logs, for example `ClawConnectAgent-openclaw` and `ClawConnectAgent-hermes`. Installing migrates away from the previous Task Scheduler / Startup entries: the old task is deleted so it cannot start a second agent.
198
198
 
199
199
  Linux profiles are isolated as well: systemd units use names such as
200
200
  `clawconnect-agent-openclaw.service` and `clawconnect-agent-hermes.service`,
package/README.zh-CN.md CHANGED
@@ -224,7 +224,7 @@ clawconnect install
224
224
  - macOS:安装为 `launchd` 用户服务
225
225
  - Linux:优先使用 `systemd --user`
226
226
  - 如果 Linux 当前环境不支持 `systemd --user`,会自动回退到 `nohup`
227
- - Windows:优先注册为有限权限的 Windows Task Scheduler 任务;若系统策略要求管理员权限,则自动使用当前用户的启动项,二者都会在登录时静默启动且无需管理员提权
227
+ - Windows:注册为以当前用户运行的 Windows 服务,开机自启,由服务宿主监督 Agent,崩溃或被杀后自动重启。安装、更新、重启、卸载服务都需要在管理员终端(“以管理员身份运行”)中执行;首次安装会让你输入一次当前 Windows 账户密码,密码经校验后只交给服务控制管理器,不会写入命令行或文件。服务宿主在安装时用 Windows 自带的 .NET Framework 4 编译器(`csc.exe`)现场编译,无需安装 SDK;安装会清理旧的计划任务/启动项,避免旧项再拉起第二个 Agent
228
228
 
229
229
  Windows 的不同 profile 使用独立后台启动项(例如 `ClawConnectAgent-openclaw`、`ClawConnectAgent-hermes`)和独立 UTF-8 日志,不会互相覆盖。
230
230
 
@@ -33,6 +33,8 @@ export function installCommand() {
33
33
  return;
34
34
  }
35
35
  const servicePaths = getServicePaths();
36
+ // 失败必须体现在退出码上:`clawconnect update` 依赖它判断服务是否真的重装成功。
37
+ process.exitCode = 1;
36
38
  console.log(t("install.installFailed", platformName(platform)));
37
39
  if (platform === "macos") {
38
40
  console.log(t("install.serviceFileWritten", servicePaths.macPlistPath));
@@ -44,8 +46,7 @@ export function installCommand() {
44
46
  console.log(t("install.startManually", `bash "${servicePaths.linuxNohupStartScriptPath}"`));
45
47
  }
46
48
  else if (platform === "windows") {
47
- const taskName = getServiceStatus().serviceName;
48
- console.log(t("install.startManually", `schtasks /run /tn "${taskName}"`));
49
+ console.log(t("install.startManually", getServiceStatus().startHint ?? ""));
49
50
  }
50
51
  }
51
52
  export function restartCommand() {
@@ -65,6 +66,7 @@ export function restartCommand() {
65
66
  console.log(t("install.serviceRestarted", platformName(platform)));
66
67
  return;
67
68
  }
69
+ process.exitCode = 1;
68
70
  console.log(t("install.restartFailed", platformName(platform)));
69
71
  }
70
72
  export function isActiveMobileChatProcess(env = process.env) {
@@ -139,7 +141,7 @@ function platformName(platform) {
139
141
  case "linux":
140
142
  return "systemd/nohup";
141
143
  case "windows":
142
- return "Windows Task Scheduler";
144
+ return "Windows Service";
143
145
  default:
144
146
  return process.platform;
145
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** 单个日志文件超过该体积即轮转;launchd/systemd/schtasks 都以追加方式重定向 stdout,无法自行轮转。 */
1
+ /** 单个日志文件超过该体积即轮转;launchd/systemd/Windows 服务宿主都以追加方式写 stdout,无法自行轮转。 */
2
2
  export declare const PROFILE_LOG_ROTATE_BYTES: number;
3
3
  export type ProfileLogRotationResult = {
4
4
  path: string;
@@ -1,6 +1,6 @@
1
1
  import { copyFileSync, statSync, truncateSync } from "fs";
2
2
  import { profileErrorLogPath, profileLogPath } from "./profile.js";
3
- /** 单个日志文件超过该体积即轮转;launchd/systemd/schtasks 都以追加方式重定向 stdout,无法自行轮转。 */
3
+ /** 单个日志文件超过该体积即轮转;launchd/systemd/Windows 服务宿主都以追加方式写 stdout,无法自行轮转。 */
4
4
  export const PROFILE_LOG_ROTATE_BYTES = 10 * 1024 * 1024;
5
5
  /**
6
6
  * 进程启动时对 profile 日志做一次有界轮转:把超限的当前文件复制为 `<file>.1`(只保留一代),
@@ -1 +1 @@
1
- {"version":3,"file":"profile-log-rotation.js","sourceRoot":"","sources":["../../src/config/profile-log-rotation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnE,uEAAuE;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAQzD;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAA2B,EAC3B,UAAmD,EAAE;IAErD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,wBAAwB,CAAC;IAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;IACvF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY,EAAE,QAAgB;IACrE,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,CAAC;QACH,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;IACD,IAAI,CAAC;QACH,YAAY,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;QAChC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,wBAAwB;QACxB,OAAO,CAAC,IAAI,CAAC,yCAAyC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"profile-log-rotation.js","sourceRoot":"","sources":["../../src/config/profile-log-rotation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnE,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAQzD;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAA2B,EAC3B,UAAmD,EAAE;IAErD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,wBAAwB,CAAC;IAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;IACvF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY,EAAE,QAAgB;IACrE,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,CAAC;QACH,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;IACD,IAAI,CAAC;QACH,YAAY,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;QAChC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,wBAAwB;QACxB,OAAO,CAAC,IAAI,CAAC,yCAAyC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -13,6 +13,34 @@ export declare function planHermesChatPreparation(params: {
13
13
  sourceRunId?: string;
14
14
  fileTransferCapability?: "cli";
15
15
  }): Promise<HermesChatPreparationPlan>;
16
+ /**
17
+ * 一个移动端轮次最终应该展示的文本,以及它是怎么来的。
18
+ *
19
+ * 这是实时路径(`verifyHermesFileTransferIfRequired`)和历史投影(`runHermesChatHistory`)
20
+ * 共用的唯一规则:同一份 state.db 行只能算出同一个答案,两处不能各算一遍。
21
+ * 模型在 outcome 工具之后补的收尾文字("已发送 ✅"之类)不是可信的最终回答,
22
+ * 只有 typed outcome 的 assistantText、第一方 send-file 回执和宿主生成的失败提示才算。
23
+ */
24
+ export type HermesTurnOutput = {
25
+ kind: "none";
26
+ } | {
27
+ kind: "file-evidence";
28
+ text: string;
29
+ fileCount: number;
30
+ } | {
31
+ kind: "clarification";
32
+ text: string;
33
+ } | {
34
+ kind: "cancelled";
35
+ text: string;
36
+ } | {
37
+ kind: "ordinary";
38
+ text: string;
39
+ } | {
40
+ kind: "attempted-unverified";
41
+ text: string;
42
+ };
43
+ export declare function resolveHermesTurnOutput(messages: Array<Record<string, unknown>> | undefined, sourceRunId: string): HermesTurnOutput;
16
44
  export declare function verifyHermesFileTransferIfRequired(params: {
17
45
  plan: HermesChatPreparationPlan;
18
46
  gatewayId: string;
@@ -33,73 +33,71 @@ export async function planHermesChatPreparation(params) {
33
33
  function normalizeHermesRole(value) {
34
34
  return typeof value === "string" ? value.trim().toLowerCase() : "";
35
35
  }
36
- export async function verifyHermesFileTransferIfRequired(params) {
37
- if (!params.plan.preloadFileTransferSkill) {
38
- return {};
39
- }
40
- const messages = params.sessionId ? await readHermesSessionMessages(params.sessionId) : undefined;
41
- const evidence = params.sourceRunId
42
- ? collectHermesFileTransferEvidence(messages, params.sourceRunId)
43
- : [];
36
+ export function resolveHermesTurnOutput(messages, sourceRunId) {
37
+ // 优先级固定:文件回执 > typed outcome > 无回执的 send-file 尝试 > 无结论。
38
+ const evidence = collectHermesFileTransferEvidence(messages, sourceRunId);
44
39
  if (evidence.length > 0) {
45
- await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, params.plan.pendingFileTransfer?.sourceRunId);
46
40
  return {
47
- verifiedFileTransferCount: evidence.length,
48
- output: `已发送 ${evidence.length} 个文件,请查收。`,
41
+ kind: "file-evidence",
42
+ text: `已发送 ${evidence.length} 个文件,请查收。`,
43
+ fileCount: evidence.length,
49
44
  };
50
45
  }
51
- const outcome = params.sourceRunId
52
- ? collectHermesFileTransferOutcome(messages, params.sourceRunId)
53
- : undefined;
46
+ const outcome = collectHermesFileTransferOutcome(messages, sourceRunId);
54
47
  if (outcome?.kind === "clarification") {
55
- if (params.sessionId && params.sourceRunId) {
56
- await recordPendingHermesFileTransfer({
57
- gatewayId: params.gatewayId,
58
- sessionKey: params.sessionKey,
59
- hermesSessionId: params.sessionId,
60
- sourceRunId: params.sourceRunId,
61
- continuation: false,
62
- });
63
- }
64
- // Only the typed content field is displayable. Raw assistant prose is
65
- // deliberately discarded, and this outcome is never delivery evidence.
66
- return {
67
- output: outcome.assistantText ?? HERMES_FILE_TRANSFER_CONTENT_MISSING_MESSAGE,
68
- };
48
+ return { kind: "clarification", text: outcome.assistantText ?? HERMES_FILE_TRANSFER_CONTENT_MISSING_MESSAGE };
69
49
  }
70
50
  if (outcome?.kind === "cancelled") {
71
- await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, params.plan.pendingFileTransfer?.sourceRunId);
72
- return {
73
- output: outcome.assistantText ?? HERMES_FILE_TRANSFER_CANCELLED_MESSAGE,
74
- };
51
+ return { kind: "cancelled", text: outcome.assistantText ?? HERMES_FILE_TRANSFER_CANCELLED_MESSAGE };
75
52
  }
76
53
  if (outcome?.kind === "ordinary") {
77
- await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, params.plan.pendingFileTransfer?.sourceRunId);
78
- // Ordinary chat is shown only through the typed assistantText field. The
79
- // model's ordinary label is routing metadata, never proof of delivery.
80
- return {
81
- output: outcome.assistantText ?? HERMES_FILE_TRANSFER_CONTENT_MISSING_MESSAGE,
82
- };
54
+ // ordinary 只是路由标签,不是投递证明;可见内容只来自 typed assistantText。
55
+ return { kind: "ordinary", text: outcome.assistantText ?? HERMES_FILE_TRANSFER_CONTENT_MISSING_MESSAGE };
83
56
  }
84
- if (outcome?.kind === "attempted") {
85
- await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, params.plan.pendingFileTransfer?.sourceRunId);
86
- return {
87
- verifiedFileTransferCount: 0,
88
- output: HERMES_FILE_TRANSFER_NOT_SENT_MESSAGE,
89
- };
57
+ if (outcome?.kind === "attempted" || hasHermesSendFileAttempt(messages, sourceRunId)) {
58
+ return { kind: "attempted-unverified", text: HERMES_FILE_TRANSFER_NOT_SENT_MESSAGE };
90
59
  }
91
- if (params.sourceRunId && hasHermesSendFileAttempt(messages, params.sourceRunId)) {
92
- return {
93
- verifiedFileTransferCount: 0,
94
- output: HERMES_FILE_TRANSFER_NOT_SENT_MESSAGE,
95
- };
60
+ // 能力在每个移动端轮次都开放,但能力本身不会把普通聊天变成文件操作:
61
+ // 没有 typed outcome、也没有真实调用 send-file 的轮次,保留宿主原始回答。
62
+ return { kind: "none" };
63
+ }
64
+ export async function verifyHermesFileTransferIfRequired(params) {
65
+ if (!params.plan.preloadFileTransferSkill) {
66
+ return {};
67
+ }
68
+ const messages = params.sessionId ? await readHermesSessionMessages(params.sessionId) : undefined;
69
+ const turnOutput = params.sourceRunId
70
+ ? resolveHermesTurnOutput(messages, params.sourceRunId)
71
+ : { kind: "none" };
72
+ const pendingSourceRunId = params.plan.pendingFileTransfer?.sourceRunId;
73
+ switch (turnOutput.kind) {
74
+ case "file-evidence":
75
+ await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, pendingSourceRunId);
76
+ return { verifiedFileTransferCount: turnOutput.fileCount, output: turnOutput.text };
77
+ case "clarification":
78
+ if (params.sessionId && params.sourceRunId) {
79
+ await recordPendingHermesFileTransfer({
80
+ gatewayId: params.gatewayId,
81
+ sessionKey: params.sessionKey,
82
+ hermesSessionId: params.sessionId,
83
+ sourceRunId: params.sourceRunId,
84
+ continuation: false,
85
+ });
86
+ }
87
+ return { output: turnOutput.text };
88
+ case "cancelled":
89
+ case "ordinary":
90
+ await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, pendingSourceRunId);
91
+ return { output: turnOutput.text };
92
+ case "attempted-unverified":
93
+ // 只有 typed outcome=attempted 才清理待续传状态;仅检测到 send-file 调用而没有回执时保持原状。
94
+ if (collectHermesFileTransferOutcome(messages, params.sourceRunId ?? "")?.kind === "attempted") {
95
+ await clearPendingHermesFileTransfer(params.gatewayId, params.sessionKey, pendingSourceRunId);
96
+ }
97
+ return { verifiedFileTransferCount: 0, output: turnOutput.text };
98
+ case "none":
99
+ return {};
96
100
  }
97
- // File-transfer capability is available on every mobile turn, but capability
98
- // alone does not turn ordinary chat into a file operation. Preserve the Host
99
- // answer unless this exact turn emitted a typed outcome or actually invoked
100
- // the first-party terminal command. This keeps failure closed around a real
101
- // send attempt without replacing unrelated Hermes replies.
102
- return {};
103
101
  }
104
102
  function hasHermesSendFileAttempt(messages, sourceRunId) {
105
103
  const currentIndex = currentHermesTurnIndex(messages, sourceRunId);
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-runtime-chat-file-transfer.js","sourceRoot":"","sources":["../../../src/hermes/runtime/hermes-runtime-chat-file-transfer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hermes-runtime-chat-file-transfer.js","sourceRoot":"","sources":["../../../src/hermes/runtime/hermes-runtime-chat-file-transfer.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,+BAA+B,GAEhC,MAAM,iCAAiC,CAAC;AASzC,MAAM,qCAAqC,GACzC,8DAA8D,CAAC;AACjE,MAAM,4CAA4C,GAChD,gBAAgB,CAAC;AACnB,MAAM,sCAAsC,GAAG,UAAU,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,MAO/C;IACC,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,+DAA+D;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS;QAC9B,CAAC,CAAC,MAAM,4BAA4B,CAAC;YACnC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,eAAe,EAAE,MAAM,CAAC,SAAS;YACjC,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;QACF,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACL,iEAAiE;QACjE,mEAAmE;QACnE,yEAAyE;QACzE,0EAA0E;QAC1E,4DAA4D;QAC5D,wBAAwB,EAAE,MAAM,CAAC,sBAAsB,KAAK,KAAK,IAAI,OAAO,KAAK,SAAS;QAC1F,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;QACtD,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACrE,CAAC;AAkBD,MAAM,UAAU,uBAAuB,CACrC,QAAoD,EACpD,WAAmB;IAEnB,wDAAwD;IACxD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC1E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,OAAO,QAAQ,CAAC,MAAM,WAAW;YACvC,SAAS,EAAE,QAAQ,CAAC,MAAM;SAC3B,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,gCAAgC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACxE,IAAI,OAAO,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,IAAI,4CAA4C,EAAE,CAAC;IAChH,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,IAAI,sCAAsC,EAAE,CAAC;IACtG,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;QACjC,sDAAsD;QACtD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,IAAI,4CAA4C,EAAE,CAAC;IAC3G,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,IAAI,wBAAwB,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;QACrF,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,qCAAqC,EAAE,CAAC;IACvF,CAAC;IACD,oCAAoC;IACpC,mDAAmD;IACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kCAAkC,CAAC,MAOxD;IACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW;QACnC,CAAC,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC;QACvD,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC;IAC9B,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC;IACxE,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,eAAe;YAClB,MAAM,8BAA8B,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;YAC9F,OAAO,EAAE,yBAAyB,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;QACtF,KAAK,eAAe;YAClB,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3C,MAAM,+BAA+B,CAAC;oBACpC,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,eAAe,EAAE,MAAM,CAAC,SAAS;oBACjC,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,YAAY,EAAE,KAAK;iBACpB,CAAC,CAAC;YACL,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;QACrC,KAAK,WAAW,CAAC;QACjB,KAAK,UAAU;YACb,MAAM,8BAA8B,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;YAC9F,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;QACrC,KAAK,sBAAsB;YACzB,mEAAmE;YACnE,IAAI,gCAAgC,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC/F,MAAM,8BAA8B,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;YAChG,CAAC;YACD,OAAO,EAAE,yBAAyB,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;QACnE,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAoD,EACpD,WAAmB;IAEnB,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACnE,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM;YAAE,MAAM;QACxD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,WAAW;YAAE,SAAS;QAChE,MAAM,YAAY,GAAG,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;YACzD,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC;YACpC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;YAAE,SAAS;QAC3C,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC5F,CAAC,CAAC,WAAsC;gBACxC,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,EAAE,GAAG,QAAQ,EAAE,QAAQ,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACzG,CAAC,CAAC,QAAQ,CAAC,QAAmC;gBAC9C,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,YAAY,GAAG,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACnD,IAAI,YAAY,KAAK,uBAAuB;gBAAE,OAAO,IAAI,CAAC;YAC1D,IAAI,YAAY,KAAK,UAAU;gBAAE,SAAS;YAC1C,MAAM,YAAY,GAAG,OAAO,EAAE,EAAE,SAAS,KAAK,QAAQ;gBACpD,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,SAAS,CAAC;gBAC9B,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;YAClB,MAAM,IAAI,GAAG,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;gBAC3F,CAAC,CAAC,YAAuC;gBACzC,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,OAAO,IAAI,EAAE,OAAO,KAAK,QAAQ,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpF,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,4BAA4B,CAAC,OAAe;IACnD,OAAO,sFAAsF,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAY,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,gCAAgC,CAC9C,QAAoD,EACpD,WAAmB;IAEnB,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACnE,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpD,MAAM,QAAQ,GAAgC,EAAE,CAAC;IACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM;YAAE,MAAM;QACxD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,IAAI,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,UAAU;YAAE,SAAS;QACpH,KAAK,MAAM,MAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,IACE,MAAM,CAAC,QAAQ,KAAK,6CAA6C;mBAC9D,MAAM,CAAC,WAAW,KAAK,WAAW;mBAClC,MAAM,CAAC,UAAU,KAAK,WAAW;mBACjC,MAAM,CAAC,MAAM,KAAK,WAAW;mBAC7B,MAAM,CAAC,SAAS,KAAK,CAAC;mBACtB,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC;gBAChI,SAAS;YACX,MAAM,aAAa,GAAG,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClG,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,aAAa;gBAAE,SAAS;YAC5D,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ,EAAE,6CAA6C;gBACvD,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,WAAW;gBACX,UAAU,EAAE,WAAW;gBACvB,MAAM,EAAE,WAAW;gBACnB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5C,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,QAAoD,EACpD,WAAmB;IAEnB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACnE,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YACjD,MAAM;QACR,CAAC;QACD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM;YAAE,SAAS;QAC3D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,QAAQ,KAAK,uBAAuB,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACpE,IAAI,OAAO,EAAE,EAAE,KAAK,IAAI;mBACnB,OAAO,CAAC,WAAW,KAAK,WAAW;mBACnC,OAAO,CAAC,MAAM,KAAK,WAAW;mBAC9B,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;mBAClC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9C,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,SAAS;QACX,CAAC;QACD,wEAAwE;QACxE,0EAA0E;QAC1E,kEAAkE;QAClE,IAAI,QAAQ,KAAK,UAAU;YAAE,SAAS;QACtC,KAAK,MAAM,MAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW;mBACjC,MAAM,CAAC,UAAU,KAAK,WAAW;mBACjC,MAAM,CAAC,MAAM,KAAK,WAAW;mBAC7B,MAAM,CAAC,SAAS,KAAK,CAAC;mBACtB,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;mBACjC,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9C,SAAS;YACX,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAoD,EACpD,WAAmB;IAEnB,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;QAAE,OAAO,CAAC,CAAC,CAAC;IAChD,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;IACtB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,MAAM,IAAI,4BAA4B,CAAC,OAAO,CAAC,KAAK,WAAW,EAAE,CAAC;YAC3G,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAgC;IAC7D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAmC,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,MAAM,QAAQ,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,MAAM,EAAE,CAAC;gBACX,oEAAoE;gBACpE,uEAAuE;gBACvE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;oBAC1E,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;oBAC3C,CAAC,CAAC,MAAM,CAAC,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACnE,CAAC,CAAC,MAAiC;YACnC,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;IACf,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;iBAAM,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBAC9B,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;iBAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBAC7B,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;aAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YAC7B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,KAAK,GAAG,KAAK,CAAC;YAChB,CAAC;YACD,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;aAAM,IAAI,SAAS,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,KAAK,IAAI,CAAC,CAAC;YACX,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC9B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC9C,KAAK,GAAG,CAAC,CAAC,CAAC;YACb,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,30 @@
1
+ export type HermesAssistantRowDecision =
2
+ /** 非 ClawConnect 移动端轮次,或该轮没有 typed 结论:沿用原始行正文。 */
3
+ {
4
+ kind: "raw";
5
+ }
6
+ /** 该轮已有 typed 结论,而这是非最后一个终态助手行:原始散文不可展示。 */
7
+ | {
8
+ kind: "drop";
9
+ }
10
+ /** 该轮已有 typed 结论,而这是最后一个终态助手行:用 typed 文本承载,保留该行的稳定身份与顺序。 */
11
+ | {
12
+ kind: "typed";
13
+ text: string;
14
+ };
15
+ /**
16
+ * 决定一条终态助手行在移动端历史里应展示什么。
17
+ *
18
+ * 模型在 outcome 工具之后补的收尾散文("已发送 ✅"、"补充:……")与 typed assistantText 经常不一致,
19
+ * 实时路径只展示 typed 结论,历史也必须一样,否则刷新会把真正的回答换成收尾话。
20
+ * 判定只依赖结构化事实:该轮用户行里的 sourceRunId、同一轮内的 typed outcome / send-file 回执,
21
+ * 不做任何文本相似度或关键词判断。
22
+ *
23
+ * @param turnRows 该助手行所在用户轮次的全部有效行(用户行在最前)。
24
+ */
25
+ export declare function decideHermesAssistantRow(row: Record<string, unknown>, turnRows: Array<Record<string, unknown>>): HermesAssistantRowDecision;
26
+ /**
27
+ * 在完整的原始行序列(导出回退路径)里,为每个下标计算其所在用户轮次的行。
28
+ * 一次 O(n) 预计算,避免每个助手行都重新扫描整个会话。
29
+ */
30
+ export declare function buildHermesTurnRowResolver(records: Array<Record<string, unknown>>): (index: number) => Array<Record<string, unknown>>;
@@ -0,0 +1,61 @@
1
+ // Hermes 历史投影的"本轮最终回答"决策:与实时路径共用 resolveHermesTurnOutput,保证刷新前后一致。
2
+ import { resolveHermesTurnOutput } from "./hermes-runtime-chat-file-transfer.js";
3
+ import { hermesSourceRunIdFromMessage, isTerminalHermesAssistantMessage, } from "./hermes-runtime-history-completion.js";
4
+ function roleOf(row) {
5
+ return typeof row.role === "string" ? row.role.trim().toLowerCase() : "";
6
+ }
7
+ function isSameRow(left, right) {
8
+ if (left === right)
9
+ return true;
10
+ return left.id !== undefined && left.id !== null && right.id !== undefined && right.id !== null
11
+ && String(left.id) === String(right.id);
12
+ }
13
+ /**
14
+ * 决定一条终态助手行在移动端历史里应展示什么。
15
+ *
16
+ * 模型在 outcome 工具之后补的收尾散文("已发送 ✅"、"补充:……")与 typed assistantText 经常不一致,
17
+ * 实时路径只展示 typed 结论,历史也必须一样,否则刷新会把真正的回答换成收尾话。
18
+ * 判定只依赖结构化事实:该轮用户行里的 sourceRunId、同一轮内的 typed outcome / send-file 回执,
19
+ * 不做任何文本相似度或关键词判断。
20
+ *
21
+ * @param turnRows 该助手行所在用户轮次的全部有效行(用户行在最前)。
22
+ */
23
+ export function decideHermesAssistantRow(row, turnRows) {
24
+ const userRow = turnRows.find((candidate) => roleOf(candidate) === "user");
25
+ const sourceRunId = userRow ? hermesSourceRunIdFromMessage(userRow) : undefined;
26
+ if (!sourceRunId) {
27
+ return { kind: "raw" };
28
+ }
29
+ const output = resolveHermesTurnOutput(turnRows, sourceRunId);
30
+ if (output.kind === "none") {
31
+ return { kind: "raw" };
32
+ }
33
+ const terminalRows = turnRows.filter((candidate) => roleOf(candidate) === "assistant" && isTerminalHermesAssistantMessage(candidate));
34
+ const lastTerminal = terminalRows[terminalRows.length - 1];
35
+ if (!lastTerminal || !isSameRow(row, lastTerminal)) {
36
+ return { kind: "drop" };
37
+ }
38
+ return { kind: "typed", text: output.text };
39
+ }
40
+ /**
41
+ * 在完整的原始行序列(导出回退路径)里,为每个下标计算其所在用户轮次的行。
42
+ * 一次 O(n) 预计算,避免每个助手行都重新扫描整个会话。
43
+ */
44
+ export function buildHermesTurnRowResolver(records) {
45
+ const previousUser = new Array(records.length).fill(-1);
46
+ const nextUser = new Array(records.length).fill(records.length);
47
+ let lastUser = -1;
48
+ records.forEach((record, index) => {
49
+ if (roleOf(record) === "user")
50
+ lastUser = index;
51
+ previousUser[index] = lastUser;
52
+ });
53
+ let upcomingUser = records.length;
54
+ for (let index = records.length - 1; index >= 0; index -= 1) {
55
+ nextUser[index] = upcomingUser;
56
+ if (roleOf(records[index]) === "user")
57
+ upcomingUser = index;
58
+ }
59
+ return (index) => records.slice(Math.max(previousUser[index], 0), nextUser[index]);
60
+ }
61
+ //# sourceMappingURL=hermes-runtime-history-turn-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-runtime-history-turn-output.js","sourceRoot":"","sources":["../../../src/hermes/runtime/hermes-runtime-history-turn-output.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { createHash } from "node:crypto";
2
2
  import { canonicalizeMobileAssistantText } from "../../core/relay/mobile-chat-run-bridge.js";
3
3
  import { buildHistorySnapshotPage } from "../../core/relay/timeline-event-builder.js";
4
4
  import { isTerminalHermesAssistantMessage } from "./hermes-runtime-history-completion.js";
5
+ import { buildHermesTurnRowResolver, decideHermesAssistantRow, } from "./hermes-runtime-history-turn-output.js";
5
6
  import { hermesStateDbHistoryMessageId, } from "./hermes-state-db-message-identity.js";
6
7
  import { resolveHermesSessionIdFromParams, runHermesSessionExport } from "./hermes-runtime-sessions.js";
7
8
  import { queryHermesHistoryPageFromStateDb } from "./hermes-runtime-state-db.js";
@@ -242,8 +243,11 @@ function normalizeHermesHistoryMessages(parsed, options = {}) {
242
243
  const sessionId = stringParam(record, "sessionId", "session_id", "id");
243
244
  const messages = [];
244
245
  let activeMobileTurn = activeMobileTurnFromContextUser(record.contextUser);
245
- rawMessages.forEach((entry, index) => {
246
- const source = toRecord(entry);
246
+ // 统一成记录数组:导出回退路径按它推导每个助手行所在的轮次(引用相同,可做同一性比较)。
247
+ const sourceRecords = rawMessages.map((entry) => toRecord(entry));
248
+ const resolveTurnRows = buildHermesTurnRowResolver(sourceRecords);
249
+ rawMessages.forEach((_entry, index) => {
250
+ const source = sourceRecords[index];
247
251
  if (Object.keys(source).length === 0) {
248
252
  return;
249
253
  }
@@ -259,7 +263,24 @@ function normalizeHermesHistoryMessages(parsed, options = {}) {
259
263
  if (role === "assistant" && !isTerminalHermesAssistantMessage(source)) {
260
264
  return;
261
265
  }
262
- const rawText = extractHistoryText(source);
266
+ // 同一轮已有 typed 结论(outcome / send-file 回执)时,展示内容与实时路径完全一致:
267
+ // 由本轮最后一个终态助手行承载 typed 文本,其余终态行的原始散文不展示。
268
+ let typedAssistantText;
269
+ if (role === "assistant") {
270
+ // state.db 分页查询随助手行带来 turnRows(按轮次边界直查,不受分页切割影响);
271
+ // 导出回退路径拿到的是完整会话,直接按下标推导。
272
+ const turnRows = Array.isArray(source.turnRows)
273
+ ? source.turnRows.map((row) => toRecord(row))
274
+ : resolveTurnRows(index);
275
+ const decision = decideHermesAssistantRow(source, turnRows);
276
+ if (decision.kind === "drop") {
277
+ return;
278
+ }
279
+ if (decision.kind === "typed") {
280
+ typedAssistantText = decision.text;
281
+ }
282
+ }
283
+ const rawText = typedAssistantText ?? extractHistoryText(source);
263
284
  const mobileTurn = role === "user" ? parseClawConnectMobileTurnMetadata(rawText) : {};
264
285
  const normalized = normalizeHistoryText(role, rawText);
265
286
  const content = normalizeHistoryContentBlocks(source, normalized);
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-runtime-history.js","sourceRoot":"","sources":["../../../src/hermes/runtime/hermes-runtime-history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hermes-runtime-history.js","sourceRoot":"","sources":["../../../src/hermes/runtime/hermes-runtime-history.ts"],"names":[],"mappings":"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"}