clawconnect-agent 0.1.11 → 0.1.13

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 (102) hide show
  1. package/README.md +16 -0
  2. package/README.zh-CN.md +16 -0
  3. package/dist/commands/install.js +3 -2
  4. package/dist/commands/install.js.map +1 -1
  5. package/dist/commands/pair.js +2 -1
  6. package/dist/commands/pair.js.map +1 -1
  7. package/dist/commands/profile-hints.d.ts +7 -0
  8. package/dist/commands/profile-hints.js +71 -0
  9. package/dist/commands/profile-hints.js.map +1 -0
  10. package/dist/commands/send-file.js +25 -5
  11. package/dist/commands/send-file.js.map +1 -1
  12. package/dist/core/relay/timeline-event-builder.d.ts +5 -1
  13. package/dist/core/relay/timeline-event-builder.js +4 -0
  14. package/dist/core/relay/timeline-event-builder.js.map +1 -1
  15. package/dist/core/relay/timeline-event-log.d.ts +3 -0
  16. package/dist/core/relay/timeline-event-log.js +4 -0
  17. package/dist/core/relay/timeline-event-log.js.map +1 -1
  18. package/dist/hermes/hermes-relay-manager.d.ts +27 -24
  19. package/dist/hermes/hermes-relay-manager.js +126 -343
  20. package/dist/hermes/hermes-relay-manager.js.map +1 -1
  21. package/dist/hermes/hermes-runtime-test-support.d.ts +27 -0
  22. package/dist/hermes/hermes-runtime-test-support.js +703 -0
  23. package/dist/hermes/hermes-runtime-test-support.js.map +1 -0
  24. package/dist/hermes/hermes-runtime.d.ts +1 -2
  25. package/dist/hermes/hermes-runtime.js +1 -2
  26. package/dist/hermes/hermes-runtime.js.map +1 -1
  27. package/dist/hermes/relay/active-hermes-chat-runs.d.ts +12 -0
  28. package/dist/hermes/relay/active-hermes-chat-runs.js +42 -0
  29. package/dist/hermes/relay/active-hermes-chat-runs.js.map +1 -0
  30. package/dist/hermes/relay/hermes-slash-command-catalog.d.ts +22 -0
  31. package/dist/hermes/relay/hermes-slash-command-catalog.js +248 -0
  32. package/dist/hermes/relay/hermes-slash-command-catalog.js.map +1 -0
  33. package/dist/hermes/relay/hermes-state-db-realtime.d.ts +69 -0
  34. package/dist/hermes/relay/hermes-state-db-realtime.js +444 -0
  35. package/dist/hermes/relay/hermes-state-db-realtime.js.map +1 -0
  36. package/dist/hermes/runtime/hermes-runtime-api-client.d.ts +15 -0
  37. package/dist/hermes/runtime/hermes-runtime-api-client.js +510 -0
  38. package/dist/hermes/runtime/hermes-runtime-api-client.js.map +1 -0
  39. package/dist/hermes/runtime/hermes-runtime-chat.d.ts +4 -14
  40. package/dist/hermes/runtime/hermes-runtime-chat.js +205 -436
  41. package/dist/hermes/runtime/hermes-runtime-chat.js.map +1 -1
  42. package/dist/hermes/runtime/hermes-runtime-command-utils.d.ts +1 -0
  43. package/dist/hermes/runtime/hermes-runtime-command-utils.js +10 -1
  44. package/dist/hermes/runtime/hermes-runtime-command-utils.js.map +1 -1
  45. package/dist/hermes/runtime/hermes-runtime-history-completion.d.ts +12 -0
  46. package/dist/hermes/runtime/hermes-runtime-history-completion.js +162 -0
  47. package/dist/hermes/runtime/hermes-runtime-history-completion.js.map +1 -0
  48. package/dist/hermes/runtime/hermes-runtime-history.js +85 -22
  49. package/dist/hermes/runtime/hermes-runtime-history.js.map +1 -1
  50. package/dist/hermes/runtime/hermes-runtime-preloaded-skills.d.ts +11 -0
  51. package/dist/hermes/runtime/hermes-runtime-preloaded-skills.js +67 -0
  52. package/dist/hermes/runtime/hermes-runtime-preloaded-skills.js.map +1 -0
  53. package/dist/hermes/runtime/hermes-runtime-process.d.ts +3 -1
  54. package/dist/hermes/runtime/hermes-runtime-process.js +35 -6
  55. package/dist/hermes/runtime/hermes-runtime-process.js.map +1 -1
  56. package/dist/hermes/runtime/hermes-runtime-sessions.js +28 -3
  57. package/dist/hermes/runtime/hermes-runtime-sessions.js.map +1 -1
  58. package/dist/hermes/runtime/hermes-runtime-slash-command.d.ts +8 -0
  59. package/dist/hermes/runtime/hermes-runtime-slash-command.js +144 -0
  60. package/dist/hermes/runtime/hermes-runtime-slash-command.js.map +1 -0
  61. package/dist/hermes/runtime/hermes-runtime-state-db.d.ts +4 -0
  62. package/dist/hermes/runtime/hermes-runtime-state-db.js +193 -0
  63. package/dist/hermes/runtime/hermes-runtime-state-db.js.map +1 -0
  64. package/dist/hermes/runtime/hermes-runtime-tool-log-watcher.d.ts +8 -0
  65. package/dist/hermes/runtime/hermes-runtime-tool-log-watcher.js +121 -0
  66. package/dist/hermes/runtime/hermes-runtime-tool-log-watcher.js.map +1 -0
  67. package/dist/hermes/runtime/hermes-runtime-usage.d.ts +2 -0
  68. package/dist/hermes/runtime/hermes-runtime-usage.js +59 -5
  69. package/dist/hermes/runtime/hermes-runtime-usage.js.map +1 -1
  70. package/dist/i18n/index.js +4 -0
  71. package/dist/i18n/index.js.map +1 -1
  72. package/dist/index.js +22 -3
  73. package/dist/index.js.map +1 -1
  74. package/dist/openclaw/handlers/local-handlers.js +66 -20
  75. package/dist/openclaw/handlers/local-handlers.js.map +1 -1
  76. package/dist/openclaw/relay/chat-send-dedupe-coordinator.d.ts +20 -0
  77. package/dist/openclaw/relay/chat-send-dedupe-coordinator.js +161 -0
  78. package/dist/openclaw/relay/chat-send-dedupe-coordinator.js.map +1 -0
  79. package/dist/openclaw/relay/relay-manager-hello.d.ts +6 -0
  80. package/dist/openclaw/relay/relay-manager-hello.js +11 -0
  81. package/dist/openclaw/relay/relay-manager-hello.js.map +1 -0
  82. package/dist/openclaw/relay/relay-manager-history-timing.d.ts +5 -0
  83. package/dist/openclaw/relay/relay-manager-history-timing.js +6 -0
  84. package/dist/openclaw/relay/relay-manager-history-timing.js.map +1 -0
  85. package/dist/openclaw/relay/relay-manager-office-events.d.ts +2 -0
  86. package/dist/openclaw/relay/relay-manager-office-events.js +9 -0
  87. package/dist/openclaw/relay/relay-manager-office-events.js.map +1 -0
  88. package/dist/openclaw/relay/relay-manager-payload-helpers.d.ts +18 -0
  89. package/dist/openclaw/relay/relay-manager-payload-helpers.js +213 -0
  90. package/dist/openclaw/relay/relay-manager-payload-helpers.js.map +1 -0
  91. package/dist/openclaw/relay/relay-manager-protocol.d.ts +49 -0
  92. package/dist/openclaw/relay/relay-manager-protocol.js +2 -0
  93. package/dist/openclaw/relay/relay-manager-protocol.js.map +1 -0
  94. package/dist/openclaw/relay-manager.d.ts +3 -27
  95. package/dist/openclaw/relay-manager.js +19 -402
  96. package/dist/openclaw/relay-manager.js.map +1 -1
  97. package/dist/openclaw/session-store.js +42 -1
  98. package/dist/openclaw/session-store.js.map +1 -1
  99. package/package.json +1 -1
  100. package/dist/hermes/runtime/hermes-runtime-artifacts.d.ts +0 -3
  101. package/dist/hermes/runtime/hermes-runtime-artifacts.js +0 -75
  102. package/dist/hermes/runtime/hermes-runtime-artifacts.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-runtime-test-support.js","sourceRoot":"","sources":["../../src/hermes/hermes-runtime-test-support.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ export { resolveHermesBin, runHermes, runHermesWithInput, stripHermesSecurityRev
3
3
  export { handleHermesCommand } from "./runtime/hermes-runtime-command-router.js";
4
4
  export { buildHermesAssistantDeltaPayload, buildHermesRuntimeContextHint, isHermesSlashCommandMessage, parseHermesToolLogLine, runHermesChat, selectHermesSessionForCompletedChat, } from "./runtime/hermes-runtime-chat.js";
5
5
  export { runHermesChatHistory } from "./runtime/hermes-runtime-history.js";
6
- export { collectHermesUsageSnapshot, listHermesSessions, parseHermesSessionUsageSnapshot, parseHermesStatusSnapshot, readHermesStatusSnapshot, } from "./runtime/hermes-runtime-usage.js";
6
+ export { collectHermesUsageSnapshot, listHermesSessions, parseHermesSessionUsageSnapshot, parseHermesStatusSnapshot, readHermesStatusSnapshot, readHermesStatusSnapshotAsync, } from "./runtime/hermes-runtime-usage.js";
7
7
  export { isDuplicateHermesCronJob } from "./runtime/hermes-runtime-cron.js";
8
8
  export { parseHermesSkillsList } from "./runtime/hermes-runtime-skills.js";
9
- export { extractDeliverablePaths } from "./runtime/hermes-runtime-artifacts.js";
@@ -2,8 +2,7 @@ export { resolveHermesBin, runHermes, runHermesWithInput, stripHermesSecurityRev
2
2
  export { handleHermesCommand } from "./runtime/hermes-runtime-command-router.js";
3
3
  export { buildHermesAssistantDeltaPayload, buildHermesRuntimeContextHint, isHermesSlashCommandMessage, parseHermesToolLogLine, runHermesChat, selectHermesSessionForCompletedChat, } from "./runtime/hermes-runtime-chat.js";
4
4
  export { runHermesChatHistory } from "./runtime/hermes-runtime-history.js";
5
- export { collectHermesUsageSnapshot, listHermesSessions, parseHermesSessionUsageSnapshot, parseHermesStatusSnapshot, readHermesStatusSnapshot, } from "./runtime/hermes-runtime-usage.js";
5
+ export { collectHermesUsageSnapshot, listHermesSessions, parseHermesSessionUsageSnapshot, parseHermesStatusSnapshot, readHermesStatusSnapshot, readHermesStatusSnapshotAsync, } from "./runtime/hermes-runtime-usage.js";
6
6
  export { isDuplicateHermesCronJob } from "./runtime/hermes-runtime-cron.js";
7
7
  export { parseHermesSkillsList } from "./runtime/hermes-runtime-skills.js";
8
- export { extractDeliverablePaths } from "./runtime/hermes-runtime-artifacts.js";
9
8
  //# sourceMappingURL=hermes-runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-runtime.js","sourceRoot":"","sources":["../../src/hermes/hermes-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,kBAAkB,EAClB,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,aAAa,EACb,mCAAmC,GACpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC"}
1
+ {"version":3,"file":"hermes-runtime.js","sourceRoot":"","sources":["../../src/hermes/hermes-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,kBAAkB,EAClB,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,aAAa,EACb,mCAAmC,GACpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { MobileChatRun } from "../../core/relay/mobile-chat-run-bridge.js";
2
+ export type ActiveHermesChatRun = {
3
+ controller: AbortController;
4
+ run: MobileChatRun;
5
+ };
6
+ export declare function rememberActiveHermesChatRun(activeChatRuns: Map<string, ActiveHermesChatRun>, run: MobileChatRun, params: unknown, requestId: string | undefined, controller: AbortController): void;
7
+ export declare function forgetActiveHermesChatRun(activeChatRuns: Map<string, ActiveHermesChatRun>, run: {
8
+ runId: string;
9
+ sessionKey: string;
10
+ }): void;
11
+ export declare function resolveHermesAbortRun(params: unknown, activeChatRuns: Map<string, ActiveHermesChatRun>): ActiveHermesChatRun | undefined;
12
+ export declare function resolveHermesChatPreferredRunId(params: unknown, voiceInputRun?: MobileChatRun): string | undefined;
@@ -0,0 +1,42 @@
1
+ export function rememberActiveHermesChatRun(activeChatRuns, run, params, requestId, controller) {
2
+ const entry = { controller, run };
3
+ for (const key of [run.runId, requestId, readStringParam(params, "idempotencyKey")]) {
4
+ if (key) {
5
+ activeChatRuns.set(key, entry);
6
+ }
7
+ }
8
+ }
9
+ export function forgetActiveHermesChatRun(activeChatRuns, run) {
10
+ for (const [key, entry] of activeChatRuns) {
11
+ if (entry.run.runId === run.runId && entry.run.sessionKey === run.sessionKey) {
12
+ activeChatRuns.delete(key);
13
+ }
14
+ }
15
+ }
16
+ export function resolveHermesAbortRun(params, activeChatRuns) {
17
+ const runId = readStringParam(params, "runId")
18
+ ?? readStringParam(params, "run_id")
19
+ ?? readStringParam(params, "idempotencyKey");
20
+ if (runId) {
21
+ return activeChatRuns.get(runId);
22
+ }
23
+ const sessionKey = readStringParam(params, "sessionKey") ?? readStringParam(params, "session_key");
24
+ if (sessionKey) {
25
+ return [...activeChatRuns.values()].find((entry) => entry.run.sessionKey === sessionKey);
26
+ }
27
+ return undefined;
28
+ }
29
+ export function resolveHermesChatPreferredRunId(params, voiceInputRun) {
30
+ return voiceInputRun?.runId
31
+ ?? readStringParam(params, "runId")
32
+ ?? readStringParam(params, "run_id")
33
+ ?? readStringParam(params, "idempotencyKey");
34
+ }
35
+ function readStringParam(params, key) {
36
+ if (!params || typeof params !== "object" || Array.isArray(params)) {
37
+ return undefined;
38
+ }
39
+ const value = params[key];
40
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : undefined;
41
+ }
42
+ //# sourceMappingURL=active-hermes-chat-runs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"active-hermes-chat-runs.js","sourceRoot":"","sources":["../../../src/hermes/relay/active-hermes-chat-runs.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,2BAA2B,CACzC,cAAgD,EAChD,GAAkB,EAClB,MAAe,EACf,SAA6B,EAC7B,UAA2B;IAE3B,MAAM,KAAK,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;QACpF,IAAI,GAAG,EAAE,CAAC;YACR,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,cAAgD,EAChD,GAA0C;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,cAAc,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,EAAE,CAAC;YAC7E,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAAe,EACf,cAAgD;IAEhD,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;WACzC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC;WACjC,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC/C,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnG,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,MAAe,EAAE,aAA6B;IAC5F,OAAO,aAAa,EAAE,KAAK;WACtB,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;WAChC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC;WACjC,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,eAAe,CAAC,MAAe,EAAE,GAAW;IACnD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAI,MAAkC,CAAC,GAAG,CAAC,CAAC;IACvD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACzF,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { RelaySlashCommandDescriptor } from "../../core/relay/slash-command-types.js";
2
+ type HermesSlashCommandRunner = (script: string) => string;
3
+ type HermesSlashCommandCollector = () => readonly RelaySlashCommandDescriptor[];
4
+ export interface HermesSlashCommandSearchResult {
5
+ items: RelaySlashCommandDescriptor[];
6
+ hasMore: boolean;
7
+ nextOffset?: number;
8
+ total: number;
9
+ }
10
+ export declare function collectHermesSlashCommandCatalog(runPython?: HermesSlashCommandRunner): RelaySlashCommandDescriptor[];
11
+ export declare function searchHermesSlashCommandCatalog(opts?: {
12
+ query?: unknown;
13
+ limit?: unknown;
14
+ offset?: unknown;
15
+ collect?: HermesSlashCommandCollector;
16
+ }): HermesSlashCommandSearchResult;
17
+ export declare function readHermesSlashCommandSearchParams(params: unknown): {
18
+ query?: unknown;
19
+ limit?: unknown;
20
+ offset?: unknown;
21
+ };
22
+ export {};
@@ -0,0 +1,248 @@
1
+ import { runHermesPython } from "../runtime/hermes-runtime-process.js";
2
+ const HERMES_SLASH_COMMAND_CATALOG_SCRIPT = String.raw `
3
+ import json
4
+
5
+ items = []
6
+
7
+ def add(command, title=None, detail=None):
8
+ if not command:
9
+ return
10
+ command = str(command).strip()
11
+ if not command:
12
+ return
13
+ if not command.startswith("/"):
14
+ command = "/" + command
15
+ title = str(title or command.lstrip("/") or command).strip()
16
+ detail = str(detail or title or command).strip()
17
+ items.append({"command": command, "title": title, "detail": detail})
18
+
19
+ try:
20
+ from hermes_cli.commands import COMMANDS
21
+ for command, detail in COMMANDS.items():
22
+ add(command, command.lstrip("/"), detail)
23
+ except Exception:
24
+ pass
25
+
26
+ try:
27
+ from agent.skill_commands import get_skill_commands
28
+ for command, info in get_skill_commands().items():
29
+ if not isinstance(info, dict):
30
+ info = {}
31
+ add(command, info.get("name") or str(command).lstrip("/"), info.get("description") or "Skill command")
32
+ except Exception:
33
+ pass
34
+
35
+ try:
36
+ from hermes_cli.plugins import get_plugin_commands
37
+ for command, info in get_plugin_commands().items():
38
+ if not isinstance(info, dict):
39
+ info = {}
40
+ add(command, command, info.get("description") or "Plugin command")
41
+ except Exception:
42
+ pass
43
+
44
+ print(json.dumps(items, ensure_ascii=False))
45
+ `;
46
+ const DEFAULT_HERMES_SLASH_COMMAND_SEARCH_LIMIT = 16;
47
+ const MAX_HERMES_SLASH_COMMAND_SEARCH_LIMIT = 50;
48
+ const MAX_HERMES_SLASH_COMMAND_SEARCH_OFFSET = 10_000;
49
+ let hermesSlashCommandCatalogCache;
50
+ export function collectHermesSlashCommandCatalog(runPython = runHermesPython) {
51
+ try {
52
+ return parseHermesSlashCommandCatalog(runPython(HERMES_SLASH_COMMAND_CATALOG_SCRIPT));
53
+ }
54
+ catch (error) {
55
+ const message = error instanceof Error ? error.message : String(error);
56
+ console.warn(`[hermes-relay] failed to load Hermes slash command catalog: ${message}`);
57
+ return [];
58
+ }
59
+ }
60
+ export function searchHermesSlashCommandCatalog(opts = {}) {
61
+ const query = normalizeHermesSlashCommandQuery(opts.query);
62
+ const limit = normalizeHermesSlashCommandSearchLimit(opts.limit);
63
+ const offset = normalizeHermesSlashCommandSearchOffset(opts.offset);
64
+ const catalog = [...(opts.collect ?? getCachedHermesSlashCommandCatalog)()];
65
+ const matches = catalog
66
+ .map((command, index) => {
67
+ const rank = hermesSlashCommandMatchRank(command, query);
68
+ return rank === undefined ? undefined : { command, index, rank };
69
+ })
70
+ .filter((entry) => entry !== undefined)
71
+ .sort((left, right) => {
72
+ if (left.rank !== right.rank)
73
+ return left.rank - right.rank;
74
+ if (left.index !== right.index)
75
+ return left.index - right.index;
76
+ return left.command.title.localeCompare(right.command.title);
77
+ });
78
+ const items = matches.slice(offset, offset + limit).map((entry) => entry.command);
79
+ const nextOffset = offset + items.length;
80
+ const hasMore = nextOffset < matches.length;
81
+ return {
82
+ items,
83
+ hasMore,
84
+ ...(hasMore ? { nextOffset } : {}),
85
+ total: matches.length,
86
+ };
87
+ }
88
+ export function readHermesSlashCommandSearchParams(params) {
89
+ if (!params || typeof params !== "object" || Array.isArray(params)) {
90
+ return {};
91
+ }
92
+ const record = params;
93
+ return {
94
+ query: record.query,
95
+ limit: record.limit,
96
+ offset: record.offset,
97
+ };
98
+ }
99
+ function parseHermesSlashCommandCatalog(rawOutput) {
100
+ const rawValue = JSON.parse(rawOutput);
101
+ if (!Array.isArray(rawValue)) {
102
+ return [];
103
+ }
104
+ const commands = [];
105
+ const seen = new Set();
106
+ for (const entry of rawValue) {
107
+ if (!entry || typeof entry !== "object" || Array.isArray(entry)) {
108
+ continue;
109
+ }
110
+ const record = entry;
111
+ const command = normalizeHermesSlashCommandText(record.command ?? record.name ?? record.value ?? record.text);
112
+ if (!command) {
113
+ continue;
114
+ }
115
+ const key = command.toLowerCase();
116
+ if (seen.has(key)) {
117
+ continue;
118
+ }
119
+ seen.add(key);
120
+ const title = readHermesSlashCommandLabel(record.title ?? record.label ?? record.name) ?? command.replace(/^\//, "");
121
+ const detail = readHermesSlashCommandLabel(record.detail ?? record.description ?? record.summary) ?? title;
122
+ commands.push({
123
+ source: "Hermes",
124
+ command,
125
+ title,
126
+ detail,
127
+ });
128
+ }
129
+ return commands;
130
+ }
131
+ function normalizeHermesSlashCommandText(value) {
132
+ if (typeof value !== "string") {
133
+ return undefined;
134
+ }
135
+ const trimmed = value.trim().replace(/\s+/g, " ");
136
+ if (!trimmed) {
137
+ return undefined;
138
+ }
139
+ return trimmed.startsWith("/") ? trimmed : `/${trimmed}`;
140
+ }
141
+ function readHermesSlashCommandLabel(value) {
142
+ if (typeof value !== "string") {
143
+ return undefined;
144
+ }
145
+ const trimmed = value.trim().replace(/\s+/g, " ");
146
+ return trimmed || undefined;
147
+ }
148
+ function getCachedHermesSlashCommandCatalog() {
149
+ if (!hermesSlashCommandCatalogCache) {
150
+ hermesSlashCommandCatalogCache = collectHermesSlashCommandCatalog();
151
+ }
152
+ return hermesSlashCommandCatalogCache;
153
+ }
154
+ function normalizeHermesSlashCommandQuery(value) {
155
+ if (typeof value !== "string") {
156
+ return "/";
157
+ }
158
+ const trimmed = value.trim().replace(/\s+/g, " ").toLowerCase();
159
+ if (!trimmed) {
160
+ return "/";
161
+ }
162
+ return trimmed.startsWith("/") ? trimmed : `/${trimmed}`;
163
+ }
164
+ function normalizeHermesSlashCommandSearchLimit(value) {
165
+ if (typeof value === "number" && Number.isFinite(value)) {
166
+ return Math.max(1, Math.min(MAX_HERMES_SLASH_COMMAND_SEARCH_LIMIT, Math.trunc(value)));
167
+ }
168
+ if (typeof value === "string" && value.trim()) {
169
+ const parsed = Number(value);
170
+ if (Number.isFinite(parsed)) {
171
+ return Math.max(1, Math.min(MAX_HERMES_SLASH_COMMAND_SEARCH_LIMIT, Math.trunc(parsed)));
172
+ }
173
+ }
174
+ return DEFAULT_HERMES_SLASH_COMMAND_SEARCH_LIMIT;
175
+ }
176
+ function normalizeHermesSlashCommandSearchOffset(value) {
177
+ if (typeof value === "number" && Number.isFinite(value)) {
178
+ return Math.max(0, Math.min(MAX_HERMES_SLASH_COMMAND_SEARCH_OFFSET, Math.trunc(value)));
179
+ }
180
+ if (typeof value === "string" && value.trim()) {
181
+ const parsed = Number(value);
182
+ if (Number.isFinite(parsed)) {
183
+ return Math.max(0, Math.min(MAX_HERMES_SLASH_COMMAND_SEARCH_OFFSET, Math.trunc(parsed)));
184
+ }
185
+ }
186
+ return 0;
187
+ }
188
+ // Hermes 命令分页必须稳定:优先匹配强度,其次保留宿主返回顺序,避免移动端分页跳动。
189
+ function hermesSlashCommandMatchRank(command, query) {
190
+ const normalizedCommand = command.command.trim().replace(/\s+/g, " ").toLowerCase();
191
+ if (!normalizedCommand) {
192
+ return undefined;
193
+ }
194
+ if (query === "/")
195
+ return 0;
196
+ if (normalizedCommand === query) {
197
+ return 0;
198
+ }
199
+ if (normalizedCommand.startsWith(query)) {
200
+ return 1;
201
+ }
202
+ if (query.startsWith(normalizedCommand)) {
203
+ return 2;
204
+ }
205
+ const compactCommand = compactSlashSearchText(normalizedCommand);
206
+ const compactQuery = compactSlashSearchText(query);
207
+ if (!compactQuery)
208
+ return 0;
209
+ if (compactCommand.includes(compactQuery)) {
210
+ return 3;
211
+ }
212
+ if (isSubsequence(compactQuery, compactCommand)) {
213
+ return 4;
214
+ }
215
+ const searchableText = [command.title, command.detail]
216
+ .map((value) => compactSlashSearchText(value))
217
+ .filter(Boolean)
218
+ .join(" ");
219
+ if (searchableText.includes(compactQuery)) {
220
+ return 5;
221
+ }
222
+ if (isSubsequence(compactQuery, searchableText)) {
223
+ return 6;
224
+ }
225
+ return undefined;
226
+ }
227
+ function compactSlashSearchText(value) {
228
+ return value
229
+ .trim()
230
+ .replace(/^\//, "")
231
+ .replace(/\s+/g, "")
232
+ .toLowerCase();
233
+ }
234
+ function isSubsequence(needle, haystack) {
235
+ if (!needle)
236
+ return true;
237
+ let needleIndex = 0;
238
+ for (const char of haystack) {
239
+ if (char === needle[needleIndex]) {
240
+ needleIndex += 1;
241
+ if (needleIndex === needle.length) {
242
+ return true;
243
+ }
244
+ }
245
+ }
246
+ return false;
247
+ }
248
+ //# sourceMappingURL=hermes-slash-command-catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermes-slash-command-catalog.js","sourceRoot":"","sources":["../../../src/hermes/relay/hermes-slash-command-catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ import { type CanonicalTimelineEvent, type TimelineRole } from "../../core/relay/timeline-event-log.js";
2
+ export type HermesStateDbRealtimeMessageRow = {
3
+ id: number;
4
+ sessionId: string;
5
+ sessionSource: string;
6
+ role: "user" | "assistant" | "tool" | "system";
7
+ content: string;
8
+ timestamp: number;
9
+ active: boolean;
10
+ observed: boolean;
11
+ toolName?: string;
12
+ toolCallId?: string;
13
+ platformMessageId?: string;
14
+ };
15
+ export type HermesStateDbRealtimeOpenTurn = {
16
+ turnId: string;
17
+ runId: string;
18
+ skipUntilNextUser: boolean;
19
+ };
20
+ export type HermesStateDbRealtimeCursor = {
21
+ lastMessageId: number;
22
+ openTurnsBySession: Record<string, HermesStateDbRealtimeOpenTurn>;
23
+ };
24
+ export type HermesStateDbRealtimePayload = {
25
+ runId: string;
26
+ sessionKey: string;
27
+ state: "history_sync";
28
+ role: TimelineRole;
29
+ timelineEvents: CanonicalTimelineEvent[];
30
+ };
31
+ export type HermesStateDbRealtimeBuildResult = {
32
+ cursor: HermesStateDbRealtimeCursor;
33
+ payloads: HermesStateDbRealtimePayload[];
34
+ };
35
+ export type HermesStateDbRealtimeWatcher = {
36
+ primeCursor: () => Promise<void>;
37
+ pollOnce: () => Promise<void>;
38
+ start: () => void;
39
+ stop: () => void;
40
+ cursor: () => HermesStateDbRealtimeCursor;
41
+ };
42
+ export declare function buildHermesStateDbRealtimePayloads(params: {
43
+ gatewayId: string;
44
+ cursor: HermesStateDbRealtimeCursor;
45
+ rows: HermesStateDbRealtimeMessageRow[];
46
+ }): HermesStateDbRealtimeBuildResult;
47
+ export declare function queryHermesStateDbMaxMessageId(params: {
48
+ dbPath: string;
49
+ pythonBin?: string;
50
+ }): Promise<number>;
51
+ export declare function queryHermesStateDbRealtimeRows(params: {
52
+ dbPath: string;
53
+ afterMessageId: number;
54
+ limit?: number;
55
+ pythonBin?: string;
56
+ }): Promise<HermesStateDbRealtimeMessageRow[]>;
57
+ export declare function createHermesStateDbRealtimeWatcher(params: {
58
+ gatewayId: string;
59
+ dbPath: string;
60
+ publishPayload: (payload: HermesStateDbRealtimePayload) => void;
61
+ pollIntervalMs?: number;
62
+ queryMaxMessageId?: () => Promise<number>;
63
+ queryRows?: (params: {
64
+ afterMessageId: number;
65
+ }) => Promise<HermesStateDbRealtimeMessageRow[]>;
66
+ onError?: (error: unknown) => void;
67
+ }): HermesStateDbRealtimeWatcher;
68
+ export declare function resolveHermesStateDbRealtimePath(): string | undefined;
69
+ export declare function resolveHermesStateDbRealtimePython(): string;