@cleocode/adapters 2026.10.21 → 2026.10.22-rc.ci.693

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.
@@ -312,6 +312,66 @@ async function syncJsonStopDispatchHook(configPath, provider, install) {
312
312
  });
313
313
  return result;
314
314
  }
315
+ var SUBAGENT_START_HOOK_ID = "cleo hook subagent-start";
316
+ function subagentStartHookObject() {
317
+ const script = `command -v cleo >/dev/null 2>&1 || exit 0; out="$(${SUBAGENT_START_HOOK_ID} --provider claude-code 2>/dev/null)"; case "$out" in "{"*) printf '%s\\n' "$out";; esac; exit 0`;
318
+ return {
319
+ type: "command",
320
+ command: `${script} ${CLEO_HOOK_MARKER}`,
321
+ timeout: HEAVY_COMMAND_HOOK_TIMEOUT_SEC
322
+ };
323
+ }
324
+ function isSubagentStartHookObject(hook) {
325
+ return isPlainObject(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${SUBAGENT_START_HOOK_ID} `);
326
+ }
327
+ function syncJsonSubagentStartHook(configPath, install) {
328
+ return syncJsonEventHook(
329
+ configPath,
330
+ "SubagentStart",
331
+ install ? subagentStartHookObject() : null,
332
+ isSubagentStartHookObject
333
+ );
334
+ }
335
+ var SESSION_END_HOOK_ID = "cleo hook session-end";
336
+ var SESSION_END_HOOK_TIMEOUT_SEC = 30;
337
+ function sessionEndHookObject() {
338
+ const script = `command -v cleo >/dev/null 2>&1 || exit 0; ${SESSION_END_HOOK_ID} --provider claude-code >/dev/null 2>&1; exit 0`;
339
+ return {
340
+ type: "command",
341
+ command: `${script} ${CLEO_HOOK_MARKER}`,
342
+ timeout: SESSION_END_HOOK_TIMEOUT_SEC
343
+ };
344
+ }
345
+ function isSessionEndHookObject(hook) {
346
+ return isPlainObject(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${SESSION_END_HOOK_ID} `);
347
+ }
348
+ function syncJsonSessionEndHook(configPath, install) {
349
+ return syncJsonEventHook(
350
+ configPath,
351
+ "SessionEnd",
352
+ install ? sessionEndHookObject() : null,
353
+ isSessionEndHookObject
354
+ );
355
+ }
356
+ async function syncJsonEventHook(configPath, event, desired, match) {
357
+ const install = desired !== null;
358
+ if (!install && !existsSync(configPath)) return "unchanged";
359
+ if (install) ensureParentDir(configPath);
360
+ let result = "unchanged";
361
+ await updateJsonConfigFile(configPath, (config) => {
362
+ if (!install && config.hooks === void 0) return false;
363
+ const hooks = hookMap(config);
364
+ const placed = placeHeavyHook(hooks, desired, event, match);
365
+ if (desired === null || placed.found) {
366
+ if (placed.changed) result = install ? "updated" : "removed";
367
+ return placed.changed;
368
+ }
369
+ appendHookEntry(hooks, event, { hooks: [desired] });
370
+ result = "installed";
371
+ return true;
372
+ });
373
+ return result;
374
+ }
315
375
  var CLAUDE_LOCAL_SETTINGS = ".claude/settings.local.json";
316
376
  var LOCAL_SETTINGS_EXCLUDE_MARKER = "# cleo-hook: keep the per-machine heavy-command hook settings out of git (T12983)";
317
377
  var HOOK_FILE_EXCLUDE_MARKER = "# cleo-hook: keep a per-machine heavy-command hook file out of git (T13124)";
@@ -745,6 +805,15 @@ async function syncStopDispatch(provider, target, mode) {
745
805
  await syncJsonStopDispatchHook(target, provider, provider === "claude-code" || mode !== "off");
746
806
  } catch {
747
807
  }
