@rethinkingstudio/clawpilot 2.1.7-internal.9 → 2.1.7

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 (39) hide show
  1. package/dist/commands/local-handlers.js +46 -0
  2. package/dist/commands/local-handlers.js.map +1 -1
  3. package/dist/commands/pair.js +15 -8
  4. package/dist/commands/pair.js.map +1 -1
  5. package/dist/config/config.js +2 -1
  6. package/dist/config/config.js.map +1 -1
  7. package/dist/generated/build-config.d.ts +1 -1
  8. package/dist/generated/build-config.js +1 -1
  9. package/dist/generated/build-config.js.map +1 -1
  10. package/dist/hermes/agent-bridge.js +5 -0
  11. package/dist/hermes/agent-bridge.js.map +1 -1
  12. package/dist/hermes/home.d.ts +23 -0
  13. package/dist/hermes/home.js +250 -0
  14. package/dist/hermes/home.js.map +1 -0
  15. package/dist/hermes/model-catalog.js +10 -9
  16. package/dist/hermes/model-catalog.js.map +1 -1
  17. package/dist/platform/service-manager.js +9 -0
  18. package/dist/platform/service-manager.js.map +1 -1
  19. package/dist/relay/agent-status.d.ts +55 -0
  20. package/dist/relay/agent-status.js +294 -0
  21. package/dist/relay/agent-status.js.map +1 -0
  22. package/dist/relay/ccconnect-relay-manager.js +206 -35
  23. package/dist/relay/ccconnect-relay-manager.js.map +1 -1
  24. package/dist/relay/hermes-relay-manager.js +225 -53
  25. package/dist/relay/hermes-relay-manager.js.map +1 -1
  26. package/dist/relay/relay-command-dispatcher.d.ts +14 -0
  27. package/dist/relay/relay-command-dispatcher.js +25 -0
  28. package/dist/relay/relay-command-dispatcher.js.map +1 -0
  29. package/dist/relay/relay-manager.js +60 -29
  30. package/dist/relay/relay-manager.js.map +1 -1
  31. package/dist/relay/relay-method-registry.d.ts +9 -0
  32. package/dist/relay/relay-method-registry.js +61 -0
  33. package/dist/relay/relay-method-registry.js.map +1 -0
  34. package/dist/relay/relay-watchdog.d.ts +2 -0
  35. package/dist/relay/relay-watchdog.js +31 -0
  36. package/dist/relay/relay-watchdog.js.map +1 -0
  37. package/package.json +1 -1
  38. package/scripts/hermes_agent_bridge.py +14 -2
  39. package/scripts/verify-build-config.mjs +1 -3
@@ -1,25 +1,24 @@
1
1
  import { existsSync, mkdirSync, readFileSync, readdirSync, statSync, writeFileSync } from "fs";
2
- import { homedir } from "os";
3
- import { extname, join } from "path";
2
+ import { dirname, extname, join } from "path";
4
3
  import { mkdir, writeFile } from "fs/promises";
5
4
  import { WebSocket } from "ws";
6
5
  import { randomUUID } from "crypto";
7
- import { handleLocalCommand } from "../commands/local-handlers.js";
8
- import { handleProviderCommand } from "../commands/provider-handlers.js";
9
6
  import { getServicePlatform } from "../platform/service-manager.js";
10
7
  import { checkHermesHealth, createHermesJob, deleteHermesJob, listHermesJobs, pauseHermesJob, resumeHermesJob, runHermesJob, updateHermesJob, } from "../hermes/api-client.js";
11
8
  import { runHermesAgentTurn } from "../hermes/agent-bridge.js";
12
9
  import { resolveHermesModelSelection, loadHermesModelCatalog, readHermesSessionConfiguredModel, } from "../hermes/model-catalog.js";
10
+ import { buildAgentStatusCards, identityFromAgent, parseCronJobsPayload, } from "./agent-status.js";
11
+ import { createHermesProfile, deleteHermesProfile, listHermesProfiles, resolveHermesPath, resolveHermesProfilePath, switchHermesProfile, } from "../hermes/home.js";
13
12
  import { HermesSessionStore } from "../hermes/session-store.js";
