@mnemonik/cursor-hooks 0.7.201 → 0.7.203

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.
package/dist/hook.js CHANGED
@@ -15,6 +15,7 @@ import { matchIrreducibleDeny } from './lib/shellTokens.js';
15
15
  import { addPathsToGitDirtySnapshot, captureGitDirtyBaseline, diffGitDirtySnapshot, } from '@mnemonik/shared/git-edit-detector';
16
16
  import { startAutomaticUpdateForSession } from '@mnemonik/local-setup/automatic-update';
17
17
  import { removeSessionState, sessionStateFilePath, sweepStaleSessionDirs, } from './lib/sessionState.js';
18
+ import { recordSubagentParent, resolveSubagentIdentity } from './lib/subagent.js';
18
19
  import { findProjectIdentity, validHookSessionId } from '@mnemonik/shared/hook-runtime';
19
20
  import { postBoundContext, runProjectSetup } from './lib/boundContext.js';
20
21
  import { REFLEX_NOTE_BUDGET_BYTES } from '@mnemonik/shared/context-budget';
@@ -149,6 +150,18 @@ const UNKNOWN_SESSION = 'cursor-unknown-session';
149
150
  function sessionId(input) {
150
151
  return input.session_id ?? input.conversation_id ?? input.generation_id ?? UNKNOWN_SESSION;
151
152
  }
153
+ /** The subagent this event came from (set in dispatch by lib/subagent.ts). */
154
+ function subagentId(input) {
155
+ return input.mnemonik_agent_id;
156
+ }
157
+ /**
158
+ * Key for local per-context state (JIT receipts, dedup claims, result cues,
159
+ * the git dirty-set snapshot): per agent inside a subagent.
160
+ */
161
+ function stateSessionId(input) {
162
+ const agentId = subagentId(input);
163
+ return agentId ? `${sessionId(input)}:agent:${agentId}` : sessionId(input);
164
+ }
152
165
  /**
153
166
  * This session's private dirty-set snapshot, or '' — the detector's "no usable
154
167
  * session identity" signal — when the payload named no session. The fallback
@@ -157,7 +170,9 @@ function sessionId(input) {
157
170
  */
158
171
  function gitSnapshotFile(input) {
159
172
  const id = sessionId(input);
160
- return id === UNKNOWN_SESSION ? '' : sessionStateFilePath(id, 'git-dirty-snapshot.json');
173
+ return id === UNKNOWN_SESSION
174
+ ? ''
175
+ : sessionStateFilePath(stateSessionId(input), 'git-dirty-snapshot.json');
161
176
  }
