@mnemonik/codex-hooks 0.8.372 → 0.8.374

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
@@ -4,7 +4,7 @@ import { existsSync } from 'node:fs';
4
4
  import { isAbsolute, resolve as resolvePath } from 'node:path';
5
5
  import { stdout, stderr, exit } from 'node:process';
6
6
  import { extractToolFileTargets } from './lib/applyPatch.js';
7
- import { additionalContext, composeCodexContextItems, denyPreToolUse, fitCodexContextItems, guardMcpPrecheckAdditionalContext, identifiedContextItems, preToolUseAdditionalContext, renderVisibleMnemonikText, systemMessage, } from './lib/codexOutput.js';
7
+ import { additionalContext, CODEX_COMPOSED_CONTEXT_BUDGET_BYTES, composeCodexContextItems, denyPreToolUse, fitCodexContextItems, guardMcpPrecheckAdditionalContext, identifiedContextItems, preToolUseAdditionalContext, renderVisibleMnemonikText, systemMessage, } from './lib/codexOutput.js';
8
8
  import { isNonInteractive, parseBypass, resolveConfig } from './lib/env.js';
9
9
  import { PROMPT_CONTEXT, PRE_EDIT_GATE, PRE_MCP_GATE, CHECKPOINT_PRESSURE, } from './lib/behavior.js';
10
10
  import { fetchAmbient, fetchInjections as fetchInjectionsHttp, fetchJit, fetchMcpRecord, fetchMcpPrecheck, postAfterthought, reportBypass, sendEditReport, createPreCompactSnapshot, postProxySuppressionClear, postSessionEnd, receivedJitInjections, } from './lib/http.js';
@@ -15,7 +15,7 @@ import { startAutomaticUpdateForSession } from '@mnemonik/local-setup/automatic-
15
15
  import { sessionStateFilePath, sweepStaleSessionDirs, removeSessionState, } from './lib/sessionState.js';
16
16
  import { stateSessionId, subagentId } from './lib/subagent.js';
17
17
  import { findProjectIdentity, projectScope, modelTypedCwd, readHookStdin, startHookTrace, validHookSessionId, GATE_OUTBOX_FILE, queueGateEvent, } from '@mnemonik/shared/hook-runtime';
18
- import { REFLEX_NOTE_BUDGET_BYTES } from '@mnemonik/shared/context-budget';
18
+ import { REFLEX_NOTE_BUDGET_BYTES, projectContextRetrievalRoute, } from '@mnemonik/shared/context-budget';
19
19
  import { isMnemonikToolName, isTrustedMnemonikToolName, mnemonikToolMethod, } from './lib/mnemonikTool.js';
20
20
  import { persistJitDeliveryRef, readPendingJitDeliveryRefs, } from '@mnemonik/shared/jit-delivery-ack';
21
21
  import { HOOK_VERSION } from './lib/version.js';
@@ -64,9 +64,10 @@ function writeAllow() {
64
64
  }
65
65
  function injectionItems(injection) {
66
66
  const text = renderVisibleMnemonikText(injection.envelope);
67
- return injection.signal === 'reflex_recall'
68
- ? identifiedContextItems(text, injection.signal)
69
- : [{ text, name: injection.signal }];
67
+ if (injection.signal === 'reflex_recall')
68
+ return identifiedContextItems(text, injection.signal);
69
+ const retrievalRoute = projectContextRetrievalRoute(text);
70
+ return [{ text, name: injection.signal, ...(retrievalRoute ? { retrievalRoute } : {}) }];
70
71
  }