13
+ import { installRelayWatchdog } from "./relay-watchdog.js";
14
+ import { dispatchCommonRelayCommand } from "./relay-command-dispatcher.js";
15
+ import { relayMethodSupport } from "./relay-method-registry.js";
14
16
  const DEFAULT_CONTEXT_TOKENS = 200_000;
15
- const HERMES_CRON_OUTPUT_DIR = join(homedir(), ".hermes", "cron", "output");
16
- const HERMES_HOME_DIR = join(homedir(), ".hermes");
17
- const HERMES_SOUL_PATH = join(HERMES_HOME_DIR, "SOUL.md");
18
- const HERMES_UPLOAD_DIR = join(HERMES_HOME_DIR, "pocketclaw", "uploads");
19
17
  const HERMES_HEALTHCHECK_FAST_INTERVAL_MS = 5_000;
20
18
  const HERMES_HEALTHCHECK_SLOW_INTERVAL_MS = 30_000;
21
19
  const HERMES_HEALTHCHECK_MAX_BACKOFF_MS = 30_000;
22
20
  const HERMES_AGENT_BRIDGE_VERSION = 1;
21
+ const HERMES_LOCAL_COMMAND_OVERRIDES = new Set(["agents.create", "agents.delete"]);
23
22
  function extensionFromMimeType(mimeType) {
24
23
  const map = {
25
24
  "image/jpeg": ".jpg",
@@ -64,6 +63,7 @@ export async function runHermesRelayManager(opts) {
64
63
  resolve(true);
65
64
  return;
66
65
  }
66
+ const uninstallWatchdog = installRelayWatchdog(relayWs, `hermes:${opts.gatewayId}`);
67
67
  function send(msg) {
68
68
  if (relayWs.readyState === WebSocket.OPEN) {
69
69
  relayWs.send(JSON.stringify(msg));
@@ -167,20 +167,131 @@ export async function runHermesRelayManager(opts) {
167
167
  },
168
168
  });
169
169
  }
170
+ function hermesAgentIdForProfile(profileId) {
171
+ return profileId === "default" ? "main" : profileId;
172
+ }
170
173
  function respondAgents(requestId) {
174
+ const profiles = listHermesProfiles();
175
+ const activeProfile = profiles.find((profile) => profile.isActive) ?? profiles[0];
171
176
  send({
172
177
  type: "res",
173
178
  id: requestId,
174
179
  ok: true,
175
180
  payload: {
176
- defaultId: "main",
181
+ defaultId: activeProfile ? hermesAgentIdForProfile(activeProfile.id) : "main",
177
182
  mainKey: "main",
178
- agents: [
179
- {
180
- id: "main",
181
- name: "Hermes",
183
+ agents: profiles.map((profile) => ({
184
+ id: hermesAgentIdForProfile(profile.id),
185
+ name: profile.name,
186
+ identity: {
187
+ name: profile.identity?.name || profile.name,
188
+ theme: profile.identity?.theme || (profile.isActive ? "Active profile" : "Hermes profile"),
189
+ emoji: profile.identity?.emoji || (profile.id === "default" ? "✨" : "◇"),
182
190
  },
183
- ],
191
+ })),
192
+ },
193
+ });
194
+ }
195
+ async function respondAgentStatusList(requestId) {
196
+ const profiles = listHermesProfiles();
197
+ const agents = profiles.map((profile) => ({
198
+ id: hermesAgentIdForProfile(profile.id),
199
+ name: profile.name,
200
+ identity: {
201
+ name: profile.identity?.name || profile.name,
202
+ theme: profile.identity?.theme || (profile.isActive ? "Active profile" : "Hermes profile"),
203
+ emoji: profile.identity?.emoji || (profile.id === "default" ? "✨" : "◇"),
204
+ },
205
+ }));
206
+ const sessionSnapshots = sessionStore.list().map(({ sessionKey, record }) => {
207
+ const resolvedModel = resolveSessionModelSelection(sessionKey);
208
+ return upsertSessionSnapshot(sessionKey, {
209
+ label: record.title?.trim() || undefined,
210
+ model: resolvedModel?.selectionKey,
211
+ updatedAt: record.updatedAtMs,
212
+ });
213
+ });
214
+ for (const profile of profiles) {
215
+ const sessionKey = `agent:${hermesAgentIdForProfile(profile.id)}:main`;
216
+ if (sessionSnapshots.some((session) => session.key === sessionKey))
217
+ continue;
218
+ sessionSnapshots.push(upsertSessionSnapshot(sessionKey, {
219
+ label: profile.id === "default" ? "Main" : profile.name,
220
+ model: resolveSessionModelSelection(sessionKey)?.selectionKey,
221
+ }));
222
+ }
223
+ const jobs = await listHermesJobs(opts.hermesApiBaseUrl, opts.hermesApiKey)
224
+ .then((items) => ({ jobs: items.map(toCronJobPayload) }))
225
+ .catch(() => ({ jobs: [] }));
226
+ const cards = await buildAgentStatusCards({
227
+ agents,
228
+ sessions: sessionSnapshots.map((session) => ({
229
+ key: session.key,
230
+ agentId: session.key.split(":")[0] === "agent" ? session.key.split(":")[1] : undefined,
231
+ label: session.label,
232
+ state: session.state,
233
+ updatedAtMs: session.updatedAt,
234
+ })),
235
+ cronJobs: parseCronJobsPayload(jobs),
236
+ loadIdentity: async (_agentId, agent) => identityFromAgent(agent),
237
+ loadRecentOutput: async () => undefined,
238
+ });
239
+ send({
240
+ type: "res",
241
+ id: requestId,
242
+ ok: true,
243
+ payload: {
244
+ agents: cards,
245
+ cards,
246
+ count: cards.length,
247
+ },
248
+ });
249
+ }
250
+ function respondProfileSwitch(requestId, params) {
251
+ const payload = (params ?? {});
252
+ const profileId = payload.profileId?.trim() || payload.id?.trim();
253
+ if (!profileId)
254
+ throw new Error("missing profileId");
255
+ const profile = switchHermesProfile(profileId);
256
+ send({
257
+ type: "res",
258
+ id: requestId,
259
+ ok: true,
260
+ payload: {
261
+ ok: true,
262
+ profile,
263
+ },
264
+ });
265
+ }
266
+ function respondAgentCreate(requestId, params) {
267
+ const payload = (params ?? {});
268
+ const profileId = payload.id?.trim() || payload.agentId?.trim() || payload.name?.trim();
269
+ if (!profileId)
270
+ throw new Error("missing profile id");
271
+ const profile = createHermesProfile(profileId);
272
+ send({
273
+ type: "res",
274
+ id: requestId,
275
+ ok: true,
276
+ payload: {
277
+ ok: true,
278
+ profile,
279
+ },
280
+ });
281
+ }
282
+ function respondAgentDelete(requestId, params) {
283
+ const payload = (params ?? {});
284
+ const profileId = payload.id?.trim() || payload.agentId?.trim() || payload.name?.trim();
285
+ if (!profileId)
286
+ throw new Error("missing profile id");
287
+ const profile = deleteHermesProfile(profileId);
288
+ send({
289
+ type: "res",
290
+ id: requestId,
291
+ ok: true,
292
+ payload: {
293
+ ok: true,
294
+ profile,
184
295
  },
185
296
  });
186
297
  }
@@ -223,11 +334,17 @@ export async function runHermesRelayManager(opts) {
223
334
  });
224
335
  return snapshot;
225
336
  });