162
177
  /**
163
178
  * Report shell writes observed since the last observation on this session.
@@ -175,6 +190,7 @@ async function reportShellWrites(input, config) {
175
190
  server: config.server,
176
191
  apiKey: config.apiKey,
177
192
  sessionId: sessionId(input),
193
+ agentId: subagentId(input),
178
194
  filePath,
179
195
  cwd,
180
196
  });
@@ -291,7 +307,7 @@ async function handleSessionStart(input, config) {
291
307
  writeAllow();
292
308
  const isFirstFire = await claimFire({
293
309
  event: 'sessionStart',
294
- sessionKey: sessionId(input),
310
+ sessionKey: stateSessionId(input),
295
311
  });
296
312
  if (!isFirstFire)
297
313
  writeAllow();
@@ -308,6 +324,7 @@ async function handleSessionStart(input, config) {
308
324
  cwd,
309
325
  projectId,
310
326
  cursorSessionId: sessionId(input),
327
+ agentId: subagentId(input),
311
328
  event: 'SessionStart',
312
329
  tz,
313
330
  });
@@ -344,7 +361,7 @@ async function handleBeforeSubmitPrompt(input, config) {
344
361
  }
345
362
  const isFirstFire = await claimFire({
346
363
  event: 'beforeSubmitPrompt',
347
- sessionKey: sessionId(input),
364
+ sessionKey: stateSessionId(input),
348
365
  prompt: input.prompt,
349
366
  });
350
367
  if (!isFirstFire)
@@ -362,8 +379,8 @@ async function handleBeforeSubmitPrompt(input, config) {
362
379
  const tz = captureHostTz();
363
380
  const jitReceiptDirectory = sessionId(input) === UNKNOWN_SESSION
364
381
  ? ''
365
- : sessionStateFilePath(sessionId(input), 'jit-delivery-receipts');
366
- const receiptContext = { sessionId: sessionId(input), hookVersion: HOOK_VERSION };
382
+ : sessionStateFilePath(stateSessionId(input), 'jit-delivery-receipts');
383
+ const receiptContext = { sessionId: stateSessionId(input), hookVersion: HOOK_VERSION };
367
384
  const persistedJitRefsAtTurnStart = new Set(readPendingJitDeliveryRefs(jitReceiptDirectory, receiptContext));
368
385
  const [injectionsResp, jitResp, ambientResp] = await Promise.all([
369
386
  fetchInjections({
@@ -372,6 +389,7 @@ async function handleBeforeSubmitPrompt(input, config) {
372
389
  cwd: cwdOf(input),
373
390
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
374
391
  cursorSessionId: sessionId(input),
392
+ agentId: subagentId(input),
375
393
  event: 'UserPromptSubmit',
376
394
  prompt: input.prompt,
377
395
  tz,
@@ -383,6 +401,7 @@ async function handleBeforeSubmitPrompt(input, config) {
383
401
  cwd: cwdOf(input),
384
402
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
385
403
  cursorSessionId: sessionId(input),
404
+ agentId: subagentId(input),
386
405
  prompt: input.prompt,
387
406
  })
388
407
  : Promise.resolve(null),
@@ -393,6 +412,7 @@ async function handleBeforeSubmitPrompt(input, config) {
393
412
  cwd: cwdOf(input),
394
413
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
395
414
  cursorSessionId: sessionId(input),
415
+ agentId: subagentId(input),
396
416
  prompt: input.prompt,
397
417
  })
398
418
  : Promise.resolve(null),
@@ -502,6 +522,7 @@ async function handlePreToolUse(input, config) {
502
522
  cwd,
503
523
  projectId,
504
524
  cursorSessionId: sessionId(input),
525
+ agentId: subagentId(input),
505
526
  event: 'PreToolUse',
506
527
  toolName: input.tool_name ?? '',
507
528
  toolArgs: objectToolInput(input),
@@ -623,7 +644,7 @@ async function handlePreGenericTool(input, config) {
623
644
  const cueTarget = pendingResultCueTarget(input);
624
645
  if (cueTarget && sessionId(input) !== UNKNOWN_SESSION) {
625
646
  rememberPendingResultCue({
626
- sessionId: sessionId(input),
647
+ sessionId: stateSessionId(input),
627
648
  toolUseId: input.tool_use_id ?? '',
628
649
  target: cueTarget,
629
650
  });
@@ -639,6 +660,7 @@ async function handlePreGenericTool(input, config) {
639
660
  cwd,
640
661
  projectId: (await findProjectIdentity(cwd))?.projectId,
641
662
  cursorSessionId: sessionId(input),
663
+ agentId: subagentId(input),
642
664
  event: 'PreToolUse',
643
665
  toolName: tool,
644
666
  toolArgs: objectToolInput(input),
@@ -673,7 +695,7 @@ async function handlePostToolUse(input, config) {
673
695
  });
674
696
  const pendingCue = cueTarget && toolUseId && sessionId(input) !== UNKNOWN_SESSION
675
697
  ? takePendingResultCue({
676
- sessionId: sessionId(input),
698
+ sessionId: stateSessionId(input),
677
699
  toolUseId,
678
700
  target: cueTarget,
679
701
  })
@@ -687,6 +709,7 @@ async function handlePostToolUse(input, config) {
687
709
  server: config.server,
688
710
  apiKey: config.apiKey,
689
711
  sessionId: sessionId(input),
712
+ agentId: subagentId(input),
690
713
  filePath: target,
691
714
  cwd,
692
715
  });
@@ -706,6 +729,7 @@ async function handlePostToolUse(input, config) {
706
729
  cwd,
707
730
  projectId: (await findProjectIdentity(cwd))?.projectId,
708
731
  cursorSessionId: sessionId(input),
732
+ agentId: subagentId(input),
709
733
  event: 'PostToolUse',
710
734
  toolName: tool,
711
735
  toolArgs: resultExcerpt ? objectToolInput(input) : undefined,
@@ -736,7 +760,7 @@ async function handleBeforeReadFile(input, config) {
736
760
  const target = dedicatedReadTarget(input);
737
761
  const excerpt = input.attachments?.length ? undefined : safeCursorResultText(input.content);
738
762
  if (config.apiKey && target && excerpt && sessionId(input) !== UNKNOWN_SESSION) {
739
- attachPendingResultCue({ sessionId: sessionId(input), target, excerpt });
763
+ attachPendingResultCue({ sessionId: stateSessionId(input), target, excerpt });
740
764
  }
741
765
  writeAllow();
742
766
  }
@@ -748,7 +772,7 @@ async function handleAfterShellExecution(input, config) {
748
772
  const target = dedicatedShellTarget(input);
749
773
  const excerpt = safeCursorResultText(input.output);
750
774
  if (config.apiKey && target && excerpt && sessionId(input) !== UNKNOWN_SESSION) {
751
- attachPendingResultCue({ sessionId: sessionId(input), target, excerpt });
775
+ attachPendingResultCue({ sessionId: stateSessionId(input), target, excerpt });
752
776
  }
753
777
  writeAllow();
754
778
  }
@@ -757,7 +781,7 @@ async function handlePostToolUseFailure(input, config) {
757
781
  await reportShellWrites(input, config);
758
782
  if (sessionId(input) !== UNKNOWN_SESSION) {
759
783
  discardPendingResultCue({
760
- sessionId: sessionId(input),
784
+ sessionId: stateSessionId(input),
761
785
  toolUseId: input.tool_use_id,
762
786
  target: pendingResultCueTarget(input),
763
787
  });
@@ -780,7 +804,7 @@ async function handleBeforeShellExecution(input, config) {
780
804
  const denyName = matchIrreducibleDeny(command);
781
805
  if (denyName) {
782
806
  discardPendingResultCue({
783
- sessionId: sessionId(input),
807
+ sessionId: stateSessionId(input),
784
808
  target: dedicatedShellTarget(input),
785
809
  });
786
810
  await emitGateFired(input, config, 'Shell', 'enforce', `irreducible_deny_${denyName}`);
@@ -807,6 +831,7 @@ async function handleBeforeShellExecution(input, config) {
807
831
  cwd: cwdOf(input),
808
832
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
809
833
  cursorSessionId: sessionId(input),
834
+ agentId: subagentId(input),
810
835
  event: 'PreToolUse',
811
836
  toolName: 'Shell',
812
837
  toolArgs: { command },
@@ -851,7 +876,7 @@ async function handleBeforeShellExecution(input, config) {
851
876
  }
852
877
  if (policyCheck) {
853
878
  discardPendingResultCue({
854
- sessionId: sessionId(input),
879
+ sessionId: stateSessionId(input),
855
880
  target: dedicatedShellTarget(input),
856
881
  });
857
882
  items.push(...boundedInjectionItems(policyCheck, 4_000));
@@ -909,6 +934,7 @@ async function handleBeforeMCPExecution(input, config) {
909
934
  cwd: cwdOf(input),
910
935
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
911
936
  cursorSessionId: sessionId(input),
937
+ agentId: subagentId(input),
912
938
  tool,
913
939
  args: normalizedArgs.value,
914
940
  model: input.model,
@@ -963,6 +989,7 @@ async function handleAfterMCPExecution(input, config) {
963
989
  cwd: cwdOf(input),
964
990
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
965
991
  cursorSessionId: sessionId(input),
992
+ agentId: subagentId(input),
966
993
  tool,
967
994
  args: normalizedArgs.value,
968
995
  result: normalizedResult.value,
@@ -976,6 +1003,7 @@ async function handleAfterMCPExecution(input, config) {
976
1003
  cwd: cwdOf(input),
977
1004
  projectId: (await findProjectIdentity(cwdOf(input)))?.projectId,
978
1005
  cursorSessionId: sessionId(input),
1006
+ agentId: subagentId(input),
979
1007
  event: 'PostToolUse',
980
1008
  toolName: tool,
981
1009
  toolArgs: projectMcpArgsForObservation(input, MAX_TOOL_ARGS_BYTES),
@@ -992,6 +1020,7 @@ async function handleAfterFileEdit(input, config) {
992
1020
  server: config.server,
993
1021
  apiKey: config.apiKey,
994
1022
  sessionId: sessionId(input),
1023
+ agentId: subagentId(input),
995
1024
  filePath,
996
1025
  cwd: cwdOf(input),
997
1026
  });
@@ -1093,26 +1122,47 @@ async function handleSessionEnd(input, config) {
1093
1122
  removeSessionState(cursorSessionId);
1094
1123
  writeAllow();
1095
1124
  }
1096
- async function dispatch(input) {
1125
+ async function dispatch(rawInput) {
1097
1126
  if (isNonInteractive())
1098
1127
  writeAllow();
1099
- const event = cursorEvent(input);
1128
+ const event = cursorEvent(rawInput);
1100
1129
  const probe = probeMode();
1101
1130
  if (probe !== 'off') {
1102
1131
  // Probe sessions are dedicated: markers replace normal behavior entirely
1103
1132
  // so channel visibility is measured without Mnemonik content in the way.
1104
1133
  const nonce = probeNonce();
1105
- const output = event ? buildProbeOutput(event, input, probe, nonce) : null;
1134
+ const output = event ? buildProbeOutput(event, rawInput, probe, nonce) : null;
1106
1135
  await appendProbeLog({
1107
1136
  ts: new Date().toISOString(),
1108
1137
  event,
1109
1138
  mode: probe,
1110
1139
  nonce,
1111
- input,
1140
+ input: rawInput,
1112
1141
  output,
1113
1142
  });
1114
1143
  writeOutput(output);
1115
1144
  }
1145
+ // Subagents: record the parent at subagentStart, then send a recorded
1146
+ // subagent's later events as the parent's session plus agentId. Parity with
1147
+ // Claude Code and Codex `agent_id`. See lib/subagent.ts.
1148
+ let input = rawInput;
1149
+ if (event === 'subagentStart')
1150
+ recordSubagentParent(rawInput);
1151
+ const subagent = event === 'subagentStart' || event === 'subagentStop'
1152
+ ? null
1153
+ : resolveSubagentIdentity(rawInput, sessionId(rawInput));
1154
+ if (subagent) {
1155
+ // A subagent's end or compaction is not the session's: routed as the
1156
+ // parent's, either would close or re-epoch the parent session.
1157
+ if (event === 'sessionEnd' || event === 'preCompact')
1158
+ writeAllow();
1159
+ input = {
1160
+ ...rawInput,
1161
+ session_id: subagent.parentSessionId,
1162
+ conversation_id: subagent.parentSessionId,
1163
+ mnemonik_agent_id: subagent.agentId,
1164
+ };
1165
+ }
1116
1166
  const bypass = parseBypass();
1117
1167
  if (bypass.invalidReason) {
1118
1168
  stderr.write(`mnemonik-cursor-hook: invalid bypass envelope - ${bypass.invalidReason}\n`);
package/dist/hook.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ export interface FetchMcpPrecheckInput {
6
6
  cwd: string;
7
7
  projectId?: string;
8
8
  cursorSessionId: string;
9
+ /** Subagent the event came from (lib/subagent.ts); absent on the parent. */
10
+ agentId?: string;
9
11
  tool: string;