71
72
  function boundedInjectionItems(injection, maxBytes) {
72
73
  const items = injectionItems(injection);
@@ -92,9 +93,39 @@ function boundedInjectionItems(injection, maxBytes) {
92
93
  * this host shows it (HOST_EVENT_RENDERS_JIT).
93
94
  */
94
95
  function jitItems(injections) {
96
+ // Bounded by the whole composed budget, not a slot of its own: three
97
+ // survivors run past 4,000 bytes, and an envelope over its bound is dropped
98
+ // whole while the recall behind it is delivered.
95
99
  return injections
96
100
  .filter((injection) => injection.signal === 'jit_required')
97
- .flatMap((injection) => boundedInjectionItems(injection, 4_000));
101
+ .flatMap((injection) => boundedInjectionItems(injection, CODEX_COMPOSED_CONTEXT_BUDGET_BYTES));
102
+ }
103
+ /**
104
+ * A prompt-boundary event's items in priority order, highest first: the
105
+ * digest, the machine-health warning, JIT, the other injections (nudges and
106
+ * directives), then recall (the drained recall envelope, then ambient). The
107
+ * fitter sheds from the end, so passive recall goes before anything an agent
108
+ * must act on, and every recalled memory is its own item with its pointer.
109
+ * `pinned` counts the leading digest items, which are never shed.
110
+ */
111
+ function promptContextItems(injections, jit, ambient) {
112
+ const rank = (signal) => signal === 'session_bootstrap_required'
113
+ ? 0
114
+ : signal === 'health_nag'
115
+ ? 1
116
+ : signal === 'reflex_recall'
117
+ ? 3
118
+ : 2;
119
+ const rendered = injections.map((inj) => ({
120
+ rank: rank(inj.signal),
121
+ items: injectionItems(inj),
122
+ }));
123
+ const of = (wanted) => rendered.filter((entry) => entry.rank === wanted).flatMap((entry) => entry.items);
124
+ const digest = of(0);
125
+ return {
126
+ pinned: digest.length,
127
+ items: [...digest, ...of(1), ...jit, ...of(2), ...of(3), ...ambient],
128
+ };
98
129
  }
99
130
  /** No session id and no turn id: nothing durable may be keyed to this call. */
100
131
  const UNKNOWN_SESSION = 'codex-unknown-session';
@@ -259,45 +290,51 @@ async function handleContextEvent(input, config) {
259
290
  jitPromise,
260
291
  ambientPromise,
261
292
  ]);
262
- const additionalPieces = [];
263
293
  const systemPieces = [];
294
+ const additional = renderableInjections(injectionsResp).filter((inj) => {
295
+ if (inj.deliveryHint !== 'system_message')
296
+ return true;
297
+ systemPieces.push(...identifiedContextItems(renderVisibleMnemonikText(inj.envelope), inj.signal));
298
+ return false;
299
+ });
264
300
  let renderedJit = null;
265
- // JIT directive comes before passive nudges — the authoritative surfaced
266
- // fact anchors before any advisory recall the agent reads top-down.
301
+ const jitPieces = [];
267
302
  if (jitResp &&
268
303
  jitResp.envelope &&
269
304
  (!jitResp.deliveryRef || !persistedJitRefsAtTurnStart.has(jitResp.deliveryRef))) {
270
305
  renderedJit = renderVisibleMnemonikText(jitResp.envelope);
271
- additionalPieces.push(...identifiedContextItems(renderedJit, 'jit_required', jitResp.memoryIds));
272
- }
273
- for (const inj of renderableInjections(injectionsResp)) {
274
- if (inj.deliveryHint === 'system_message') {
275
- systemPieces.push(...identifiedContextItems(renderVisibleMnemonikText(inj.envelope), inj.signal));
276
- }
277
- else {
278
- additionalPieces.push(...identifiedContextItems(renderVisibleMnemonikText(inj.envelope), inj.signal));
279
- }
306
+ jitPieces.push(...identifiedContextItems(renderedJit, 'jit_required', jitResp.memoryIds));
280
307
  }
281
308
  // Ambient last — passive recall reads below the load-bearing signals. Must
282
309
  // land BEFORE the empty-check below, or a turn carrying only ambient would
283
310
  // writeAllow() and silently drop it.
284
- if (ambientResp && ambientResp.envelope) {
285
- additionalPieces.push(...identifiedContextItems(renderVisibleMnemonikText(ambientResp.envelope), 'ambient_recall', ambientResp.memoryIds));
286
- }
311
+ const ambientPieces = ambientResp && ambientResp.envelope
312
+ ? identifiedContextItems(renderVisibleMnemonikText(ambientResp.envelope), 'ambient_recall', ambientResp.memoryIds)
313
+ : [];
314
+ const { pinned, items: additionalPieces } = promptContextItems(additional, jitPieces, ambientPieces);
287
315
  const signedMarker = conversationMarker();
288
- if (signedMarker)
289
- additionalPieces.push({ text: signedMarker, name: 'conversation identity' });
290
- if (additionalPieces.length === 0 && systemPieces.length === 0)
316
+ const suffix = signedMarker
317
+ ? [{ text: signedMarker, name: 'conversation identity' }]
318
+ : [];
319
+ if (additionalPieces.length === 0 && systemPieces.length === 0 && suffix.length === 0) {
291
320
  writeAllow();
321
+ }
292
322
  // Codex protocol: render systemMessage when available (SessionStart
293
323
  // primary); otherwise additionalContext. If both are present, the
294
324
  // additionalContext channel carries them (codex protocol exposes one
295
325
  // payload per hook decision).
296
- if (systemPieces.length > 0 && additionalPieces.length === 0) {
297
- writeOutput(systemMessage(composeCodexContextItems(systemPieces)));
326
+ if (systemPieces.length > 0 && additionalPieces.length === 0 && suffix.length === 0) {
327
+ writeOutput(systemMessage(systemPieces.map((item) => item.text).join('\n\n')));
298
328
  }
299
329
  else {
300
- const combined = composeCodexContextItems([...systemPieces, ...additionalPieces]);
330
+ // System pieces follow the digest, ahead of JIT; the whole value is fitted
331
+ // under Codex's default spill threshold, recall shedding first.
332
+ const ordered = [
333
+ ...additionalPieces.slice(0, pinned),
334
+ ...systemPieces,
335
+ ...additionalPieces.slice(pinned),
336
+ ];
337
+ const combined = composeCodexContextItems(ordered, { pinned, suffix });
301
338
  if (jitResp?.deliveryRef &&
302
339
  renderedJit &&
303
340
  combined.includes(renderedJit) &&
@@ -338,13 +375,14 @@ async function handleSubagentStart(input, config) {
338
375
  }
339
376
  })(),
340
377
  });