226
- if (!sessions.some((session) => session.key === "agent:main:main")) {
227
- sessions.unshift(upsertSessionSnapshot("agent:main:main", {
228
- model: resolveSessionModelSelection("agent:main:main")?.selectionKey,
337
+ const profileMainSessions = [];
338
+ for (const profile of listHermesProfiles()) {
339
+ const sessionKey = `agent:${hermesAgentIdForProfile(profile.id)}:main`;
340
+ if (sessions.some((session) => session.key === sessionKey))
341
+ continue;
342
+ profileMainSessions.push(upsertSessionSnapshot(sessionKey, {
343
+ label: profile.id === "default" ? "Main" : profile.name,
344
+ model: resolveSessionModelSelection(sessionKey)?.selectionKey,
229
345
  }));
230
346
  }
347
+ sessions.unshift(...profileMainSessions);
231
348
  send({
232
349
  type: "res",
233
350
  id: requestId,
@@ -404,8 +521,9 @@ export async function runHermesRelayManager(opts) {
404
521
  });
405
522
  }
406
523
  function respondRuntimeFileGet(requestId, params) {
407
- const fileName = normalizeRuntimeFileName(params);
408
- const content = existsSync(HERMES_SOUL_PATH) ? readFileSync(HERMES_SOUL_PATH, "utf8") : "";
524
+ const { name: fileName, profileId } = normalizeRuntimeFileRead(params);
525
+ const filePath = resolveHermesProfilePath(profileId, fileName);
526
+ const content = existsSync(filePath) ? readFileSync(filePath, "utf8") : "";
409
527
  send({
410
528
  type: "res",
411
529
  id: requestId,
@@ -419,9 +537,10 @@ export async function runHermesRelayManager(opts) {
419
537
  });
420
538
  }
421
539
  function respondRuntimeFileSet(requestId, params) {
422
- const { name, content } = normalizeRuntimeFileWrite(params);
423
- mkdirSync(HERMES_HOME_DIR, { recursive: true });
424
- writeFileSync(HERMES_SOUL_PATH, content, "utf8");
540
+ const { name, content, profileId } = normalizeRuntimeFileWrite(params);
541
+ const filePath = resolveHermesProfilePath(profileId, name);
542
+ mkdirSync(dirname(filePath), { recursive: true });
543
+ writeFileSync(filePath, content, "utf8");
425
544
  send({
426
545
  type: "res",
427
546
  id: requestId,
@@ -455,7 +574,8 @@ export async function runHermesRelayManager(opts) {
455
574
  throw new Error("invalid chat.send payload");
456
575
  }
457
576
  if (params.attachments && params.attachments.length > 0) {
458
- await mkdir(HERMES_UPLOAD_DIR, { recursive: true });
577
+ const uploadDir = resolveHermesPath("pocketclaw", "uploads");
578
+ await mkdir(uploadDir, { recursive: true });
459
579
  const stagedFiles = [];
460
580
  const stagedNames = [];
461
581
  for (const attachment of params.attachments) {
@@ -478,7 +598,7 @@ export async function runHermesRelayManager(opts) {
478
598
  const buffer = Buffer.from(base64, "base64");
479
599
  const ext = extname(attachment.fileName ?? "") || extensionFromMimeType(mimeType);
480
600
  const safeName = `${randomUUID()}${ext}`;
481
- const stagedPath = join(HERMES_UPLOAD_DIR, safeName);
601
+ const stagedPath = join(uploadDir, safeName);
482
602
  await writeFile(stagedPath, buffer);
483
603
  stagedFiles.push(stagedPath);
484
604
  stagedNames.push(attachment.fileName?.trim() || safeName);
@@ -508,6 +628,7 @@ export async function runHermesRelayManager(opts) {
508
628
  model: nextSelection?.selectionKey,
509
629
  });
510
630
  let accumulatedText = "";
631
+ const accumulatedToolCalls = new Map();
511
632
  try {
512
633
  const result = await runHermesAgentTurn({
513
634
  sessionId: reusableSessionId,
@@ -538,6 +659,12 @@ export async function runHermesRelayManager(opts) {
538
659
  });
539
660
  },
540
661
  onToolStart: (event) => {
662
+ accumulatedToolCalls.set(event.toolCallId, {
663
+ id: event.toolCallId,
664
+ name: event.name,
665
+ argsJSON: event.args ? JSON.stringify(event.args) : null,
666
+ output: null,
667
+ });
541
668
  send({
542
669
  type: "event",
543
670
  event: "agent",
@@ -555,6 +682,13 @@ export async function runHermesRelayManager(opts) {
555
682
  });
556
683
  },
557
684
  onToolComplete: (event) => {
685
+ const existingToolCall = accumulatedToolCalls.get(event.toolCallId);
686
+ accumulatedToolCalls.set(event.toolCallId, {
687
+ id: event.toolCallId,
688
+ name: event.name,
689
+ argsJSON: existingToolCall?.argsJSON ?? (event.args ? JSON.stringify(event.args) : null),
690
+ output: event.result ?? null,
691
+ });
558
692
  send({
559
693
  type: "event",
560
694
  event: "agent",
@@ -584,6 +718,31 @@ export async function runHermesRelayManager(opts) {
584
718
  model: nextSelection?.selectionKey,
585
719
  });
586
720
  const finalState = "final";
721
+ const finalContent = [
722
+ {
723
+ type: "text",
724
+ text: result.fullText || accumulatedText,
725
+ },
726
+ ];
727
+ for (const toolCall of accumulatedToolCalls.values()) {
728
+ const toolArguments = (() => {
729
+ if (!toolCall.argsJSON)
730
+ return undefined;
731
+ try {
732
+ return JSON.parse(toolCall.argsJSON);
733
+ }
734
+ catch {
735
+ return toolCall.argsJSON;
736
+ }
737
+ })();
738
+ finalContent.push({
739
+ type: "tool_call",
740
+ id: toolCall.id,
741
+ name: toolCall.name,
742
+ arguments: toolArguments,
743
+ result: toolCall.output ?? undefined,
744
+ });
745
+ }
587
746
  send({
588
747
  type: "event",
589
748
  event: "chat",
@@ -592,12 +751,7 @@ export async function runHermesRelayManager(opts) {
592
751
  sessionKey,
593
752
  state: finalState,
594
753
  message: {
595
- content: [
596
- {
597
- type: "text",
598
- text: result.fullText || accumulatedText,
599
- },
600
- ],
754
+ content: finalContent,
601
755
  },
602
756
  },
603
757
  });
@@ -657,26 +811,11 @@ export async function runHermesRelayManager(opts) {
657
811
  if (msg.type !== "cmd" || !msg.method)
658
812
  return;
659
813
  const requestId = msg.id;
660
- const providerPromise = handleProviderCommand(msg.method, msg.params);
661
- if (providerPromise !== null) {
662
- const result = await providerPromise;
663
- if (requestId) {
664
- send({
665
- type: "res",
666
- id: requestId,
667
- ok: result.ok,
668
- ...(result.ok ? { payload: result.payload } : { error: { message: result.error } }),
669
- });
670
- }
671
- return;
672
- }
673
- const localResult = handleLocalCommand(msg.method, msg.params);
674
- if (localResult !== null) {
675
- if (requestId) {
676
- send(localResult.ok
677
- ? { type: "res", id: requestId, ok: true, payload: localResult.payload }
678
- : { type: "res", id: requestId, ok: false, error: { message: localResult.error } });
679
- }
814
+ const support = relayMethodSupport(msg.method, "hermes") ?? "unsupported";
815
+ console.log(`[relay:hermes] cmd received method=${msg.method} support=${support} id=${requestId ?? "(no-id)"}`);
816
+ if (await dispatchCommonRelayCommand(msg.method, msg.params, requestId, send, {
817
+ skipLocalMethods: HERMES_LOCAL_COMMAND_OVERRIDES,
818
+ })) {
680
819
  return;
681
820
  }
682
821
  try {
@@ -693,6 +832,22 @@ export async function runHermesRelayManager(opts) {
693
832
  if (requestId)
694
833
  respondAgents(requestId);
695
834
  return;
835
+ case "agents.status.list":
836
+ if (requestId)
837
+ await respondAgentStatusList(requestId);
838
+ return;
839
+ case "agents.create":
840
+ if (requestId)
841
+ respondAgentCreate(requestId, msg.params ?? {});
842
+ return;
843
+ case "agents.delete":
844
+ if (requestId)
845
+ respondAgentDelete(requestId, msg.params ?? {});
846
+ return;
847
+ case "runtime.profiles.switch":
848
+ if (requestId)
849
+ respondProfileSwitch(requestId, msg.params ?? {});
850
+ return;
696
851
  case "sessions.list":
697
852
  if (requestId)
698
853
  respondSessions(requestId);
@@ -788,6 +943,7 @@ export async function runHermesRelayManager(opts) {
788
943
  }
789
944
  });
790
945
  relayWs.on("close", (code, reason) => {
946
+ uninstallWatchdog();
791
947
  stopHealthChecks();
792
948
  sessionStore.flushSync();
793
949
  console.log(`Hermes relay connection closed: ${code} ${reason.toString()}`);
@@ -1070,7 +1226,7 @@ function readHermesJobHistory(jobId, limit) {
1070
1226
  }));
1071
1227
  }
1072
1228
  function readHermesJobOutputs(jobId) {
1073
- const jobDir = join(HERMES_CRON_OUTPUT_DIR, jobId);
1229
+ const jobDir = resolveHermesPath("cron", "output", jobId);
1074
1230
  if (!existsSync(jobDir))
1075
1231
  return [];
1076
1232
  return readdirSync(jobDir)
@@ -1106,16 +1262,32 @@ function extractHermesOutputResponse(content) {
1106
1262
  function normalizeRuntimeFileName(params) {
1107
1263
  const raw = asRecord(params);
1108
1264
  const name = typeof raw.name === "string" ? raw.name.trim() : "";
1109
- if (name !== "SOUL.md") {
1265
+ if (name !== "SOUL.md" && name !== "memories/USER.md") {
1110
1266
  throw new Error("unsupported runtime file");
1111
1267
  }
1112
1268
  return name;
1113
1269
  }
1270
+ function normalizeRuntimeProfileId(params) {
1271
+ const raw = asRecord(params);
1272
+ const profileId = typeof raw.profileId === "string"
1273
+ ? raw.profileId.trim()
1274
+ : typeof raw.agentId === "string"
1275
+ ? raw.agentId.trim()
1276
+ : undefined;
1277
+ return profileId || undefined;
1278
+ }
1279
+ function normalizeRuntimeFileRead(params) {
1280
+ return {
1281
+ name: normalizeRuntimeFileName(params),
1282
+ profileId: normalizeRuntimeProfileId(params),
1283
+ };
1284
+ }
1114
1285
  function normalizeRuntimeFileWrite(params) {
1115
1286
  const raw = asRecord(params);
1116
1287
  const name = normalizeRuntimeFileName(params);
1117
1288
  const content = typeof raw.content === "string" ? raw.content : "";
1118
- return { name, content };
1289
+ const profileId = normalizeRuntimeProfileId(params);
1290
+ return { name, content, profileId };
1119
1291
  }
1120
1292
  function parseHermesDate(value) {
1121
1293
  if (!value)
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-relay-manager.js","sourceRoot":"","sources":["../../src/relay/hermes-relay-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hermes-relay-manager.js","sourceRoot":"","sources":["../../src/relay/hermes-relay-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ type RelayResponse = {
2
+ type: "res";
3
+ id: string;
4
+ ok: boolean;
5
+ payload?: unknown;
6
+ error?: {
7
+ message?: string;
8
+ };
9
+ };
10
+ type DispatchOptions = {
11
+ skipLocalMethods?: ReadonlySet<string>;
12
+ };
13
+ export declare function dispatchCommonRelayCommand(method: string, params: unknown, requestId: string | undefined, send: (response: RelayResponse) => void, options?: DispatchOptions): Promise<boolean>;
14
+ export {};