10
12
  args: Record<string, unknown>;
11
13
  model?: string;
@@ -30,6 +32,8 @@ export interface FetchMcpRecordInput {
30
32
  cwd: string;
31
33
  projectId?: string;
32
34
  cursorSessionId: string;
35
+ /** Subagent the event came from (lib/subagent.ts); absent on the parent. */
36
+ agentId?: string;
33
37
  tool: string;
34
38
  args: Record<string, unknown>;
35
39
  result: unknown;
@@ -54,6 +58,8 @@ export interface FetchInjectionsInput {
54
58
  cwd: string;
55
59
  projectId?: string;
56
60
  cursorSessionId: string;
61
+ /** Subagent the event came from (lib/subagent.ts); absent on the parent. */
62
+ agentId?: string;
57
63
  event: 'PreToolUse' | 'PostToolUse' | 'UserPromptSubmit' | 'SessionStart' | 'Stop';
58
64
  prompt?: string;
59
65
  toolName?: string;
@@ -82,6 +88,8 @@ export interface FetchJitInput {
82
88
  cwd: string;
83
89
  projectId?: string;
84
90
  cursorSessionId: string;
91
+ /** Subagent the prompt fired in; absent on the main thread. */
92
+ agentId?: string;
85
93
  prompt: string;
86
94
  recentMemoryIds?: string[];
87
95
  }
@@ -99,6 +107,8 @@ export interface FetchAmbientInput {
99
107
  cwd: string;
100
108
  projectId?: string;
101
109
  cursorSessionId: string;
110
+ /** Subagent the prompt fired in; absent on the main thread. */
111
+ agentId?: string;
102
112
  prompt: string;
103
113
  }
104
114
  export declare function fetchAmbient(input: FetchAmbientInput): Promise<AmbientResponse | null>;
@@ -128,6 +138,7 @@ export declare function trackIdeEdit(input: {
128
138
  server: string;
129
139
  apiKey: HookCredential | null;
130
140
  sessionId: string;
141
+ agentId?: string;
131
142
  filePath: string;
132
143
  cwd?: string;
133
144
  }): Promise<boolean>;
package/dist/lib/http.js CHANGED
@@ -24,6 +24,7 @@ export async function fetchMcpPrecheck(input) {
24
24
  cwd: input.cwd,
25
25
  projectId: input.projectId,
26
26
  cursorSessionId: input.cursorSessionId,
27
+ ...(input.agentId ? { agentId: input.agentId } : {}),
27
28
  tool: input.tool,
28
29
  args: input.args,
29
30
  model: input.model,
@@ -56,6 +57,7 @@ export async function fetchMcpRecord(input) {
56
57
  cwd: input.cwd,
57
58
  projectId: input.projectId,
58
59
  cursorSessionId: input.cursorSessionId,
60
+ ...(input.agentId ? { agentId: input.agentId } : {}),
59
61
  tool: input.tool,
60
62
  args: input.args,
61
63
  result: input.result,
@@ -75,10 +77,14 @@ export async function fetchInjections(input) {
75
77
  const url = `${input.server.replace(/\/$/, '')}/api/v1/hooks/injections`;
76
78
  const timeoutMs = input.event === 'SessionStart' ? SESSION_START_FETCH_TIMEOUT_MS : FETCH_TIMEOUT_MS;
77
79
  const { signal, cleanup } = withTimeout(timeoutMs);
80
+ // JIT receipts are local per-context state: per agent inside a subagent.
81
+ const receiptSessionId = input.agentId
82
+ ? `${input.cursorSessionId}:agent:${input.agentId}`
83
+ : input.cursorSessionId;
78
84
  const receiptDirectory = input.cursorSessionId === 'cursor-unknown-session'
79
85
  ? ''
80
- : sessionStateFilePath(input.cursorSessionId, 'jit-delivery-receipts');
81
- const receiptContext = { sessionId: input.cursorSessionId, hookVersion: HOOK_VERSION };
86
+ : sessionStateFilePath(receiptSessionId, 'jit-delivery-receipts');
87
+ const receiptContext = { sessionId: receiptSessionId, hookVersion: HOOK_VERSION };
82
88
  const jitDeliveryAcks = readPendingJitDeliveryRefs(receiptDirectory, receiptContext);
83
89
  reportJitDeliveryRefsAttached(jitDeliveryAcks, receiptContext);
84
90
  try {
@@ -91,6 +97,7 @@ export async function fetchInjections(input) {
91
97
  cwd: input.cwd,
92
98
  projectId: input.projectId,
93
99
  sessionId: input.cursorSessionId,
100
+ ...(input.agentId ? { agentId: input.agentId } : {}),
94
101
  event: input.event,
95
102
  host: HOST,
96
103
  prompt: input.prompt,
@@ -136,6 +143,7 @@ export async function fetchJit(input) {
136
143
  cwd: input.cwd,
137
144
  projectId: input.projectId,
138
145
  sessionId: input.cursorSessionId,
146
+ ...(input.agentId ? { agentId: input.agentId } : {}),
139
147
  userPromptText: input.prompt,
140
148
  recentMemoryIds: input.recentMemoryIds,
141
149
  source: 'cursor_hook',
@@ -166,6 +174,7 @@ export async function fetchAmbient(input) {
166
174
  cwd: input.cwd,
167
175
  projectId: input.projectId,
168
176
  sessionId: input.cursorSessionId,
177
+ ...(input.agentId ? { agentId: input.agentId } : {}),
169
178
  userPromptText: input.prompt,
170
179
  source: 'cursor_hook',
171
180
  }),
@@ -255,6 +264,7 @@ export async function trackIdeEdit(input) {
255
264
  },
256
265
  body: JSON.stringify({
257
266
  sessionId: input.sessionId,
267
+ ...(input.agentId ? { agentId: input.agentId } : {}),
258
268
  filePath: input.filePath,
259
269
  cwd: input.cwd,
260
270
  host: HOST,
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { CursorHookInput } from './types.js';
2
+ export interface SubagentIdentity {
3
+ /** The parent conversation: the session every server request is keyed on. */
4
+ parentSessionId: string;
5
+ /** The subagent, forwarded as `agentId`. */
6
+ agentId: string;
7
+ }
8
+ /**
9
+ * Record a subagent's parent at `subagentStart`. Best effort and private
10
+ * (0o700 directory, 0o600 file, never through a symlink): a lost record only
11
+ * means the subagent is handled as its own session, as before.
12
+ */
13
+ export declare function recordSubagentParent(input: CursorHookInput): boolean;
14
+ /**
15
+ * The subagent this event came from, or null on the parent's own events.
16
+ * An event that names both `subagent_id` and `parent_conversation_id` is
17
+ * trusted directly; otherwise the event's own session id is looked up among
18
+ * recorded subagents.
19
+ */
20
+ export declare function resolveSubagentIdentity(input: CursorHookInput, sessionId: string): SubagentIdentity | null;
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Subagent identity for Cursor hook events.
3
+ *
4
+ * Cursor's tool hooks carry no subagent field. The installed cursor-agent CLI
5
+ * (2026.09.02-c22c1a3) establishes two facts:
6
+ * - `subagentStart` carries `subagent_id` and `parent_conversation_id`.
7
+ * - In interactive and headless CLI runs, a subagent's tool hooks carry the
8
+ * subagent's OWN conversation id (the same id as `subagent_id`), and
9
+ * `session_id` falls back to it.
10
+ * So `subagentStart` records `subagent_id → parent_conversation_id` in the
11
+ * subagent's private state directory, and every later event whose session id
12
+ * is a recorded subagent is sent as the PARENT's session with `agentId`, the
13
+ * same shape Claude Code and Codex produce from their `agent_id`.
14
+ *
15
+ * Safe either way: where the host sends the parent's id on a subagent's tool
16
+ * hooks (CLI ACP mode; the Cursor IDE is unverified), no record matches and
17
+ * the event is handled as the parent's, exactly as before.
18
+ */
19
+ import { createHash } from 'node:crypto';
20
+ import { existsSync, lstatSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync, } from 'node:fs';
21
+ import { dirname } from 'node:path';
22
+ import { sessionStateFilePath } from './sessionState.js';
23
+ /** The server's bound for session and agent ids (src/server/routes/schemas.ts). */
24
+ const ID_RE = /^[a-zA-Z0-9@._+:-]{1,255}$/;
25
+ const PARENT_FILE = 'subagent-parent.json';
26
+ function isId(value) {
27
+ return typeof value === 'string' && ID_RE.test(value);
28
+ }
29
+ /** Server-safe agent id: an out-of-bound id is hashed rather than dropped. */
30
+ function agentIdFor(raw) {
31
+ return ID_RE.test(raw) ? raw : createHash('sha256').update(raw).digest('hex').slice(0, 32);
32
+ }
33
+ /**
34
+ * Record a subagent's parent at `subagentStart`. Best effort and private
35
+ * (0o700 directory, 0o600 file, never through a symlink): a lost record only
36
+ * means the subagent is handled as its own session, as before.
37
+ */
38
+ export function recordSubagentParent(input) {
39
+ const child = input.subagent_id;
40
+ const parent = input.parent_conversation_id;
41
+ if (typeof child !== 'string' || child.length === 0 || !isId(parent) || child === parent) {
42
+ return false;
43
+ }
44
+ const path = sessionStateFilePath(child, PARENT_FILE);
45
+ const temp = `${path}.${process.pid}.tmp`;
46
+ try {
47
+ mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
48
+ if (lstatSync(dirname(path)).isSymbolicLink())
49
+ return false;
50
+ if (existsSync(path) && lstatSync(path).isSymbolicLink())
51
+ return false;
52
+ writeFileSync(temp, JSON.stringify({ parentSessionId: parent }), { mode: 0o600, flag: 'wx' });
53
+ renameSync(temp, path);
54
+ return true;
55
+ }
56
+ catch {
57
+ try {
58
+ unlinkSync(temp);
59
+ }
60
+ catch {
61
+ // Cleanup is best effort.
62
+ }
63
+ return false;
64
+ }
65
+ }
66
+ function readRecordedParent(sessionId) {
67
+ try {
68
+ const path = sessionStateFilePath(sessionId, PARENT_FILE);
69
+ if (!existsSync(path) || lstatSync(path).isSymbolicLink())
70
+ return null;
71
+ const parsed = JSON.parse(readFileSync(path, 'utf8'));
72
+ return isId(parsed.parentSessionId) && parsed.parentSessionId !== sessionId
73
+ ? parsed.parentSessionId
74
+ : null;
75
+ }
76
+ catch {
77
+ return null;
78
+ }
79
+ }
80
+ /**
81
+ * The subagent this event came from, or null on the parent's own events.
82
+ * An event that names both `subagent_id` and `parent_conversation_id` is
83
+ * trusted directly; otherwise the event's own session id is looked up among
84
+ * recorded subagents.
85
+ */
86
+ export function resolveSubagentIdentity(input, sessionId) {
87
+ const direct = input.subagent_id;
88
+ const directParent = input.parent_conversation_id;
89
+ if (typeof direct === 'string' &&
90
+ direct.length > 0 &&
91
+ isId(directParent) &&
92
+ direct !== directParent) {
93
+ return { parentSessionId: directParent, agentId: agentIdFor(direct) };
94
+ }
95
+ const parent = readRecordedParent(sessionId);
96
+ return parent ? { parentSessionId: parent, agentId: agentIdFor(sessionId) } : null;
97
+ }
98
+ //# sourceMappingURL=subagent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subagent.js","sourceRoot":"","sources":["../../src/lib/subagent.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,11 @@ export interface CursorHookInput {
42
42
  followup_count?: number;
43
43
  /** Stop-loop counter Cursor actually sends (docs say followup_count; real payloads carry loop_count). */
44
44
  loop_count?: number;
45
+ /**
46
+ * Set by this hook, never by Cursor: the subagent a tool event came from,
47
+ * resolved by lib/subagent.ts. Forwarded to the server as `agentId`.
48
+ */
49
+ mnemonik_agent_id?: string;
45
50
  subagent_id?: string;
46
51
  subagent_type?: string;
47
52
  task?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAgQA,MAAM,CAAC,MAAM,cAAc,GAAG,0BAA0B,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAsQA,MAAM,CAAC,MAAM,cAAc,GAAG,0BAA0B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/cursor-hooks",
3
- "version": "0.7.201",
3
+ "version": "0.7.203",
4
4
  "description": "Cursor IDE hooks for Mnemonik memory awareness and host-side grounding gates. Hooks only: does not install skills, rules, AGENTS.md, .mnemonik.json, or MCP config.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -42,8 +42,8 @@
42
42
  ],
43
43
  "license": "SEE LICENSE IN LICENSE",
44
44
  "dependencies": {
45
- "@mnemonik/local-setup": "0.1.66",
46
- "@mnemonik/shared": "7.111.3",
47
- "@mnemonik/credentials": "0.1.66"
45
+ "@mnemonik/local-setup": "0.1.68",
46
+ "@mnemonik/shared": "7.111.5",
47
+ "@mnemonik/credentials": "0.1.68"
48
48
  }
49
49
  }