@mnemonik/claude-code-hooks 0.9.46 → 0.9.48
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.
|
@@ -1,24 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { type ContextBudgetPiece } from '@mnemonik/shared/context-budget';
|
|
2
|
+
export * from '@mnemonik/shared/context-budget';
|
|
3
3
|
/** Claude Code's per-value inline `additionalContext` cap. */
|
|
4
4
|
export declare const CLAUDE_INLINE_CONTEXT_CAP_CHARS = 10000;
|
|
5
|
-
/**
|
|
5
|
+
/** Fit target with safety headroom under the host cap. */
|
|
6
6
|
export declare const COMPOSED_CONTEXT_BUDGET_CHARS = 9900;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* Belt-and-braces fallback for a value that cannot be represented within the
|
|
9
|
+
* configured budget, such as a future oversized reserved marker. Ordinary
|
|
10
|
+
* composition remains inline through the shared natural-unit fitter.
|
|
11
11
|
*/
|
|
12
12
|
export declare const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION: string;
|
|
13
|
-
export interface ContextBudgetItem {
|
|
14
|
-
/** Exact text emitted when the item fits in full. */
|
|
15
|
-
text: string;
|
|
16
|
-
/** Stable envelope name used by continuation/not-reached pointers. */
|
|
17
|
-
name: string;
|
|
18
|
-
/** Memory identity, when this item is one memory precis. */
|
|
19
|
-
memoryId?: string;
|
|
20
|
-
}
|
|
21
|
-
export type ContextBudgetPiece = string | ContextBudgetItem;
|
|
22
13
|
export interface ComposedContextParts {
|
|
23
14
|
/** JIT envelope and bus injections, in their existing priority order. */
|
|
24
15
|
lead: ContextBudgetPiece[];
|
|
@@ -37,37 +28,6 @@ export interface ComposedContextFit {
|
|
|
37
28
|
/** True when the over-cap recovery instruction was prepended. */
|
|
38
29
|
recoveryInstructionPrepended: boolean;
|
|
39
30
|
}
|
|
40
|
-
export interface BudgetedContextFit {
|
|
41
|
-
value: string;
|
|
42
|
-
fullyDeliveredItems: number;
|
|
43
|
-
partialItemIndex: number | null;
|
|
44
|
-
partialUnitsDelivered: number;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Compose ordered items within a fixed budget. Full items are emitted exactly;
|
|
48
|
-
* the first item that does not fit is packed by whole natural units, and all
|
|
49
|
-
* later identities share one trailing not-reached pointer.
|
|
50
|
-
*/
|
|
51
|
-
export declare function fitContextItems(items: readonly ContextBudgetItem[], opts: {
|
|
52
|
-
budget: number;
|
|
53
|
-
units?: 'characters' | 'utf8-bytes';
|
|
54
|
-
reservedSuffix?: readonly ContextBudgetItem[];
|
|
55
|
-
}): BudgetedContextFit;
|
|
56
|
-
/**
|
|
57
|
-
* Turn one rendered envelope into budget items. Pointer-terminated memories
|
|
58
|
-
* retain their IDs; an unrecognised shape remains one named envelope.
|
|
59
|
-
*/
|
|
60
|
-
export declare function contextItemsFromText(text: string, envelopeName: string): ContextBudgetItem[];
|
|
61
|
-
/** Fit one rendered envelope while preserving its exact under-budget bytes. */
|
|
62
|
-
export declare function fitContextText(text: string, envelopeName: string, opts: {
|
|
63
|
-
budget: number;
|
|
64
|
-
units?: 'characters' | 'utf8-bytes';
|
|
65
|
-
}): string;
|
|
66
|
-
/**
|
|
67
|
-
* Split an ambient body into whole pointer-terminated items. Kept as the
|
|
68
|
-
* public writer/reader contract used by the cross-package format test.
|
|
69
|
-
*/
|
|
70
|
-
export declare function splitAmbientItems(body: string): string[];
|
|
71
31
|
/** Fit a composed `additionalContext` value under the Claude host limit. */
|
|
72
32
|
export declare function fitComposedContext(parts: ComposedContextParts, opts?: {
|
|
73
33
|
budgetChars?: number;
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export
|
|
3
|
-
/** Keep Claude Code context inline without cutting a natural unit or losing identity. */
|
|
1
|
+
import { contextItemsFromText, fitContextItems, measureContext, } from '@mnemonik/shared/context-budget';
|
|
2
|
+
export * from '@mnemonik/shared/context-budget';
|
|
4
3
|
/** Claude Code's per-value inline `additionalContext` cap. */
|
|
5
4
|
export const CLAUDE_INLINE_CONTEXT_CAP_CHARS = 10_000;
|
|
6
|
-
/**
|
|
5
|
+
/** Fit target with safety headroom under the host cap. */
|
|
7
6
|
export const COMPOSED_CONTEXT_BUDGET_CHARS = 9_900;
|
|
8
7
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* Belt-and-braces fallback for a value that cannot be represented within the
|
|
9
|
+
* configured budget, such as a future oversized reserved marker. Ordinary
|
|
10
|
+
* composition remains inline through the shared natural-unit fitter.
|
|
12
11
|
*/
|
|
13
12
|
export const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION = '<system-reminder>\n' +
|
|
14
13
|
'Transport integrity: this hook output exceeds the host inline limit. If your host ' +
|
|
@@ -17,8 +16,6 @@ export const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION = '<system-reminder>\n' +
|
|
|
17
16
|
'context, and emit no other action until that read succeeds.\n' +
|
|
18
17
|
'</system-reminder>';
|
|
19
18
|
const JOINER = '\n\n';
|
|
20
|
-
const CONTINUATION_PREFIX = '… continues: ';
|
|
21
|
-
const NOT_REACHED_PREFIX = '… not reached: ';
|
|
22
19
|
function pieceText(piece) {
|
|
23
20
|
return typeof piece === 'string' ? piece : piece.text;
|
|
24
21
|
}
|
|
@@ -39,186 +36,6 @@ function inferEnvelopeName(text, index) {
|
|
|
39
36
|
function asBudgetItem(piece, index) {
|
|
40
37
|
return typeof piece === 'string' ? { text: piece, name: inferEnvelopeName(piece, index) } : piece;
|
|
41
38
|
}
|
|
42
|
-
function identity(item) {
|
|
43
|
-
return item.memoryId ? `memory_get ${item.memoryId}` : item.name.replace(/\s+/g, ' ').trim();
|
|
44
|
-
}
|
|
45
|
-
function continuationPointer(item) {
|
|
46
|
-
return `${CONTINUATION_PREFIX}${identity(item)}`;
|
|
47
|
-
}
|
|
48
|
-
function notReachedPointer(items) {
|
|
49
|
-
if (items.length === 0)
|
|
50
|
-
return null;
|
|
51
|
-
return `${NOT_REACHED_PREFIX}${items.map(identity).join(', ')}`;
|
|
52
|
-
}
|
|
53
|
-
function joinSections(sections) {
|
|
54
|
-
return sections
|
|
55
|
-
.filter((section) => section !== null && section.length > 0)
|
|
56
|
-
.join(JOINER);
|
|
57
|
-
}
|
|
58
|
-
function measure(text, units) {
|
|
59
|
-
return units === 'utf8-bytes' ? Buffer.byteLength(text, 'utf8') : text.length;
|
|
60
|
-
}
|
|
61
|
-
function withoutTerminalMemoryPointer(item) {
|
|
62
|
-
if (!item.memoryId)
|
|
63
|
-
return item.text;
|
|
64
|
-
const terminalPointer = new RegExp(`\\s*${AMBIENT_ITEM_POINTER_SOURCE}\\s*$`);
|
|
65
|
-
return item.text.replace(terminalPointer, '').trimEnd();
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Prefer bullet lines whenever the item contains them. Text ahead of the first
|
|
69
|
-
* bullet is framing and travels with the first admitted fact. Otherwise each
|
|
70
|
-
* sentence (including a final sentence ending at end-of-item) is one unit.
|
|
71
|
-
*/
|
|
72
|
-
function naturalUnits(item) {
|
|
73
|
-
const text = withoutTerminalMemoryPointer(item);
|
|
74
|
-
const bulletStarts = [];
|
|
75
|
-
const bulletPattern = /(^|\n)(?=[ \t]*(?:•|[-*])[ \t]+)/g;
|
|
76
|
-
let bulletMatch;
|
|
77
|
-
while ((bulletMatch = bulletPattern.exec(text)) !== null) {
|
|
78
|
-
bulletStarts.push(bulletMatch.index + (bulletMatch[1] ?? '').length);
|
|
79
|
-
if (bulletPattern.lastIndex === bulletMatch.index)
|
|
80
|
-
bulletPattern.lastIndex += 1;
|
|
81
|
-
}
|
|
82
|
-
if (bulletStarts.length > 0) {
|
|
83
|
-
return {
|
|
84
|
-
prefix: text.slice(0, bulletStarts[0]),
|
|
85
|
-
units: bulletStarts.map((start, index) => text.slice(start, bulletStarts[index + 1])),
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
const units = [];
|
|
89
|
-
const sentenceEnd = /[.!?](?:["')\]]*)?(?=\s|$)/g;
|
|
90
|
-
let cursor = 0;
|
|
91
|
-
let sentenceMatch;
|
|
92
|
-
while ((sentenceMatch = sentenceEnd.exec(text)) !== null) {
|
|
93
|
-
const end = sentenceMatch.index + sentenceMatch[0].length;
|
|
94
|
-
units.push(text.slice(cursor, end));
|
|
95
|
-
cursor = end;
|
|
96
|
-
}
|
|
97
|
-
if (cursor < text.length)
|
|
98
|
-
units.push(text.slice(cursor));
|
|
99
|
-
return { prefix: '', units: units.filter((unit) => unit.trim().length > 0) };
|
|
100
|
-
}
|
|
101
|
-
function partialText(item, plan, count) {
|
|
102
|
-
const content = `${plan.prefix}${plan.units.slice(0, count).join('')}`.trimEnd();
|
|
103
|
-
return `${content}\n${continuationPointer(item)}`;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Compose ordered items within a fixed budget. Full items are emitted exactly;
|
|
107
|
-
* the first item that does not fit is packed by whole natural units, and all
|
|
108
|
-
* later identities share one trailing not-reached pointer.
|
|
109
|
-
*/
|
|
110
|
-
export function fitContextItems(items, opts) {
|
|
111
|
-
const units = opts.units ?? 'characters';
|
|
112
|
-
const suffix = opts.reservedSuffix ?? [];
|
|
113
|
-
const fullValue = [...items, ...suffix].map((item) => item.text).join(JOINER);
|
|
114
|
-
if (measure(fullValue, units) <= opts.budget) {
|
|
115
|
-
return {
|
|
116
|
-
value: fullValue,
|
|
117
|
-
fullyDeliveredItems: items.length,
|
|
118
|
-
partialItemIndex: null,
|
|
119
|
-
partialUnitsDelivered: 0,
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
const accepted = [];
|
|
123
|
-
for (let index = 0; index < items.length; index += 1) {
|
|
124
|
-
const item = items[index];
|
|
125
|
-
if (item === undefined)
|
|
126
|
-
continue;
|
|
127
|
-
const later = items.slice(index + 1);
|
|
128
|
-
const withFullItem = joinSections([
|
|
129
|
-
...accepted,
|
|
130
|
-
item.text,
|
|
131
|
-
...suffix.map((entry) => entry.text),
|
|
132
|
-
notReachedPointer(later),
|
|
133
|
-
]);
|
|
134
|
-
if (measure(withFullItem, units) <= opts.budget) {
|
|
135
|
-
accepted.push(item.text);
|
|
136
|
-
continue;
|
|
137
|
-
}
|
|
138
|
-
const plan = naturalUnits(item);
|
|
139
|
-
let partialUnitsDelivered = 0;
|
|
140
|
-
for (let count = 1; count <= plan.units.length; count += 1) {
|
|
141
|
-
const candidate = joinSections([
|
|
142
|
-
...accepted,
|
|
143
|
-
partialText(item, plan, count),
|
|
144
|
-
...suffix.map((entry) => entry.text),
|
|
145
|
-
notReachedPointer(later),
|
|
146
|
-
]);
|
|
147
|
-
if (measure(candidate, units) > opts.budget)
|
|
148
|
-
break;
|
|
149
|
-
partialUnitsDelivered = count;
|
|
150
|
-
}
|
|
151
|
-
// Minimum-meaningful floor (owner contract 2026-08-18): a partial delivery
|
|
152
|
-
// must carry at least two complete units — one fact out of many reads as
|
|
153
|
-
// the whole memory and invites confabulation. An item that cannot get two
|
|
154
|
-
// units goes to the not-reached pointer whole. Single-unit items are exempt
|
|
155
|
-
// (one unit IS the full item, handled by the full-fit branch above).
|
|
156
|
-
const meaningfulMinimum = Math.min(2, plan.units.length);
|
|
157
|
-
const partialAccepted = partialUnitsDelivered >= meaningfulMinimum && partialUnitsDelivered > 0;
|
|
158
|
-
const partial = partialAccepted ? partialText(item, plan, partialUnitsDelivered) : null;
|
|
159
|
-
const unreached = partialAccepted ? later : items.slice(index);
|
|
160
|
-
return {
|
|
161
|
-
value: joinSections([
|
|
162
|
-
...accepted,
|
|
163
|
-
partial,
|
|
164
|
-
...suffix.map((entry) => entry.text),
|
|
165
|
-
notReachedPointer(unreached),
|
|
166
|
-
]),
|
|
167
|
-
fullyDeliveredItems: index,
|
|
168
|
-
partialItemIndex: partialAccepted ? index : null,
|
|
169
|
-
partialUnitsDelivered: partialAccepted ? partialUnitsDelivered : 0,
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
return {
|
|
173
|
-
value: joinSections([...accepted, ...suffix.map((entry) => entry.text)]),
|
|
174
|
-
fullyDeliveredItems: items.length,
|
|
175
|
-
partialItemIndex: null,
|
|
176
|
-
partialUnitsDelivered: 0,
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
function parsePointerItems(body, envelopeName) {
|
|
180
|
-
const regex = new RegExp(AMBIENT_ITEM_POINTER_SOURCE, 'g');
|
|
181
|
-
const memories = [];
|
|
182
|
-
let cursor = 0;
|
|
183
|
-
let match;
|
|
184
|
-
while ((match = regex.exec(body)) !== null) {
|
|
185
|
-
const end = match.index + match[0].length;
|
|
186
|
-
const text = body.slice(cursor, end).trim();
|
|
187
|
-
if (text.length > 0) {
|
|
188
|
-
memories.push({ text, name: envelopeName, memoryId: match[1] });
|
|
189
|
-
}
|
|
190
|
-
cursor = end;
|
|
191
|
-
}
|
|
192
|
-
const trailerText = body.slice(cursor).trim();
|
|
193
|
-
return {
|
|
194
|
-
memories,
|
|
195
|
-
trailer: trailerText ? { text: trailerText, name: `${envelopeName} trailer` } : null,
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
/**
|
|
199
|
-
* Turn one rendered envelope into budget items. Pointer-terminated memories
|
|
200
|
-
* retain their IDs; an unrecognised shape remains one named envelope.
|
|
201
|
-
*/
|
|
202
|
-
export function contextItemsFromText(text, envelopeName) {
|
|
203
|
-
const parsed = parsePointerItems(text, envelopeName);
|
|
204
|
-
if (parsed.memories.length === 0)
|
|
205
|
-
return [{ text, name: envelopeName }];
|
|
206
|
-
return [...parsed.memories, ...(parsed.trailer ? [parsed.trailer] : [])];
|
|
207
|
-
}
|
|
208
|
-
/** Fit one rendered envelope while preserving its exact under-budget bytes. */
|
|
209
|
-
export function fitContextText(text, envelopeName, opts) {
|
|
210
|
-
const units = opts.units ?? 'characters';
|
|
211
|
-
if (measure(text, units) <= opts.budget)
|
|
212
|
-
return text;
|
|
213
|
-
return fitContextItems(contextItemsFromText(text, envelopeName), opts).value;
|
|
214
|
-
}
|
|
215
|
-
/**
|
|
216
|
-
* Split an ambient body into whole pointer-terminated items. Kept as the
|
|
217
|
-
* public writer/reader contract used by the cross-package format test.
|
|
218
|
-
*/
|
|
219
|
-
export function splitAmbientItems(body) {
|
|
220
|
-
return parsePointerItems(body, 'ambient recall').memories.map((item) => item.text);
|
|
221
|
-
}
|
|
222
39
|
/** Fit a composed `additionalContext` value under the Claude host limit. */
|
|
223
40
|
export function fitComposedContext(parts, opts) {
|
|
224
41
|
const budget = opts?.budgetChars ?? COMPOSED_CONTEXT_BUDGET_CHARS;
|
|
@@ -236,8 +53,8 @@ export function fitComposedContext(parts, opts) {
|
|
|
236
53
|
...(ambientText === null ? [] : [ambientText]),
|
|
237
54
|
...parts.tail.map(pieceText),
|
|
238
55
|
].join(JOINER);
|
|
239
|
-
if (original
|
|
240
|
-
const recoveryInstructionPrepended = original
|
|
56
|
+
if (measureContext(original) <= budget) {
|
|
57
|
+
const recoveryInstructionPrepended = measureContext(original) > cap;
|
|
241
58
|
return {
|
|
242
59
|
value: recoveryInstructionPrepended
|
|
243
60
|
? [PERSISTED_OUTPUT_RECOVERY_INSTRUCTION, original].join(JOINER)
|
|
@@ -258,7 +75,7 @@ export function fitComposedContext(parts, opts) {
|
|
|
258
75
|
const ambientDropped = ambientText !== null && fullyDeliveredAmbient === 0 && !partialAmbient;
|
|
259
76
|
let value = fit.value;
|
|
260
77
|
let recoveryInstructionPrepended = false;
|
|
261
|
-
if (value
|
|
78
|
+
if (measureContext(value) > cap) {
|
|
262
79
|
value = [PERSISTED_OUTPUT_RECOVERY_INSTRUCTION, value].join(JOINER);
|
|
263
80
|
recoveryInstructionPrepended = true;
|
|
264
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contextBudget.js","sourceRoot":"","sources":["../../src/lib/contextBudget.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contextBudget.js","sourceRoot":"","sources":["../../src/lib/contextBudget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mnemonik/claude-code-hooks",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.48",
|
|
4
4
|
"description": "Claude Code lifecycle contextual hooks for Mnemonik. PreToolUse Edit/Write/NotebookEdit/Bash gates plus SessionStart bootstrap warming, clean Stop, PreCompact context_snapshot creation, bounded SessionEnd cleanup, and UserPromptSubmit context injection. This hooks-only package does not install skills, rules, project identity, or MCP config. Versioned independently from the @mnemonik/server release cadence (mirrors @mnemonik/scanner).",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/JayDeeCo-Limited/mnemonik.git",
|
|
8
|
+
"directory": "packages/claude-code-hooks"
|
|
9
|
+
},
|
|
5
10
|
"type": "module",
|
|
6
11
|
"bin": {
|
|
7
12
|
"mnemonik-claude-code-hooks": "dist/install.js"
|
|
@@ -27,7 +32,7 @@
|
|
|
27
32
|
],
|
|
28
33
|
"license": "SEE LICENSE IN LICENSE",
|
|
29
34
|
"dependencies": {
|
|
30
|
-
"@mnemonik/shared": "^7.
|
|
35
|
+
"@mnemonik/shared": "^7.42.0"
|
|
31
36
|
},
|
|
32
37
|
"devDependencies": {
|
|
33
38
|
"@types/node": "^20.19.43",
|