@cleocode/adapters 2026.10.17 → 2026.10.18-rc.ci.688
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/heavy-command-hook.js +42 -31
- package/dist/heavy-command-hook.js.map +1 -1
- package/dist/index.js +73 -44
- package/dist/index.js.map +2 -2
- package/dist/project-hook-delivery.d.ts.map +1 -1
- package/dist/project-hook-delivery.js +88 -5
- package/dist/project-hook-delivery.js.map +1 -1
- package/dist/providers/claude-code/hooks.d.ts +11 -3
- package/dist/providers/claude-code/hooks.d.ts.map +1 -1
- package/dist/providers/shared/heavy-command-hook-delivery.d.ts.map +1 -1
- package/dist/providers/shared/heavy-command-hook-install.d.ts +32 -5
- package/dist/providers/shared/heavy-command-hook-install.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/__tests__/project-hook-delivery.test.ts +127 -2
- package/src/project-hook-delivery.ts +130 -6
- package/src/providers/claude-code/__tests__/stop-dispatch-hook.test.ts +94 -0
- package/src/providers/claude-code/hooks.ts +33 -16
- package/src/providers/shared/__tests__/heavy-command-hook-delivery.test.ts +9 -6
- package/src/providers/shared/__tests__/heavy-command-hook-install.test.ts +32 -25
- package/src/providers/shared/heavy-command-hook-delivery.ts +10 -11
- package/src/providers/shared/heavy-command-hook-install.ts +84 -27
|
@@ -39,6 +39,13 @@ function hookMap(settings) {
|
|
|
39
39
|
}
|
|
40
40
|
return existing;
|
|
41
41
|
}
|
|
42
|
+
function appendHookEntry(hooks, event, entry) {
|
|
43
|
+
const existing = hooks[event];
|
|
44
|
+
if (existing !== void 0 && !Array.isArray(existing)) {
|
|
45
|
+
throw new Error(`settings.json "hooks.${event}" is not an array; not modifying it`);
|
|
46
|
+
}
|
|
47
|
+
hooks[event] = [...existing ?? [], entry];
|
|
48
|
+
}
|
|
42
49
|
|
|
43
50
|
// packages/adapters/src/providers/shared/heavy-command-hook-install.ts
|
|
44
51
|
var HEAVY_COMMAND_HOOK_ID = "cleo hook heavy-command";
|
|
@@ -254,43 +261,48 @@ async function syncJsonHeavyCommandHook(configPath, provider, mode) {
|
|
|
254
261
|
return result;
|
|
255
262
|
}
|
|
256
263
|
var ASK_ENFORCE_HOOK_ID = "cleo hook ask-enforce";
|
|
257
|
-
function
|
|
258
|
-
|
|
264
|
+
function isAskEnforceHookObject(hook) {
|
|
265
|
+
return isPlainObject(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(ASK_ENFORCE_HOOK_ID);
|
|
266
|
+
}
|
|
267
|
+
var STOP_DISPATCH_HOOK_ID = "cleo hook stop";
|
|
268
|
+
var STOP_DISPATCH_HOOK_TIMEOUT_SEC = 120;
|
|
269
|
+
var LEGACY_SESSION_END_STOP_COMMAND = "cleo session end --quiet # cleo-hook";
|
|
270
|
+
function stopDispatchHookObject(provider) {
|
|
271
|
+
const script = `command -v cleo >/dev/null 2>&1 || exit 0; out="$(${STOP_DISPATCH_HOOK_ID} --provider ${provider} 2>/dev/null)"; case "$out" in "{"*) printf '%s\\n' "$out";; esac; exit 0`;
|
|
259
272
|
const line = provider === "codex" ? `/bin/sh -c ${shellWord(script)}` : script;
|
|
260
273
|
return {
|
|
261
274
|
type: "command",
|
|
262
275
|
command: `${line} ${CLEO_HOOK_MARKER}`,
|
|
263
|
-
timeout:
|
|
276
|
+
timeout: STOP_DISPATCH_HOOK_TIMEOUT_SEC
|
|
264
277
|
};
|
|
265
278
|
}
|
|
266
|
-
function
|
|
267
|
-
return isPlainObject(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(
|
|
279
|
+
function isStopDispatchHookObject(hook) {
|
|
280
|
+
return isPlainObject(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${STOP_DISPATCH_HOOK_ID} `);
|
|
268
281
|
}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
282
|
+
function isFoldedStopHook(hook) {
|
|
283
|
+
return isAskEnforceHookObject(hook) || isPlainObject(hook) && hook.command === LEGACY_SESSION_END_STOP_COMMAND;
|
|
284
|
+
}
|
|
285
|
+
function applyStopDispatch(hooks, provider, install) {
|
|
286
|
+
const folded = placeHeavyHook(hooks, null, "Stop", isFoldedStopHook).changed;
|
|
287
|
+
const desired = install ? stopDispatchHookObject(provider) : null;
|
|
288
|
+
const placed = placeHeavyHook(hooks, desired, "Stop", isStopDispatchHookObject);
|
|
289
|
+
if (desired === null || placed.found) return folded || placed.changed;
|
|
290
|
+
appendHookEntry(hooks, "Stop", { hooks: [desired] });
|
|
291
|
+
return true;
|
|
292
|
+
}
|
|
293
|
+
async function syncJsonStopDispatchHook(configPath, provider, install) {
|
|
294
|
+
if (!install && !existsSync(configPath)) return "unchanged";
|
|
295
|
+
if (install) ensureParentDir(configPath);
|
|
280
296
|
let result = "unchanged";
|
|
281
297
|
await updateJsonConfigFile(configPath, (config) => {
|
|
298
|
+
if (!install && config.hooks === void 0) return false;
|
|
282
299
|
const hooks = hookMap(config);
|
|
283
|
-
const
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
hooks.Stop = [
|
|
290
|
-
...Array.isArray(existing) ? existing : [],
|
|
291
|
-
{ hooks: [askEnforceHookObject(provider)] }
|
|
292
|
-
];
|
|
293
|
-
result = "installed";
|
|
300
|
+
const stop = hooks.Stop;
|
|
301
|
+
const had = Array.isArray(stop) && stop.some(
|
|
302
|
+
(g) => isPlainObject(g) && Array.isArray(g.hooks) && g.hooks.some(isStopDispatchHookObject)
|
|
303
|
+
);
|
|
304
|
+
if (!applyStopDispatch(hooks, provider, install)) return false;
|
|
305
|
+
result = !install ? "removed" : had ? "updated" : "installed";
|
|
294
306
|
return true;
|
|
295
307
|
});
|
|
296
308
|
return result;
|
|
@@ -653,10 +665,9 @@ function detectHeavyHookProvider(provider, projectDir, env = process.env) {
|
|
|
653
665
|
function errorText(err) {
|
|
654
666
|
return err instanceof Error ? err.message : String(err);
|
|
655
667
|
}
|
|
656
|
-
async function
|
|
657
|
-
const install = mode !== "off" && env.CLEO_ASK_ENFORCE?.trim().toLowerCase() !== "off";
|
|
668
|
+
async function syncStopDispatch(provider, target, mode) {
|
|
658
669
|
try {
|
|
659
|
-
await
|
|
670
|
+
await syncJsonStopDispatchHook(target, provider, provider === "claude-code" || mode !== "off");
|
|
660
671
|
} catch {
|
|
661
672
|
}
|
|
662
673
|
}
|
|
@@ -667,7 +678,7 @@ async function syncProvider(provider, projectDir, mode, env) {
|
|
|
667
678
|
}
|
|
668
679
|
try {
|
|
669
680
|
const result = provider === "claude-code" ? await syncClaudeCodeHeavyCommandHook(projectDir, mode) : provider === "codex" ? await syncCodexHeavyCommandHook(projectDir, mode) : syncOpencodeHeavyCommandPlugin(projectDir, mode);
|
|
670
|
-
if (provider !== "opencode") await
|
|
681
|
+
if (provider !== "opencode") await syncStopDispatch(provider, target, mode);
|
|
671
682
|
return { provider, status: result, target };
|
|
672
683
|
} catch (err) {
|
|
673
684
|
if (err instanceof HeavyHookSharedConfigError) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/providers/shared/heavy-command-hook-delivery.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", "homedir", "join", "existsSync", "readFileSync", "shared", "dirname", "execFileSync", "statSync"]
|
|
6
6
|
}
|
package/dist/index.js
CHANGED
|
@@ -475,7 +475,7 @@ var init_cant_context = __esm({
|
|
|
475
475
|
|
|
476
476
|
// packages/contracts/src/acceptance-gate-schema.ts
|
|
477
477
|
import { z } from "zod";
|
|
478
|
-
var gateBaseSchema, fileAssertionSchema, testGateSchema, testCountReportSchema, fileGateSchema, commandGateSchema, lintGateSchema, httpGateSchema, manualGateSchema, acceptanceGateSchema, gateResultDetailsSchema, capturedExecutionSchema, gateBindingPathSchema, acceptanceGateBindingSchema, acceptanceGateResultSchema, acceptanceItemSchema, acceptanceArraySchema;
|
|
478
|
+
var gateBaseSchema, fileAssertionSchema, testGateSchema, testCountReportSchema, testCountSummarySchema, fileGateSchema, commandGateSchema, lintGateSchema, httpGateSchema, manualGateSchema, acceptanceGateSchema, gateResultDetailsSchema, capturedExecutionSchema, gateBindingPathSchema, acceptanceGateBindingSchema, acceptanceGateResultSchema, acceptanceItemSchema, acceptanceArraySchema;
|
|
479
479
|
var init_acceptance_gate_schema = __esm({
|
|
480
480
|
"packages/contracts/src/acceptance-gate-schema.ts"() {
|
|
481
481
|
"use strict";
|
|
@@ -560,6 +560,19 @@ var init_acceptance_gate_schema = __esm({
|
|
|
560
560
|
context.addIssue({ code: "custom", message: "Success status contradicts failed results" });
|
|
561
561
|
}
|
|
562
562
|
});
|
|
563
|
+
testCountSummarySchema = z.object({
|
|
564
|
+
numPassedTests: z.number().int().nonnegative().safe(),
|
|
565
|
+
numFailedTests: z.number().int().nonnegative().safe().optional(),
|
|
566
|
+
numTotalTests: z.number().int().nonnegative().safe().optional(),
|
|
567
|
+
success: z.boolean().optional(),
|
|
568
|
+
testResults: z.undefined()
|
|
569
|
+
}).superRefine((summary, context) => {
|
|
570
|
+
const failed = summary.numFailedTests ?? 0;
|
|
571
|
+
if (summary.numTotalTests !== void 0 && summary.numTotalTests < summary.numPassedTests + failed)
|
|
572
|
+
context.addIssue({ code: "custom", message: "Total is below passed plus failed" });
|
|
573
|
+
if (summary.success === true && failed > 0)
|
|
574
|
+
context.addIssue({ code: "custom", message: "Success status contradicts failed count" });
|
|
575
|
+
});
|
|
563
576
|
fileGateSchema = gateBaseSchema.extend({
|
|
564
577
|
kind: z.literal("file"),
|
|
565
578
|
/** Absolute or project-root-relative file path. Mutually exclusive with `attachmentSha256`. */
|
|
@@ -14047,6 +14060,13 @@ var init_goal = __esm({
|
|
|
14047
14060
|
}
|
|
14048
14061
|
});
|
|
14049
14062
|
|
|
14063
|
+
// packages/contracts/src/goal-contract.ts
|
|
14064
|
+
var init_goal_contract = __esm({
|
|
14065
|
+
"packages/contracts/src/goal-contract.ts"() {
|
|
14066
|
+
"use strict";
|
|
14067
|
+
}
|
|
14068
|
+
});
|
|
14069
|
+
|
|
14050
14070
|
// packages/contracts/src/graph.ts
|
|
14051
14071
|
var init_graph = __esm({
|
|
14052
14072
|
"packages/contracts/src/graph.ts"() {
|
|
@@ -14571,7 +14591,7 @@ var init_sync_write_invariants = __esm({
|
|
|
14571
14591
|
["tasks_session_handoff_entries"],
|
|
14572
14592
|
["trg_tasks_session_handoff_no_update"],
|
|
14573
14593
|
["H2"],
|
|
14574
|
-
"handoff entries are never updated"
|
|
14594
|
+
"handoff entries are never updated, and one session has one (the natural uid over the session merges a peer\u2019s; T13777)"
|
|
14575
14595
|
),
|
|
14576
14596
|
trigger(
|
|
14577
14597
|
"task.claim.lease-iso",
|
|
@@ -18797,6 +18817,7 @@ var init_src = __esm({
|
|
|
18797
18817
|
init_exit_codes();
|
|
18798
18818
|
init_facade();
|
|
18799
18819
|
init_goal();
|
|
18820
|
+
init_goal_contract();
|
|
18800
18821
|
init_graph();
|
|
18801
18822
|
init_invariants();
|
|
18802
18823
|
init_kind_lifecycle();
|
|
@@ -45090,43 +45111,45 @@ async function syncJsonHeavyCommandHook(configPath, provider, mode) {
|
|
|
45090
45111
|
});
|
|
45091
45112
|
return result;
|
|
45092
45113
|
}
|
|
45093
|
-
function
|
|
45094
|
-
|
|
45114
|
+
function isAskEnforceHookObject(hook) {
|
|
45115
|
+
return isPlainObject2(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(ASK_ENFORCE_HOOK_ID);
|
|
45116
|
+
}
|
|
45117
|
+
function stopDispatchHookObject(provider) {
|
|
45118
|
+
const script = `command -v cleo >/dev/null 2>&1 || exit 0; out="$(${STOP_DISPATCH_HOOK_ID} --provider ${provider} 2>/dev/null)"; case "$out" in "{"*) printf '%s\\n' "$out";; esac; exit 0`;
|
|
45095
45119
|
const line = provider === "codex" ? `/bin/sh -c ${shellWord(script)}` : script;
|
|
45096
45120
|
return {
|
|
45097
45121
|
type: "command",
|
|
45098
45122
|
command: `${line} ${CLEO_HOOK_MARKER}`,
|
|
45099
|
-
timeout:
|
|
45123
|
+
timeout: STOP_DISPATCH_HOOK_TIMEOUT_SEC
|
|
45100
45124
|
};
|
|
45101
45125
|
}
|
|
45102
|
-
function
|
|
45103
|
-
return isPlainObject2(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(
|
|
45126
|
+
function isStopDispatchHookObject(hook) {
|
|
45127
|
+
return isPlainObject2(hook) && typeof hook.command === "string" && hook.command.includes(CLEO_HOOK_MARKER) && hook.command.includes(`${STOP_DISPATCH_HOOK_ID} `);
|
|
45104
45128
|
}
|
|
45105
|
-
|
|
45106
|
-
|
|
45107
|
-
|
|
45108
|
-
|
|
45109
|
-
|
|
45110
|
-
|
|
45111
|
-
|
|
45112
|
-
|
|
45113
|
-
|
|
45114
|
-
|
|
45115
|
-
|
|
45129
|
+
function isFoldedStopHook(hook) {
|
|
45130
|
+
return isAskEnforceHookObject(hook) || isPlainObject2(hook) && hook.command === LEGACY_SESSION_END_STOP_COMMAND;
|
|
45131
|
+
}
|
|
45132
|
+
function applyStopDispatch(hooks, provider, install) {
|
|
45133
|
+
const folded = placeHeavyHook(hooks, null, "Stop", isFoldedStopHook).changed;
|
|
45134
|
+
const desired = install ? stopDispatchHookObject(provider) : null;
|
|
45135
|
+
const placed = placeHeavyHook(hooks, desired, "Stop", isStopDispatchHookObject);
|
|
45136
|
+
if (desired === null || placed.found) return folded || placed.changed;
|
|
45137
|
+
appendHookEntry(hooks, "Stop", { hooks: [desired] });
|
|
45138
|
+
return true;
|
|
45139
|
+
}
|
|
45140
|
+
async function syncJsonStopDispatchHook(configPath, provider, install) {
|
|
45141
|
+
if (!install && !existsSync3(configPath)) return "unchanged";
|
|
45142
|
+
if (install) ensureParentDir(configPath);
|
|
45116
45143
|
let result = "unchanged";
|
|
45117
45144
|
await updateJsonConfigFile(configPath, (config2) => {
|
|
45145
|
+
if (!install && config2.hooks === void 0) return false;
|
|
45118
45146
|
const hooks = hookMap(config2);
|
|
45119
|
-
const
|
|
45120
|
-
|
|
45121
|
-
|
|
45122
|
-
|
|
45123
|
-
|
|
45124
|
-
|
|
45125
|
-
hooks.Stop = [
|
|
45126
|
-
...Array.isArray(existing) ? existing : [],
|
|
45127
|
-
{ hooks: [askEnforceHookObject(provider)] }
|
|
45128
|
-
];
|
|
45129
|
-
result = "installed";
|
|
45147
|
+
const stop = hooks.Stop;
|
|
45148
|
+
const had = Array.isArray(stop) && stop.some(
|
|
45149
|
+
(g) => isPlainObject2(g) && Array.isArray(g.hooks) && g.hooks.some(isStopDispatchHookObject)
|
|
45150
|
+
);
|
|
45151
|
+
if (!applyStopDispatch(hooks, provider, install)) return false;
|
|
45152
|
+
result = !install ? "removed" : had ? "updated" : "installed";
|
|
45130
45153
|
return true;
|
|
45131
45154
|
});
|
|
45132
45155
|
return result;
|
|
@@ -45401,7 +45424,7 @@ function syncOpencodeHeavyCommandPlugin(projectDir, mode) {
|
|
|
45401
45424
|
excludeHookFileFromGit(projectDir, OPENCODE_PLUGIN_FILE);
|
|
45402
45425
|
return current ? "unchanged" : exists ? "updated" : "installed";
|
|
45403
45426
|
}
|
|
45404
|
-
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, CLAUDE_LOCAL_SETTINGS, LOCAL_SETTINGS_EXCLUDE_MARKER, HOOK_FILE_EXCLUDE_MARKER, CODEX_HOOKS_FILE, OPENCODE_PLUGIN_FILE, HeavyHookSharedConfigError;
|
|
45427
|
+
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;
|
|
45405
45428
|
var init_heavy_command_hook_install = __esm({
|
|
45406
45429
|
"packages/adapters/src/providers/shared/heavy-command-hook-install.ts"() {
|
|
45407
45430
|
"use strict";
|
|
@@ -45462,6 +45485,9 @@ var init_heavy_command_hook_install = __esm({
|
|
|
45462
45485
|
});
|
|
45463
45486
|
OLDER_CLEO_MARKER_PREFIX = "cleo-hook-unsupported-";
|
|
45464
45487
|
ASK_ENFORCE_HOOK_ID = "cleo hook ask-enforce";
|
|
45488
|
+
STOP_DISPATCH_HOOK_ID = "cleo hook stop";
|
|
45489
|
+
STOP_DISPATCH_HOOK_TIMEOUT_SEC = 120;
|
|
45490
|
+
LEGACY_SESSION_END_STOP_COMMAND = "cleo session end --quiet # cleo-hook";
|
|
45465
45491
|
CLAUDE_LOCAL_SETTINGS = ".claude/settings.local.json";
|
|
45466
45492
|
LOCAL_SETTINGS_EXCLUDE_MARKER = "# cleo-hook: keep the per-machine heavy-command hook settings out of git (T12983)";
|
|
45467
45493
|
HOOK_FILE_EXCLUDE_MARKER = "# cleo-hook: keep a per-machine heavy-command hook file out of git (T13124)";
|
|
@@ -45709,13 +45735,16 @@ import { PROVIDER_NATIVE_EVENT_MAPS } from "@cleocode/caamp/hooks";
|
|
|
45709
45735
|
function isNativeHookObject(hook) {
|
|
45710
45736
|
return isPlainObject2(hook) && typeof hook.command === "string" && NATIVE_HOOK_COMMANDS.has(hook.command);
|
|
45711
45737
|
}
|
|
45712
|
-
function
|
|
45738
|
+
function holdsHook(hooks, match) {
|
|
45713
45739
|
return Object.values(hooks).some(
|
|
45714
45740
|
(entries) => Array.isArray(entries) && entries.some(
|
|
45715
|
-
(entry) => isPlainObject2(entry) && Array.isArray(entry.hooks) && entry.hooks.some(
|
|
45741
|
+
(entry) => isPlainObject2(entry) && Array.isArray(entry.hooks) && entry.hooks.some(match)
|
|
45716
45742
|
)
|
|
45717
45743
|
);
|
|
45718
45744
|
}
|
|
45745
|
+
function hasNativeHooks(hooks) {
|
|
45746
|
+
return holdsHook(hooks, isNativeHookObject);
|
|
45747
|
+
}
|
|
45719
45748
|
function removeNativeHooks(hooks) {
|
|
45720
45749
|
let changed = false;
|
|
45721
45750
|
for (const [event, entries] of Object.entries(hooks)) {
|
|
@@ -45738,17 +45767,19 @@ function removeNativeHooks(hooks) {
|
|
|
45738
45767
|
}
|
|
45739
45768
|
return changed;
|
|
45740
45769
|
}
|
|
45741
|
-
var NATIVE_STOP_HOOK_COMMAND, NATIVE_OBSERVE_HOOK_COMMAND, NATIVE_NEXUS_HOOK_COMMAND, NATIVE_HOOK_COMMANDS, PROVIDER_ID, CLAUDE_CODE_EVENT_MAP, ClaudeCodeHookProvider;
|
|
45770
|
+
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;
|
|
45742
45771
|
var init_hooks = __esm({
|
|
45743
45772
|
"packages/adapters/src/providers/claude-code/hooks.ts"() {
|
|
45744
45773
|
"use strict";
|
|
45745
45774
|
init_heavy_command_hook_install();
|
|
45746
45775
|
init_paths();
|
|
45747
|
-
NATIVE_STOP_HOOK_COMMAND = "
|
|
45776
|
+
NATIVE_STOP_HOOK_COMMAND = String(stopDispatchHookObject("claude-code").command);
|
|
45777
|
+
LEGACY_NATIVE_STOP_HOOK_COMMAND = LEGACY_SESSION_END_STOP_COMMAND;
|
|
45748
45778
|
NATIVE_OBSERVE_HOOK_COMMAND = 'cleo observe "File modified via $TOOL_NAME" --title "tool-use" --quiet # cleo-hook';
|
|
45749
45779
|
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';
|
|
45750
45780
|
NATIVE_HOOK_COMMANDS = /* @__PURE__ */ new Set([
|
|
45751
45781
|
NATIVE_STOP_HOOK_COMMAND,
|
|
45782
|
+
LEGACY_NATIVE_STOP_HOOK_COMMAND,
|
|
45752
45783
|
NATIVE_OBSERVE_HOOK_COMMAND,
|
|
45753
45784
|
NATIVE_NEXUS_HOOK_COMMAND
|
|
45754
45785
|
]);
|
|
@@ -45790,7 +45821,8 @@ var init_hooks = __esm({
|
|
|
45790
45821
|
* Idempotent: skips writing if the native hooks are already present.
|
|
45791
45822
|
*
|
|
45792
45823
|
* Hook entries registered:
|
|
45793
|
-
* - `Stop` → `cleo
|
|
45824
|
+
* - `Stop` → `cleo hook stop` (the goal runtime first, then `cleo session end`,
|
|
45825
|
+
* which triggers LLM extraction, reflector, consolidation; T13796)
|
|
45794
45826
|
* - `PostToolUse` (Write|Edit) → brain observation for file modifications
|
|
45795
45827
|
* and the NEXUS post-check
|
|
45796
45828
|
*
|
|
@@ -45802,11 +45834,9 @@ var init_hooks = __esm({
|
|
|
45802
45834
|
this.registered = true;
|
|
45803
45835
|
const wrote = await this.updateSettings(projectDir, (settings) => {
|
|
45804
45836
|
const hooks = hookMap(settings);
|
|
45805
|
-
|
|
45806
|
-
|
|
45807
|
-
|
|
45808
|
-
hooks: [{ type: "command", command: NATIVE_STOP_HOOK_COMMAND }]
|
|
45809
|
-
});
|
|
45837
|
+
const fresh = !hasNativeHooks(hooks) && !holdsHook(hooks, isStopDispatchHookObject);
|
|
45838
|
+
const stopChanged = applyStopDispatch(hooks, "claude-code", true);
|
|
45839
|
+
if (!fresh) return stopChanged;
|
|
45810
45840
|
appendHookEntry(hooks, "PostToolUse", {
|
|
45811
45841
|
matcher: "Write|Edit",
|
|
45812
45842
|
hooks: [
|
|
@@ -50106,10 +50136,9 @@ function detectHeavyHookProvider(provider, projectDir, env = process.env) {
|
|
|
50106
50136
|
function errorText(err) {
|
|
50107
50137
|
return err instanceof Error ? err.message : String(err);
|
|
50108
50138
|
}
|
|
50109
|
-
async function
|
|
50110
|
-
const install = mode !== "off" && env.CLEO_ASK_ENFORCE?.trim().toLowerCase() !== "off";
|
|
50139
|
+
async function syncStopDispatch(provider, target, mode) {
|
|
50111
50140
|
try {
|
|
50112
|
-
await
|
|
50141
|
+
await syncJsonStopDispatchHook(target, provider, provider === "claude-code" || mode !== "off");
|
|
50113
50142
|
} catch {
|
|
50114
50143
|
}
|
|
50115
50144
|
}
|
|
@@ -50120,7 +50149,7 @@ async function syncProvider(provider, projectDir, mode, env) {
|
|
|
50120
50149
|
}
|
|
50121
50150
|
try {
|
|
50122
50151
|
const result = provider === "claude-code" ? await syncClaudeCodeHeavyCommandHook(projectDir, mode) : provider === "codex" ? await syncCodexHeavyCommandHook(projectDir, mode) : syncOpencodeHeavyCommandPlugin(projectDir, mode);
|
|
50123
|
-
if (provider !== "opencode") await
|
|
50152
|
+
if (provider !== "opencode") await syncStopDispatch(provider, target, mode);
|
|
50124
50153
|
return { provider, status: result, target };
|
|
50125
50154
|
} catch (err) {
|
|
50126
50155
|
if (err instanceof HeavyHookSharedConfigError) {
|