808
+ if (provider !== "claude-code") return;
809
+ try {
810
+ await syncJsonSessionEndHook(target, true);
811
+ } catch {
812
+ }
813
+ try {
814
+ await syncJsonSubagentStartHook(target, mode !== "off");
815
+ } catch {
816
+ }
748
817
  }
749
818
  async function syncProjectStopDispatch(projectDir, provider) {
750
819
  let target = heavyHookTarget(provider, projectDir);
@@ -764,8 +833,10 @@ async function syncProjectStopDispatch(projectDir, provider) {
764
833
  if (shared !== null) throw new HeavyHookSharedConfigError(target, shared);
765
834
  }
766
835
  const status = await syncJsonStopDispatchHook(target, provider, true);
767
- if (provider === "claude-code") excludeLocalSettingsFromGit(projectDir);
768
- else excludeHookFileFromGit(projectDir, CODEX_HOOKS_FILE);
836
+ if (provider === "claude-code") {
837
+ await syncJsonSessionEndHook(target, true);
838
+ excludeLocalSettingsFromGit(projectDir);
839
+ } else excludeHookFileFromGit(projectDir, CODEX_HOOKS_FILE);
769
840
  return { provider, status, target };
770
841
  } catch (err) {
771
842
  return {
@@ -840,6 +911,36 @@ async function syncProjectHeavyCommandHooks(projectDir, mode, options = {}) {
840
911
  }
841
912
  return outcomes;
842
913
  }
914
+ function companionHooks(provider, modeOff = false) {
915
+ const stop = ["Stop", stopDispatchHookObject(provider), isStopDispatchHookObject];
916
+ if (provider === "codex") return modeOff ? [] : [stop];
917
+ const end = ["SessionEnd", sessionEndHookObject(), isSessionEndHookObject];
918
+ return modeOff ? [stop, end] : [stop, end, ["SubagentStart", subagentStartHookObject(), isSubagentStartHookObject]];
919
+ }
920
+ function staleCompanion(hooks, provider, modeOff = false) {
921
+ for (const [event, desired, isMine] of companionHooks(provider, modeOff)) {
922
+ const groups = hooks[event];
923
+ const mine = (Array.isArray(groups) ? groups : []).flatMap((g) => isPlainObject(g) && Array.isArray(g.hooks) ? g.hooks : []).filter(isMine);
924
+ if (mine.length === 0) return `its ${event} hook is missing`;
925
+ if (!mine.some((h) => JSON.stringify(h) === JSON.stringify(desired))) {
926
+ return `its ${event} hook was written by another CLEO build`;
927
+ }
928
+ }
929
+ return null;
930
+ }
931
+ function offCompanionStale(file) {
932
+ let config = {};
933
+ try {
934
+ const raw = readFileSync2(file, "utf-8");
935
+ if (raw.trim() !== "") config = JSON.parse(raw);
936
+ } catch (err) {
937
+ const code = err.code;
938
+ if (code !== "ENOENT" && code !== "ENOTDIR") return null;
939
+ }
940
+ if (!isPlainObject(config)) return null;
941
+ const hooks = isPlainObject(config.hooks) ? config.hooks : {};
942
+ return staleCompanion(hooks, "claude-code", true);
943
+ }
843
944
  function jsonHookPresence(file, provider) {
844
945
  let raw;
845
946
  try {
@@ -866,7 +967,10 @@ function jsonHookPresence(file, provider) {
866
967
  if (!isPlainObject(group) || !Array.isArray(group.hooks)) continue;
867
968
  for (const hook of group.hooks) {
868
969
  if (!isHeavyHookObject(hook)) continue;
869
- if (JSON.stringify(hook) === expected) return { kind: "present", current: true };
970
+ if (JSON.stringify(hook) === expected) {
971
+ const stale = isPlainObject(hooks) ? staleCompanion(hooks, provider) : null;
972
+ return stale === null ? { kind: "present", current: true } : { kind: "present", current: false, stale };
973
+ }
870
974
  found = { kind: "present", current: false };
871
975
  }
872
976
  }
@@ -917,6 +1021,15 @@ function inspectProvider(provider, projectDir, mode, env, gitChecks) {
917
1021
  };
918
1022
  }
919
1023
  if (mode === "off") {
1024
+ const stale = provider === "claude-code" && detected ? offCompanionStale(target) : null;
1025
+ if (stale !== null) {
1026
+ return {
1027
+ ...base,
1028
+ state: "outdated",
1029
+ detail: `resources.heavyCommandHook is off, but ${stale} in ${target}`,
1030
+ remedy: `run: ${HEAVY_HOOK_FIX_COMMAND}`
1031
+ };
1032
+ }
920
1033
  return presence.kind === "present" ? {
921
1034
  ...base,
922
1035
  state: "outdated",
@@ -925,11 +1038,12 @@ function inspectProvider(provider, projectDir, mode, env, gitChecks) {
925
1038
  } : { ...base, state: "disabled", detail: "resources.heavyCommandHook is off" };
926
1039
  }
927
1040
  if (presence.kind === "present") {
928
- if (!presence.current) {
1041
+ const companionOnly = presence.stale !== void 0 && provider === "codex" && codexHooksSharedReason(projectDir, gitChecks) !== null;
1042
+ if (!presence.current && !companionOnly) {
929
1043
  return {
930
1044
  ...base,
931
1045
  state: "outdated",
932
- detail: `the hook in ${target} (or a legacy location) was written by another CLEO build`,
1046
+ detail: presence.stale !== void 0 ? `the hook in ${target} is current, but ${presence.stale}` : `the hook in ${target} (or a legacy location) was written by another CLEO build`,
933
1047
  remedy: `run: ${HEAVY_HOOK_FIX_COMMAND}`
934
1048
  };
935
1049
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/providers/shared/heavy-command-hook-delivery.ts", "../src/providers/claude-code/paths.ts", "../src/providers/shared/heavy-command-hook-install.ts", "../src/providers/shared/hook-config.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["execFileSync", "existsSync", "readFileSync", "statSync", "homedir", "dirname", "join", "realpathSync", "homedir", "dirname", "isAbsolute", "join", "resolve", "join", "homedir", "resolve", "realpathSync", "dirname", "isAbsolute", "canonical", "homedir", "join", "existsSync", "readFileSync", "shared", "dirname", "execFileSync", "statSync"]
6
6
  }
package/dist/index.js CHANGED
@@ -7447,6 +7447,31 @@ var init_operations_registry = __esm({
7447
7447
  }
7448
7448
  ]
7449
7449
  },
7450
+ // T13949 — curated lessons index (D11181)
7451
+ {
7452
+ gateway: "query",
7453
+ domain: "memory",
7454
+ operation: "lessons",
7455
+ description: "memory.lessons (query) \u2014 list current type='lesson' observations (one-line rule + why), newest first, superseded hidden",
7456
+ tier: 1,
7457
+ idempotent: true,
7458
+ sessionRequired: false,
7459
+ requiredParams: [],
7460
+ params: [
7461
+ {
7462
+ name: "scope",
7463
+ type: "string",
7464
+ required: false,
7465
+ description: "Store to read: project, global (the main brain) or all (default)"
7466
+ },
7467
+ {
7468
+ name: "limit",
7469
+ type: "number",
7470
+ required: false,
7471
+ description: "Max lessons to return (default: 50)"
7472
+ }
7473
+ ]
7474
+ },
7450
7475
  // T1006 — long-poll stream of recent brain writes (SSE-style polling stub)
7451
7476
  {
7452
7477
  gateway: "query",
@@ -13890,12 +13915,20 @@ var init_evidence_atom_schema = __esm({
13890
13915
  prAtomSchema = z9.object({
13891
13916
  kind: z9.literal("pr"),
13892
13917
  prNumber: z9.number().int().positive("pr atom requires a positive integer PR number"),
13893
- componentPrNumber: z9.number().int().positive().optional()
13918
+ componentPrNumber: z9.number().int().positive().optional(),
13919
+ /**
13920
+ * `pr:<owner>/<repo>#<n>` (T13912): the GitHub repository the PR number
13921
+ * belongs to, lowercased. Validated against the evidence git root's
13922
+ * `origin`, since PR numbers are only unique per repository.
13923
+ */
13924
+ repo: z9.string().regex(/^[a-z0-9._-]+\/[a-z0-9._-]+$/).optional()
13894
13925
  });
13895
13926
  ciAtomSchema = z9.object({
13896
13927
  kind: z9.literal("ci"),
13897
13928
  prNumber: z9.number().int().positive("ci atom requires a positive integer PR number"),
13898
- componentPrNumber: z9.number().int().positive().optional()
13929
+ componentPrNumber: z9.number().int().positive().optional(),
13930
+ /** `ci:<owner>/<repo>#<n>`, as for `pr:` (T13912). */
13931
+ repo: z9.string().regex(/^[a-z0-9._-]+\/[a-z0-9._-]+$/).optional()
13899
13932
  });
13900
13933
  locDropAtomSchema = z9.object({
13901
13934
  kind: z9.literal("loc-drop"),
@@ -15945,10 +15978,15 @@ var init_docs = __esm({
15945
15978
  version: z14.literal(1),
15946
15979
  sourceHash: z14.string().regex(/^[a-f0-9]{64}$/),
15947
15980
  graph: z14.enum(["completed", "disabled"]),
15948
- observationId: z14.string().min(1),
15981
+ /** Legacy receipts (before T13985): the "Doc attached" observation the projection wrote. */
15982
+ observationId: z14.string().min(1).optional(),
15983
+ /** T13985 (D11180): the canonical `llmtxt --documents--> owner` edge was written. */
15984
+ documents: z14.literal(true).optional(),
15949
15985
  verifiedAt: z14.string().min(1),
15950
15986
  actor: z14.string().min(1)
15951
- }).strict();
15987
+ }).strict().refine((receipt) => receipt.observationId !== void 0 || receipt.documents === true, {
15988
+ message: "A projection receipt records its documents edge or, for legacy jobs, its observation"
15989
+ });
15952
15990
  }
15953
15991
  });
15954
15992
 
@@ -45164,6 +45202,70 @@ async function syncJsonStopDispatchHook(configPath, provider, install) {
45164
45202
  });
45165
45203
  return result;
45166
45204
  }
45205
+ function subagentStartHookObject() {
45206
+ const script = `command -v cleo >/dev/null 2>&1 || exit 0; out="$(${SUBAGENT_START_HOOK_ID} --provider claude-code 2>/dev/null)"; case "$out" in "{"*) printf '%s\\n' "$out";; esac; exit 0`;
45207
+ return {
45208
+ type: "command",
45209
+ command: `${script} ${CLEO_HOOK_MARKER}`,
45210
+ timeout: HEAVY_COMMAND_HOOK_TIMEOUT_SEC
45211
+ };
45212
+ }
45213
+ function isSubagentStartHookObject(hook) {
45214
+ return isPlainObject2(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${SUBAGENT_START_HOOK_ID} `);
45215
+ }
45216
+ function syncJsonSubagentStartHook(configPath, install) {
45217
+ return syncJsonEventHook(
45218
+ configPath,
45219
+ "SubagentStart",
45220
+ install ? subagentStartHookObject() : null,
45221
+ isSubagentStartHookObject
45222
+ );
45223
+ }
45224
+ function sessionEndHookObject() {
45225
+ const script = `command -v cleo >/dev/null 2>&1 || exit 0; ${SESSION_END_HOOK_ID} --provider claude-code >/dev/null 2>&1; exit 0`;
45226
+ return {
45227
+ type: "command",
45228
+ command: `${script} ${CLEO_HOOK_MARKER}`,
45229
+ timeout: SESSION_END_HOOK_TIMEOUT_SEC
45230
+ };
45231
+ }
45232
+ function isSessionEndHookObject(hook) {
45233
+ return isPlainObject2(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${SESSION_END_HOOK_ID} `);
45234
+ }
45235
+ function applySessionEndHook(hooks, install) {
45236
+ const desired = install ? sessionEndHookObject() : null;
45237
+ const placed = placeHeavyHook(hooks, desired, "SessionEnd", isSessionEndHookObject);
45238
+ if (desired === null || placed.found) return placed.changed;
45239
+ appendHookEntry(hooks, "SessionEnd", { hooks: [desired] });
45240
+ return true;
45241
+ }
45242
+ function syncJsonSessionEndHook(configPath, install) {
45243
+ return syncJsonEventHook(
45244
+ configPath,
45245
+ "SessionEnd",
45246
+ install ? sessionEndHookObject() : null,
45247
+ isSessionEndHookObject
45248
+ );
45249
+ }
45250
+ async function syncJsonEventHook(configPath, event, desired, match) {
45251
+ const install = desired !== null;
45252
+ if (!install && !existsSync3(configPath)) return "unchanged";
45253
+ if (install) ensureParentDir(configPath);
45254
+ let result = "unchanged";
45255
+ await updateJsonConfigFile(configPath, (config2) => {
45256
+ if (!install && config2.hooks === void 0) return false;
45257
+ const hooks = hookMap(config2);
45258
+ const placed = placeHeavyHook(hooks, desired, event, match);
45259
+ if (desired === null || placed.found) {
45260
+ if (placed.changed) result = install ? "updated" : "removed";
45261
+ return placed.changed;
45262
+ }
45263
+ appendHookEntry(hooks, event, { hooks: [desired] });
45264
+ result = "installed";
45265
+ return true;
45266
+ });
45267
+ return result;
45268
+ }
45167
45269
  function gitOutput(projectDir, args, env = process.env) {
45168
45270
  try {
45169
45271
  return execFileSync("git", ["-C", projectDir, ...args], {
@@ -45434,7 +45536,7 @@ function syncOpencodeHeavyCommandPlugin(projectDir, mode) {
45434
45536
  excludeHookFileFromGit(projectDir, OPENCODE_PLUGIN_FILE);
45435
45537
  return current ? "unchanged" : exists ? "updated" : "installed";
45436
45538
  }
45437
- var HEAVY_COMMAND_HOOK_ID, HEAVY_COMMAND_HOOK_TIMEOUT_SEC, OPENCODE_HEAVY_COMMAND_PLUGIN, HEAVY_TOOL_WORDS, HeavyHookPathBlockedError, OLDER_CLEO_HOOK_ANSWER, OLDER_CLEO_MARKER_PREFIX, ASK_ENFORCE_HOOK_ID, STOP_DISPATCH_HOOK_ID, STOP_DISPATCH_HOOK_TIMEOUT_SEC, LEGACY_SESSION_END_STOP_COMMAND, CLAUDE_LOCAL_SETTINGS, LOCAL_SETTINGS_EXCLUDE_MARKER, HOOK_FILE_EXCLUDE_MARKER, CODEX_HOOKS_FILE, OPENCODE_PLUGIN_FILE, HeavyHookSharedConfigError;
45539
+ var HEAVY_COMMAND_HOOK_ID, HEAVY_COMMAND_HOOK_TIMEOUT_SEC, OPENCODE_HEAVY_COMMAND_PLUGIN, HEAVY_TOOL_WORDS, HeavyHookPathBlockedError, OLDER_CLEO_HOOK_ANSWER, OLDER_CLEO_MARKER_PREFIX, ASK_ENFORCE_HOOK_ID, STOP_DISPATCH_HOOK_ID, STOP_DISPATCH_HOOK_TIMEOUT_SEC, LEGACY_SESSION_END_STOP_COMMAND, SUBAGENT_START_HOOK_ID, SESSION_END_HOOK_ID, SESSION_END_HOOK_TIMEOUT_SEC, CLAUDE_LOCAL_SETTINGS, LOCAL_SETTINGS_EXCLUDE_MARKER, HOOK_FILE_EXCLUDE_MARKER, CODEX_HOOKS_FILE, OPENCODE_PLUGIN_FILE, HeavyHookSharedConfigError;
45438
45540
  var init_heavy_command_hook_install = __esm({
45439
45541
  "packages/adapters/src/providers/shared/heavy-command-hook-install.ts"() {
45440
45542
  "use strict";
@@ -45498,6 +45600,9 @@ var init_heavy_command_hook_install = __esm({
45498
45600
  STOP_DISPATCH_HOOK_ID = "cleo hook stop";
45499
45601
  STOP_DISPATCH_HOOK_TIMEOUT_SEC = 120;
45500
45602
  LEGACY_SESSION_END_STOP_COMMAND = "cleo session end --quiet # cleo-hook";
45603
+ SUBAGENT_START_HOOK_ID = "cleo hook subagent-start";
45604
+ SESSION_END_HOOK_ID = "cleo hook session-end";
45605
+ SESSION_END_HOOK_TIMEOUT_SEC = 30;
45501
45606
  CLAUDE_LOCAL_SETTINGS = ".claude/settings.local.json";
45502
45607
  LOCAL_SETTINGS_EXCLUDE_MARKER = "# cleo-hook: keep the per-machine heavy-command hook settings out of git (T12983)";
45503
45608
  HOOK_FILE_EXCLUDE_MARKER = "# cleo-hook: keep a per-machine heavy-command hook file out of git (T13124)";
@@ -45777,18 +45882,20 @@ function removeNativeHooks(hooks) {
45777
45882
  }
45778
45883
  return changed;
45779
45884
  }
45780
- var NATIVE_STOP_HOOK_COMMAND, LEGACY_NATIVE_STOP_HOOK_COMMAND, NATIVE_OBSERVE_HOOK_COMMAND, NATIVE_NEXUS_HOOK_COMMAND, NATIVE_HOOK_COMMANDS, PROVIDER_ID, CLAUDE_CODE_EVENT_MAP, ClaudeCodeHookProvider;
45885
+ var NATIVE_STOP_HOOK_COMMAND, NATIVE_SESSION_END_HOOK_COMMAND, LEGACY_NATIVE_STOP_HOOK_COMMAND, NATIVE_OBSERVE_HOOK_COMMAND, NATIVE_NEXUS_HOOK_COMMAND, NATIVE_HOOK_COMMANDS, PROVIDER_ID, CLAUDE_CODE_EVENT_MAP, ClaudeCodeHookProvider;
45781
45886
  var init_hooks = __esm({
45782
45887
  "packages/adapters/src/providers/claude-code/hooks.ts"() {
45783
45888
  "use strict";
45784
45889
  init_heavy_command_hook_install();
45785
45890
  init_paths();
45786
45891
  NATIVE_STOP_HOOK_COMMAND = String(stopDispatchHookObject("claude-code").command);
45892
+ NATIVE_SESSION_END_HOOK_COMMAND = String(sessionEndHookObject().command);
45787
45893
  LEGACY_NATIVE_STOP_HOOK_COMMAND = LEGACY_SESSION_END_STOP_COMMAND;
45788
45894
  NATIVE_OBSERVE_HOOK_COMMAND = 'cleo observe "File modified via $TOOL_NAME" --title "tool-use" --quiet # cleo-hook';
45789
45895
  NATIVE_NEXUS_HOOK_COMMAND = 'cleo nexus analyze --incremental --json > /dev/null 2>&1 && cleo observe "NEXUS re-indexed after $TOOL_NAME on $TOOL_INPUT_file_path" --title "nexus-post-check" --quiet # cleo-hook';
45790
45896
  NATIVE_HOOK_COMMANDS = /* @__PURE__ */ new Set([
45791
45897
  NATIVE_STOP_HOOK_COMMAND,
45898
+ NATIVE_SESSION_END_HOOK_COMMAND,
45792
45899
  LEGACY_NATIVE_STOP_HOOK_COMMAND,
45793
45900
  NATIVE_OBSERVE_HOOK_COMMAND,
45794
45901
  NATIVE_NEXUS_HOOK_COMMAND
@@ -45831,8 +45938,9 @@ var init_hooks = __esm({
45831
45938
  * Idempotent: skips writing if the native hooks are already present.
45832
45939
  *
45833
45940
  * Hook entries registered:
45834
- * - `Stop` → `cleo hook stop` (the goal runtime first, then `cleo session end`,
45835
- * which triggers LLM extraction, reflector, consolidation; T13796)
45941
+ * - `Stop` → `cleo hook stop` (the goal runtime first, then ask-enforce; T13796)
45942
+ * - `SessionEnd` → `cleo hook session-end` (`cleo session end`, which triggers
45943
+ * LLM extraction, reflector, consolidation; T13913: never per turn)
45836
45944
  * - `PostToolUse` (Write|Edit) → brain observation for file modifications
45837
45945
  * and the NEXUS post-check
45838
45946
  *
@@ -45846,7 +45954,8 @@ var init_hooks = __esm({
45846
45954
  const hooks = hookMap(settings);
45847
45955
  const fresh = !hasNativeHooks(hooks) && !holdsHook(hooks, isStopDispatchHookObject);
45848
45956
  const stopChanged = applyStopDispatch(hooks, "claude-code", true);
45849
- if (!fresh) return stopChanged;
45957
+ const endChanged = applySessionEndHook(hooks, true);
45958
+ if (!fresh) return stopChanged || endChanged;
45850
45959
  appendHookEntry(hooks, "PostToolUse", {
45851
45960
  matcher: "Write|Edit",
45852
45961
  hooks: [
@@ -50152,6 +50261,15 @@ async function syncStopDispatch(provider, target, mode) {
50152
50261
  await syncJsonStopDispatchHook(target, provider, provider === "claude-code" || mode !== "off");
50153
50262
  } catch {
50154
50263
  }
50264
+ if (provider !== "claude-code") return;
50265
+ try {
50266
+ await syncJsonSessionEndHook(target, true);
50267
+ } catch {
50268
+ }
50269
+ try {
50270
+ await syncJsonSubagentStartHook(target, mode !== "off");
50271
+ } catch {
50272
+ }
50155
50273
  }
50156
50274
  async function syncProjectStopDispatch(projectDir, provider) {
50157
50275
  let target = heavyHookTarget(provider, projectDir);
@@ -50171,8 +50289,10 @@ async function syncProjectStopDispatch(projectDir, provider) {
50171
50289
  if (shared !== null) throw new HeavyHookSharedConfigError(target, shared);
50172
50290
  }
50173
50291
  const status = await syncJsonStopDispatchHook(target, provider, true);
50174
- if (provider === "claude-code") excludeLocalSettingsFromGit(projectDir);
50175
- else excludeHookFileFromGit(projectDir, CODEX_HOOKS_FILE);
50292
+ if (provider === "claude-code") {
50293
+ await syncJsonSessionEndHook(target, true);
50294
+ excludeLocalSettingsFromGit(projectDir);
50295
+ } else excludeHookFileFromGit(projectDir, CODEX_HOOKS_FILE);
50176
50296
  return { provider, status, target };
50177
50297
  } catch (err) {
50178
50298
  return {
@@ -50247,6 +50367,36 @@ async function syncProjectHeavyCommandHooks(projectDir, mode, options = {}) {
50247
50367
  }
50248
50368
  return outcomes;
50249
50369
  }
50370
+ function companionHooks(provider, modeOff = false) {
50371
+ const stop = ["Stop", stopDispatchHookObject(provider), isStopDispatchHookObject];
50372
+ if (provider === "codex") return modeOff ? [] : [stop];
50373
+ const end = ["SessionEnd", sessionEndHookObject(), isSessionEndHookObject];
50374
+ return modeOff ? [stop, end] : [stop, end, ["SubagentStart", subagentStartHookObject(), isSubagentStartHookObject]];
50375
+ }
50376
+ function staleCompanion(hooks, provider, modeOff = false) {
50377
+ for (const [event, desired, isMine] of companionHooks(provider, modeOff)) {
50378
+ const groups = hooks[event];
50379
+ const mine = (Array.isArray(groups) ? groups : []).flatMap((g) => isPlainObject2(g) && Array.isArray(g.hooks) ? g.hooks : []).filter(isMine);
50380
+ if (mine.length === 0) return `its ${event} hook is missing`;
50381
+ if (!mine.some((h) => JSON.stringify(h) === JSON.stringify(desired))) {
50382
+ return `its ${event} hook was written by another CLEO build`;
50383
+ }
50384
+ }
50385
+ return null;
50386
+ }
50387
+ function offCompanionStale(file2) {
50388
+ let config2 = {};
50389
+ try {
50390
+ const raw = readFileSync12(file2, "utf-8");
50391
+ if (raw.trim() !== "") config2 = JSON.parse(raw);
50392
+ } catch (err) {
50393
+ const code = err.code;
50394
+ if (code !== "ENOENT" && code !== "ENOTDIR") return null;
50395
+ }
50396
+ if (!isPlainObject2(config2)) return null;
50397
+ const hooks = isPlainObject2(config2.hooks) ? config2.hooks : {};
50398
+ return staleCompanion(hooks, "claude-code", true);
50399
+ }
50250
50400
  function jsonHookPresence(file2, provider) {
50251
50401
  let raw;
50252
50402
  try {
@@ -50273,7 +50423,10 @@ function jsonHookPresence(file2, provider) {
50273
50423
  if (!isPlainObject2(group) || !Array.isArray(group.hooks)) continue;
50274
50424
  for (const hook of group.hooks) {
50275
50425
  if (!isHeavyHookObject(hook)) continue;
50276
- if (JSON.stringify(hook) === expected) return { kind: "present", current: true };
50426
+ if (JSON.stringify(hook) === expected) {
50427
+ const stale = isPlainObject2(hooks) ? staleCompanion(hooks, provider) : null;
50428
+ return stale === null ? { kind: "present", current: true } : { kind: "present", current: false, stale };
50429
+ }
50277
50430
  found = { kind: "present", current: false };
50278
50431
  }
50279
50432
  }
@@ -50324,6 +50477,15 @@ function inspectProvider(provider, projectDir, mode, env, gitChecks) {
50324
50477
  };
50325
50478
  }
50326
50479
  if (mode === "off") {
50480
+ const stale = provider === "claude-code" && detected ? offCompanionStale(target) : null;
50481
+ if (stale !== null) {
50482
+ return {
50483
+ ...base,
50484
+ state: "outdated",
50485
+ detail: `resources.heavyCommandHook is off, but ${stale} in ${target}`,
50486
+ remedy: `run: ${HEAVY_HOOK_FIX_COMMAND}`
50487
+ };
50488
+ }
50327
50489
  return presence.kind === "present" ? {
50328
50490
  ...base,
50329
50491
  state: "outdated",
@@ -50332,11 +50494,12 @@ function inspectProvider(provider, projectDir, mode, env, gitChecks) {
50332
50494
  } : { ...base, state: "disabled", detail: "resources.heavyCommandHook is off" };
50333
50495
  }
50334
50496
  if (presence.kind === "present") {
50335
- if (!presence.current) {
50497
+ const companionOnly = presence.stale !== void 0 && provider === "codex" && codexHooksSharedReason(projectDir, gitChecks) !== null;
50498
+ if (!presence.current && !companionOnly) {
50336
50499
  return {
50337
50500
  ...base,
50338
50501
  state: "outdated",
50339
- detail: `the hook in ${target} (or a legacy location) was written by another CLEO build`,
50502
+ detail: presence.stale !== void 0 ? `the hook in ${target} is current, but ${presence.stale}` : `the hook in ${target} (or a legacy location) was written by another CLEO build`,
50340
50503
  remedy: `run: ${HEAVY_HOOK_FIX_COMMAND}`
50341
50504
  };
50342
50505
  }