341
- const items = (resp?.ok ? resp.injections : []).flatMap((inj) => identifiedContextItems(renderVisibleMnemonikText(inj.envelope), inj.signal));
378
+ const { pinned, items } = promptContextItems(resp?.ok ? resp.injections : [], [], []);
342
379
  const signedMarker = conversationMarker();
343
- if (signedMarker)
344
- items.push({ text: signedMarker, name: 'conversation identity' });
345
- if (items.length === 0)
380
+ const suffix = signedMarker
381
+ ? [{ text: signedMarker, name: 'conversation identity' }]
382
+ : [];
383
+ if (items.length === 0 && suffix.length === 0)
346
384
  writeAllow();
347
- writeOutput(additionalContext('SubagentStart', composeCodexContextItems(items)));
385
+ writeOutput(additionalContext('SubagentStart', composeCodexContextItems(items, { pinned, suffix })));
348
386
  }
349
387
  async function handlePreEdit(input, config) {
350
388
  const mode = PRE_EDIT_GATE;
@@ -823,23 +861,24 @@ async function handlePostTool(input, config) {
823
861
  ? (injectionsResp.injections.find((inj) => inj.signal === 'checkpoint_required') ??
824
862
  injectionsResp.injections.find((inj) => inj.signal === 'needs_checkpoint'))
825
863
  : undefined;
864
+ // Checkpoint, then JIT, then recall: each bounded on its own, then the
865
+ // whole value fitted under Codex's default spill threshold, recall
866
+ // shedding first with its pointers.
826
867
  const visible = [];
827
868
  if (checkpoint && CHECKPOINT_PRESSURE !== 'off') {
828
- visible.push(fitCodexContextItems(identifiedContextItems(renderVisibleMnemonikText(checkpoint.envelope), checkpoint.signal), 4_000));
869
+ visible.push(...boundedInjectionItems(checkpoint, 4_000));
829
870
  }
830
- const jit = jitItems(injectionsResp?.ok && Array.isArray(injectionsResp.injections)
871
+ visible.push(...jitItems(injectionsResp?.ok && Array.isArray(injectionsResp.injections)
831
872
  ? injectionsResp.injections
832
- : []);
833
- if (jit.length > 0)
834
- visible.push(fitCodexContextItems(jit, 4_000));
873
+ : []));
835
874
  const reflexNotes = injectionsResp?.ok && Array.isArray(injectionsResp.injections)
836
875
  ? injectionsResp.injections.filter((inj) => inj.signal === 'reflex_recall')
837
876
  : [];
838
877
  for (const note of reflexNotes) {
839
- visible.push(fitCodexContextItems(identifiedContextItems(renderVisibleMnemonikText(note.envelope), note.signal), REFLEX_NOTE_BUDGET_BYTES.codex));
878
+ visible.push(...boundedInjectionItems(note, REFLEX_NOTE_BUDGET_BYTES.codex));
840
879
  }
841
880
  if (visible.length > 0) {
842
- writeOutput(additionalContext(input.hook_event_name, visible.join('\n\n')));
881
+ writeOutput(additionalContext(input.hook_event_name, composeCodexContextItems(visible)));
843
882
  }
844
883
  }
845
884
  writeAllow();
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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"}
@@ -18,6 +18,35 @@ export declare function continueStop(reason: string): CodexHookOutput;
18
18
  export declare function identifiedContextItems(text: string, envelopeName: string, memoryIds?: readonly string[]): ContextBudgetItem[];
19
19
  /** Fit one Codex envelope by complete natural units and explicit identities. */
20
20
  export declare function fitCodexContextItems(items: readonly ContextBudgetItem[], maxBytes?: number): string;
21
- /** Compose already-identified prompt/session items without inventing a total cap. */
22
- export declare function composeCodexContextItems(items: readonly ContextBudgetItem[]): string;
21
+ /**
22
+ * Codex's default spill threshold for one handler's `additionalContext`, in
23
+ * UTF-8 bytes. Codex estimates tokens as ceil(UTF-8 bytes / 4)
24
+ * (codex-rs utils/string/src/truncate.rs `approx_token_count`) and spills the
25
+ * value to a file, leaving a head-and-tail preview, only when that estimate
26
+ * exceeds 2,500 (hooks/src/output_spill.rs `DEFAULT_HOOK_OUTPUT_TOKEN_LIMIT`,
27
+ * rust-v0.129.0 through v0.166.0). Each handler's value is measured alone,
28
+ * before Codex wraps it. The installer lifts the limit on PreToolUse only, so
29
+ * SessionStart, UserPromptSubmit, SubagentStart and PostToolUse run at it.
30
+ */
31
+ export declare const CODEX_DEFAULT_CONTEXT_LIMIT_BYTES: number;
32
+ /**
33
+ * What Mnemonik composes on a default-limit event: 5% under the threshold, so
34
+ * a change in how Codex estimates leaves room before anything spills.
35
+ */
36
+ export declare const CODEX_COMPOSED_CONTEXT_BUDGET_BYTES = 9500;
37
+ /** Codex's own token estimate for a hook value. */
38
+ export declare function codexEstimatedTokens(text: string): number;
39
+ /**
40
+ * Compose a default-limit event's items within CODEX_COMPOSED_CONTEXT_BUDGET_BYTES.
41
+ * Items come highest priority first; the fitter keeps whole items in order and
42
+ * sheds the rest from the end, each shed memory named by its `memory_get`
43
+ * pointer. `suffix` (the conversation marker) is always kept. The leading
44
+ * `pinned` items (the digest) are never shed: a digest larger than the budget,
45
+ * which only a server rendering for another host sends, keeps its place and
46
+ * every later item is shed with its pointer.
47
+ */
48
+ export declare function composeCodexContextItems(items: readonly ContextBudgetItem[], opts?: {
49
+ pinned?: number;
50
+ suffix?: readonly ContextBudgetItem[];
51
+ }): string;
23
52
  export declare function renderVisibleMnemonikText(text: string): string;
@@ -1,5 +1,5 @@
1
1
  import { stderr } from 'node:process';
2
- import { contextItemsFromText, fitContextItems, isBootstrapDigestPayload, } from '@mnemonik/shared/context-budget';
2
+ import { contextItemsFromText, fitContextItems, isBootstrapDigestPayload, measureContext, } from '@mnemonik/shared/context-budget';
3
3
  export const PRE_TOOL_ADDITIONAL_CONTEXT_MAX_BYTES = 70_000;
4
4
  export const MCP_PRECHECK_ADDITIONAL_CONTEXT_MAX_BYTES = 4_000;
5
5
  export const PRE_TOOL_CONTEXT_OMITTED_NOTICE = 'Context for this tool call was left out because it exceeded the hook size limit. The tool call was not blocked.';
@@ -66,9 +66,48 @@ export function identifiedContextItems(text, envelopeName, memoryIds = []) {
66
66
  export function fitCodexContextItems(items, maxBytes = 12_000) {
67
67
  return fitContextItems(items, { budget: maxBytes, units: 'utf8-bytes' }).value;
68
68
  }
69
- /** Compose already-identified prompt/session items without inventing a total cap. */
70
- export function composeCodexContextItems(items) {
71
- return items.map((item) => item.text).join('\n\n');
69
+ /**
70
+ * Codex's default spill threshold for one handler's `additionalContext`, in
71
+ * UTF-8 bytes. Codex estimates tokens as ceil(UTF-8 bytes / 4)
72
+ * (codex-rs utils/string/src/truncate.rs `approx_token_count`) and spills the
73
+ * value to a file, leaving a head-and-tail preview, only when that estimate
74
+ * exceeds 2,500 (hooks/src/output_spill.rs `DEFAULT_HOOK_OUTPUT_TOKEN_LIMIT`,
75
+ * rust-v0.129.0 through v0.166.0). Each handler's value is measured alone,
76
+ * before Codex wraps it. The installer lifts the limit on PreToolUse only, so
77
+ * SessionStart, UserPromptSubmit, SubagentStart and PostToolUse run at it.
78
+ */
79
+ export const CODEX_DEFAULT_CONTEXT_LIMIT_BYTES = 2_500 * 4;
80
+ /**
81
+ * What Mnemonik composes on a default-limit event: 5% under the threshold, so
82
+ * a change in how Codex estimates leaves room before anything spills.
83
+ */
84
+ export const CODEX_COMPOSED_CONTEXT_BUDGET_BYTES = 9_500;
85
+ /** Codex's own token estimate for a hook value. */
86
+ export function codexEstimatedTokens(text) {
87
+ return Math.ceil(Buffer.byteLength(text, 'utf8') / 4);
88
+ }
89
+ function itemIds(item) {
90
+ if (item.memoryIds && item.memoryIds.length > 0)
91
+ return item.memoryIds;
92
+ return item.memoryId ? [item.memoryId] : [];
93
+ }
94
+ /**
95
+ * Compose a default-limit event's items within CODEX_COMPOSED_CONTEXT_BUDGET_BYTES.
96
+ * Items come highest priority first; the fitter keeps whole items in order and
97
+ * sheds the rest from the end, each shed memory named by its `memory_get`
98
+ * pointer. `suffix` (the conversation marker) is always kept. The leading
99
+ * `pinned` items (the digest) are never shed: a digest larger than the budget,
100
+ * which only a server rendering for another host sends, keeps its place and
101
+ * every later item is shed with its pointer.
102
+ */
103
+ export function composeCodexContextItems(items, opts = {}) {
104
+ const suffix = opts.suffix ?? [];
105
+ const pinned = items.slice(0, opts.pinned ?? 0);
106
+ const pinnedBytes = measureContext([...pinned, ...suffix].map((item) => item.text).join('\n\n'), 'utf8-bytes');
107
+ // Room for the not-reached pointer naming every later memory.
108
+ const pointerBytes = 64 + items.slice(pinned.length).reduce((sum, item) => sum + 50 * itemIds(item).length, 0);
109
+ const budget = Math.max(CODEX_COMPOSED_CONTEXT_BUDGET_BYTES, pinnedBytes + pointerBytes);
110
+ return fitContextItems(items, { budget, units: 'utf8-bytes', reservedSuffix: suffix }).value;
72
111
  }
73
112
  function decodeXmlEntities(text) {
74
113
  return text
@@ -1 +1 @@
1
- {"version":3,"file":"codexOutput.js","sourceRoot":"","sources":["../../src/lib/codexOutput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codexOutput.js","sourceRoot":"","sources":["../../src/lib/codexOutput.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/codex-hooks",
3
- "version": "0.8.372",
3
+ "version": "0.8.374",
4
4
  "description": "Codex lifecycle 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",
@@ -41,8 +41,8 @@
41
41
  ],
42
42
  "license": "SEE LICENSE IN LICENSE",
43
43
  "dependencies": {
44
- "@mnemonik/local-setup": "0.1.224",
45
- "@mnemonik/shared": "7.167.0",
46
- "@mnemonik/credentials": "0.1.224"
44
+ "@mnemonik/local-setup": "0.1.226",
45
+ "@mnemonik/shared": "7.167.2",
46
+ "@mnemonik/credentials": "0.1.226"
47
47
  }
48
48
  }