pushary 1.9.61 → 1.9.63
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/CHANGELOG.md +14 -0
- package/README.md +1 -1
- package/dist/{api-LW3PJQYY.js → api-UHUUAONF.js} +14 -12
- package/dist/bin/pushary-bell-hook.js +27 -27
- package/dist/bin/pushary-bell.js +12 -12
- package/dist/bin/pushary-claude.js +35 -28
- package/dist/bin/pushary-clean.js +35 -34
- package/dist/bin/pushary-codex-bridge.js +21 -21
- package/dist/bin/pushary-codex-hook.js +51 -38
- package/dist/bin/pushary-codex-session.js +8 -8
- package/dist/bin/pushary-codex.js +14 -14
- package/dist/bin/pushary-connect.js +27 -27
- package/dist/bin/pushary-cowork.js +5 -5
- package/dist/bin/pushary-daemon.js +39 -38
- package/dist/bin/pushary-disconnect.js +30 -29
- package/dist/bin/pushary-doctor.js +46 -44
- package/dist/bin/pushary-elicitation-hook.js +30 -28
- package/dist/bin/pushary-gemini-bridge.js +15 -15
- package/dist/bin/pushary-gemini-hook.js +38 -30
- package/dist/bin/pushary-hook.js +32 -31
- package/dist/bin/pushary-login.js +27 -15
- package/dist/bin/pushary-logout.js +28 -28
- package/dist/bin/pushary-mcp.js +11 -11
- package/dist/bin/pushary-mode.js +14 -14
- package/dist/bin/pushary-notification-hook.js +26 -26
- package/dist/bin/pushary-opencode-hook.js +40 -31
- package/dist/bin/pushary-permission-denied-hook.js +31 -31
- package/dist/bin/pushary-permission-hook.js +30 -30
- package/dist/bin/pushary-post-hook.js +26 -26
- package/dist/bin/pushary-prompt-hook.js +26 -26
- package/dist/bin/pushary-session-end-hook.js +26 -26
- package/dist/bin/pushary-session-start-hook.js +34 -33
- package/dist/bin/pushary-setup.js +115 -4205
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +32 -32
- package/dist/bin/pushary-stop-hook.js +26 -26
- package/dist/bin/pushary-stopfailure-hook.js +26 -26
- package/dist/bin/pushary-suggestions.js +14 -14
- package/dist/bin/pushary-transcript-register.js +18 -18
- package/dist/bin/pushary-transcripts.js +62 -9
- package/dist/bin/pushary-upgrade.js +43 -41
- package/dist/bin/pushary-wait.js +14 -14
- package/dist/bin/pushary.js +7 -7
- package/dist/{chunk-ORX5BTV4.js → chunk-2MZ6ROWZ.js} +8 -6
- package/dist/{chunk-7BHI3PZN.js → chunk-3GVV7XVT.js} +1 -1
- package/dist/{chunk-GKFO5JLN.js → chunk-3QLFB2EY.js} +4 -4
- package/dist/{chunk-LBHJJEKT.js → chunk-4WFAP6QN.js} +10 -10
- package/dist/{chunk-PITQ5ZIQ.js → chunk-5JK3DQGZ.js} +2 -2
- package/dist/{chunk-CJ5TCFD4.js → chunk-5LOP4AVD.js} +3 -3
- package/dist/{chunk-ERK24P76.js → chunk-6Z2VR3BA.js} +4 -2
- package/dist/{chunk-K4MBKXAE.js → chunk-75ODMNOM.js} +1 -1
- package/dist/{chunk-YPD3MTFU.js → chunk-7GRQGXF4.js} +1 -1
- package/dist/{chunk-AXJLJJ3M.js → chunk-7NCLUA65.js} +99 -6
- package/dist/{chunk-YDR4BQ7R.js → chunk-AB3VAQ25.js} +3 -3
- package/dist/{chunk-2AELPDMT.js → chunk-BCVCUDFI.js} +16 -5
- package/dist/{chunk-RGSW36XH.js → chunk-BQFL2ECS.js} +3 -3
- package/dist/{chunk-BG4Y64FW.js → chunk-BUQU3OPX.js} +1 -1
- package/dist/{chunk-SHJVFW22.js → chunk-CLABCSZC.js} +4 -4
- package/dist/{chunk-4VRTSDGP.js → chunk-DMNLFWGY.js} +7 -108
- package/dist/{chunk-7MCCXE5Y.js → chunk-EHHTQURL.js} +5 -5
- package/dist/{chunk-XAO6EYGM.js → chunk-ELAK46NR.js} +26 -3
- package/dist/{chunk-JGQV4MDQ.js → chunk-EQ26IKZM.js} +6 -6
- package/dist/{chunk-VX2MJ4X7.js → chunk-FAF5AW3P.js} +9 -9
- package/dist/{chunk-XEJOPVCG.js → chunk-FEAGK25K.js} +1 -1
- package/dist/{chunk-GZCSWDAS.js → chunk-GNUARBRZ.js} +4 -4
- package/dist/{chunk-64S5PQBQ.js → chunk-GZS72NCF.js} +4 -4
- package/dist/{chunk-WFSGCFXQ.js → chunk-HAIXS4OX.js} +2 -6
- package/dist/{chunk-G36T5LAP.js → chunk-HOIO66DU.js} +3 -3
- package/dist/{chunk-ADR3KHOC.js → chunk-HZ72EMJE.js} +2 -2
- package/dist/{chunk-WN3RACVD.js → chunk-IOH2T3CB.js} +17 -3
- package/dist/chunk-KEPESIIR.js +4117 -0
- package/dist/{chunk-ZEWIMY63.js → chunk-KL76XWZ7.js} +1 -1
- package/dist/{chunk-IFPOHFDJ.js → chunk-KLZZI5TU.js} +1 -1
- package/dist/{chunk-ATKN4BJT.js → chunk-KUCL7ETL.js} +1 -1
- package/dist/{chunk-SFAP4AJY.js → chunk-L5CDGXPO.js} +3 -3
- package/dist/{chunk-GDKQUB52.js → chunk-LGZ545TA.js} +5 -5
- package/dist/{chunk-ZGU3NXL2.js → chunk-LTT54NOU.js} +8 -8
- package/dist/{chunk-MWLTTLPK.js → chunk-MK4USZYQ.js} +2 -2
- package/dist/{chunk-NKLNU577.js → chunk-MRCVYYPW.js} +3 -3
- package/dist/{chunk-7JXJJNQ5.js → chunk-OJEIS5L2.js} +1 -1
- package/dist/{chunk-ELLJPP6O.js → chunk-OP5IBEV7.js} +7 -3
- package/dist/{chunk-BQ2VV7LY.js → chunk-OU3BYBJ3.js} +2 -2
- package/dist/{chunk-6T5Z64KS.js → chunk-OW6VBXXI.js} +15 -15
- package/dist/{chunk-USE5IEEW.js → chunk-OY6Z4IKB.js} +1 -1
- package/dist/{chunk-O65F2IIN.js → chunk-P6RF4RQN.js} +6 -6
- package/dist/{chunk-4N5E4JNF.js → chunk-PIQ4HHA2.js} +5 -5
- package/dist/{chunk-7HDGH3Z2.js → chunk-PJ34FOIV.js} +4 -4
- package/dist/{chunk-DQLCFGHK.js → chunk-PXAOEFJZ.js} +17 -11
- package/dist/{chunk-P3VQH65N.js → chunk-QC2W42DE.js} +33 -20
- package/dist/{chunk-X3YKQJCZ.js → chunk-RAJ3QEIL.js} +1 -1
- package/dist/chunk-S2Z6VWHH.js +112 -0
- package/dist/{chunk-FUZ5VYWD.js → chunk-SARPHHTT.js} +1 -1
- package/dist/{chunk-BJTSKOH3.js → chunk-SKUSGWFK.js} +5 -5
- package/dist/{chunk-Y6Z7DA5Y.js → chunk-T3GHXR6N.js} +5 -5
- package/dist/{chunk-EUIPTDLX.js → chunk-T6XQNOZV.js} +22 -15
- package/dist/{chunk-RJHX66EY.js → chunk-TBKHQWIH.js} +16 -11
- package/dist/{chunk-CICLXLQN.js → chunk-TMGJAFSD.js} +4 -4
- package/dist/{chunk-Y5VKZNFN.js → chunk-V5W3CK7F.js} +2 -2
- package/dist/{chunk-GAMVAORR.js → chunk-V7N5NOZV.js} +4 -2
- package/dist/{chunk-33OOEVPG.js → chunk-VC3HFFMQ.js} +1 -1
- package/dist/{chunk-KPNZ7JUL.js → chunk-VDBXSUXP.js} +6 -6
- package/dist/{chunk-7BAO42UV.js → chunk-VFJSVPNL.js} +3 -3
- package/dist/{chunk-HUI4OE43.js → chunk-VHZAJ6IB.js} +3 -3
- package/dist/{chunk-QER5R7Z6.js → chunk-VN7XH6TU.js} +2 -2
- package/dist/{chunk-UADSXJZ4.js → chunk-WUOOZE5S.js} +2 -2
- package/dist/{chunk-LN7DE5LY.js → chunk-XBTWG2VL.js} +4 -4
- package/dist/{chunk-XV6S5PWW.js → chunk-XE5N352V.js} +1 -1
- package/dist/{chunk-SVQWHV65.js → chunk-XO3KAH7K.js} +1 -1
- package/dist/{chunk-BUZIEL7Y.js → chunk-YK6GR4GU.js} +2 -2
- package/dist/chunk-YMZOM6BD.js +216 -0
- package/dist/{codex-app-cards-switch-BD7LCI2I.js → codex-app-cards-switch-LXMAIOFB.js} +11 -11
- package/dist/{codex-desktop-launch-V5CASSBB.js → codex-desktop-launch-VE5RLFUU.js} +1 -1
- package/dist/{codex-session-launch-5PKFKUFD.js → codex-session-launch-XZZWXCPK.js} +18 -18
- package/dist/{config-AEKH7HGC.js → config-PPX25AV5.js} +3 -3
- package/dist/{global-upgrade-IUXJJDWF.js → global-upgrade-NRMHNLNU.js} +9 -9
- package/dist/{identity-YJIV2XTY.js → identity-ZFQR7JNW.js} +4 -4
- package/dist/{live-capabilities-QYFW5QAW.js → live-capabilities-SJRYRKNB.js} +4 -4
- package/dist/{paths-A5GAR5PL.js → paths-7VTVOQXJ.js} +3 -3
- package/dist/{reapply-BKJGICRJ.js → reapply-WOANOIRZ.js} +27 -26
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +21 -21
- package/dist/{upgrade-lock-DDB7WEWC.js → upgrade-lock-VAYJZVTB.js} +4 -4
- package/dist/{usage-HBDNFZ3O.js → usage-C4DIYUR6.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-6FJ6CK32.js +0 -126
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import {
|
|
2
|
+
registerTranscript
|
|
3
|
+
} from "./chunk-T6XQNOZV.js";
|
|
4
|
+
import {
|
|
5
|
+
namedEvent
|
|
6
|
+
} from "./chunk-3QLFB2EY.js";
|
|
7
|
+
import {
|
|
8
|
+
isBridgeLocator,
|
|
9
|
+
liveBridgeProbe,
|
|
10
|
+
pusharyHookExecutable,
|
|
11
|
+
resolveBridgeStub
|
|
12
|
+
} from "./chunk-SKUSGWFK.js";
|
|
13
|
+
import {
|
|
14
|
+
atLeast,
|
|
15
|
+
parseVersion
|
|
16
|
+
} from "./chunk-6ICPEJY5.js";
|
|
17
|
+
import {
|
|
18
|
+
writeDegraded
|
|
19
|
+
} from "./chunk-TBKHQWIH.js";
|
|
20
|
+
import {
|
|
21
|
+
cursorUserHooks
|
|
22
|
+
} from "./chunk-MK4USZYQ.js";
|
|
23
|
+
import {
|
|
24
|
+
CURSOR_GATE_COVERAGE,
|
|
25
|
+
CURSOR_GATE_SCRIPT,
|
|
26
|
+
HOOK_VERSION_PATTERN,
|
|
27
|
+
NO_CURSOR_GATE,
|
|
28
|
+
claudeShapedHookInput,
|
|
29
|
+
cursorGateOwnsToolCall,
|
|
30
|
+
hookCompatibleProfileBySource,
|
|
31
|
+
isCursorHookPayload,
|
|
32
|
+
isGrokHookPayload,
|
|
33
|
+
isGrokSessionEndStop,
|
|
34
|
+
isRecord,
|
|
35
|
+
toolsCoveredByGateEntry
|
|
36
|
+
} from "./chunk-7NCLUA65.js";
|
|
37
|
+
|
|
38
|
+
// src/tool-hook-input.ts
|
|
39
|
+
var OPTIONAL_TEXT_FIELDS = ["hook_event_name", "session_id", "cwd", "transcript_path", "tool_use_id", "permission_mode", "cursor_version"];
|
|
40
|
+
function isInputRecord(value) {
|
|
41
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
42
|
+
}
|
|
43
|
+
function isToolHookInput(value) {
|
|
44
|
+
if (!isInputRecord(value)) return false;
|
|
45
|
+
if (typeof value.tool_name !== "string" || value.tool_name.length === 0) return false;
|
|
46
|
+
if (!isInputRecord(value.tool_input)) return false;
|
|
47
|
+
for (const field of OPTIONAL_TEXT_FIELDS) {
|
|
48
|
+
if (value[field] !== void 0 && typeof value[field] !== "string") return false;
|
|
49
|
+
}
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
function parseToolHookInput(value) {
|
|
53
|
+
if (!isInputRecord(value)) return null;
|
|
54
|
+
const input = { ...value, tool_input: value.tool_input === void 0 ? {} : value.tool_input };
|
|
55
|
+
return isToolHookInput(input) ? input : null;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// src/admission.ts
|
|
59
|
+
import { readFileSync } from "fs";
|
|
60
|
+
import { homedir } from "os";
|
|
61
|
+
import { join as join2 } from "path";
|
|
62
|
+
|
|
63
|
+
// src/cursor-gate-registration.ts
|
|
64
|
+
import { dirname, isAbsolute, join, resolve } from "path";
|
|
65
|
+
var FIRST_PLUGIN_VERSION_HANDLING = {
|
|
66
|
+
beforeShellExecution: [0, 1, 0],
|
|
67
|
+
beforeMCPExecution: [0, 2, 1],
|
|
68
|
+
preToolUse: [0, 2, 2]
|
|
69
|
+
};
|
|
70
|
+
var COMMAND_HOOK_TYPE = "command";
|
|
71
|
+
var PLUGIN_MANIFEST = join(".cursor-plugin", "plugin.json");
|
|
72
|
+
var NO_SPOTLIGHT = () => [];
|
|
73
|
+
var executableName = (executable) => executable.split(/[/\\]/).pop() ?? "";
|
|
74
|
+
var isCursorGateScript = (executable) => executableName(executable) === CURSOR_GATE_SCRIPT;
|
|
75
|
+
var fromHooksDirectory = (path, environment) => isAbsolute(path) ? path : resolve(dirname(environment.hooksFile), path);
|
|
76
|
+
var pluginManifestBeside = (script) => join(dirname(dirname(script)), PLUGIN_MANIFEST);
|
|
77
|
+
var versionIn = (manifest) => {
|
|
78
|
+
try {
|
|
79
|
+
const parsed = JSON.parse(manifest);
|
|
80
|
+
return isRecord(parsed) && typeof parsed.version === "string" && HOOK_VERSION_PATTERN.test(parsed.version) ? parseVersion(parsed.version) : null;
|
|
81
|
+
} catch {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
var pluginVersionOf = (script, probe) => {
|
|
86
|
+
const manifest = probe.readFile(pluginManifestBeside(script));
|
|
87
|
+
return manifest === null ? null : versionIn(manifest);
|
|
88
|
+
};
|
|
89
|
+
var gateScriptHandles = (script, event, probe) => {
|
|
90
|
+
if (!probe.exists(script)) return false;
|
|
91
|
+
const version = pluginVersionOf(script, probe);
|
|
92
|
+
return version !== null && atLeast(version, FIRST_PLUGIN_VERSION_HANDLING[event]);
|
|
93
|
+
};
|
|
94
|
+
var appBundleResolves = (locator, probe) => resolveBridgeStub(locator, { ...probe, mdfind: NO_SPOTLIGHT }).kind === "bundle";
|
|
95
|
+
var isLiveCursorGateCommand = (command, event, environment) => {
|
|
96
|
+
const executable = pusharyHookExecutable(command);
|
|
97
|
+
if (executable === null) return false;
|
|
98
|
+
const target = fromHooksDirectory(executable, environment);
|
|
99
|
+
if (isCursorGateScript(executable)) return gateScriptHandles(target, event, environment.probe);
|
|
100
|
+
return isBridgeLocator(executable) && appBundleResolves(target, environment.probe);
|
|
101
|
+
};
|
|
102
|
+
var isCommandHook = (entry) => entry.type === void 0 || entry.type === COMMAND_HOOK_TYPE;
|
|
103
|
+
var entriesOn = (hooks, event) => {
|
|
104
|
+
const entries = Object.hasOwn(hooks, event) ? hooks[event] : void 0;
|
|
105
|
+
return Array.isArray(entries) ? entries.filter(isRecord) : [];
|
|
106
|
+
};
|
|
107
|
+
var runsALiveGate = (entry, event, isLiveGate) => isCommandHook(entry) && typeof entry.command === "string" && isLiveGate(entry.command, event);
|
|
108
|
+
var toolsCoveredOn = (hooks, coverage, isLiveGate) => entriesOn(hooks, coverage.event).filter((entry) => runsALiveGate(entry, coverage.event, isLiveGate)).flatMap((entry) => toolsCoveredByGateEntry(coverage, entry.matcher) ?? []);
|
|
109
|
+
var cursorGateRegistrationOf = (document, isLiveGate) => {
|
|
110
|
+
if (!isRecord(document) || !isRecord(document.hooks)) return NO_CURSOR_GATE;
|
|
111
|
+
const hooks = document.hooks;
|
|
112
|
+
return CURSOR_GATE_COVERAGE.flatMap((coverage) => toolsCoveredOn(hooks, coverage, isLiveGate));
|
|
113
|
+
};
|
|
114
|
+
var userCursorGateEnvironment = () => ({ hooksFile: cursorUserHooks(), probe: liveBridgeProbe() });
|
|
115
|
+
var readCursorGateRegistration = (environment = userCursorGateEnvironment()) => {
|
|
116
|
+
try {
|
|
117
|
+
const raw = environment.probe.readFile(environment.hooksFile);
|
|
118
|
+
if (raw === null) return NO_CURSOR_GATE;
|
|
119
|
+
return cursorGateRegistrationOf(JSON.parse(raw), (command, event) => isLiveCursorGateCommand(command, event, environment));
|
|
120
|
+
} catch {
|
|
121
|
+
return NO_CURSOR_GATE;
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
var cursorGateOwnsClaudeCall = (payload, readRegistration) => isCursorHookPayload(payload) && cursorGateOwnsToolCall(readRegistration(), payload.tool_name);
|
|
125
|
+
|
|
126
|
+
// src/admission.ts
|
|
127
|
+
var NO_RULES = { version: 1, disabled: [] };
|
|
128
|
+
var SUPPORTED_VERSION = 1;
|
|
129
|
+
var parseAdmissionRules = (raw) => {
|
|
130
|
+
if (!raw) return NO_RULES;
|
|
131
|
+
try {
|
|
132
|
+
const parsed = JSON.parse(raw);
|
|
133
|
+
if (parsed.version !== SUPPORTED_VERSION) return NO_RULES;
|
|
134
|
+
if (!Array.isArray(parsed.disabled)) return NO_RULES;
|
|
135
|
+
return {
|
|
136
|
+
version: SUPPORTED_VERSION,
|
|
137
|
+
disabled: parsed.disabled.filter((rule) => typeof rule === "string")
|
|
138
|
+
};
|
|
139
|
+
} catch {
|
|
140
|
+
return NO_RULES;
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
var admissionRulesFile = () => process.env.PUSHARY_ADMISSION_FILE?.trim() || join2(homedir(), ".pushary", "admission-rules.json");
|
|
144
|
+
var readAdmissionRules = () => {
|
|
145
|
+
try {
|
|
146
|
+
return parseAdmissionRules(readFileSync(admissionRulesFile(), "utf-8"));
|
|
147
|
+
} catch {
|
|
148
|
+
return NO_RULES;
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
var matches = (rule, source, event) => {
|
|
152
|
+
const colon = rule.indexOf(":");
|
|
153
|
+
if (colon <= 0 || colon === rule.length - 1) return false;
|
|
154
|
+
const ruleSource = rule.slice(0, colon);
|
|
155
|
+
const ruleEvent = rule.slice(colon + 1);
|
|
156
|
+
return (ruleSource === "*" || ruleSource === source) && (ruleEvent === "*" || ruleEvent === event);
|
|
157
|
+
};
|
|
158
|
+
var isAdmitted = (rules, source, event) => !rules.disabled.some((rule) => matches(rule, source, event));
|
|
159
|
+
var UNREADABLE = { kind: "unreadable" };
|
|
160
|
+
var UNKNOWN_AGENT = { kind: "unknown_agent" };
|
|
161
|
+
var GATED_BY_CURSOR = { kind: "gated_by_cursor" };
|
|
162
|
+
var readHookInputOutcome = async (source, fallbackEvent = "", stdin = process.stdin, parseInput, { cursorGateOwnsCall } = {}) => {
|
|
163
|
+
if (source === null) {
|
|
164
|
+
writeDegraded("hook", {
|
|
165
|
+
reason: "unknown_agent",
|
|
166
|
+
fallback: "stood aside, so nothing is gated or reported for this call",
|
|
167
|
+
event: fallbackEvent
|
|
168
|
+
});
|
|
169
|
+
return UNKNOWN_AGENT;
|
|
170
|
+
}
|
|
171
|
+
let raw = "";
|
|
172
|
+
for await (const chunk of stdin) raw += chunk;
|
|
173
|
+
if (!raw.trim()) return UNREADABLE;
|
|
174
|
+
let parsed;
|
|
175
|
+
try {
|
|
176
|
+
parsed = JSON.parse(raw);
|
|
177
|
+
} catch {
|
|
178
|
+
return UNREADABLE;
|
|
179
|
+
}
|
|
180
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return UNREADABLE;
|
|
181
|
+
if (source !== "grok" && process.env.GROK_SESSION_ID && isGrokHookPayload(parsed)) return UNREADABLE;
|
|
182
|
+
if (cursorGateOwnsCall?.(parsed)) return GATED_BY_CURSOR;
|
|
183
|
+
const shaped = inClaudeShape(source, namedEvent(process.argv) ?? fallbackEvent, parsed);
|
|
184
|
+
if (source === "grok" && isGrokSessionEndStop(shaped.hook_event_name, shaped.reason)) return UNREADABLE;
|
|
185
|
+
const input = parseInput ? parseInput(shaped) : shaped;
|
|
186
|
+
if (input === null) return UNREADABLE;
|
|
187
|
+
const event = eventNameOf(input) ?? fallbackEvent;
|
|
188
|
+
if (!isAdmitted(readAdmissionRules(), source, event)) return { kind: "not_admitted", input };
|
|
189
|
+
if (stdin === process.stdin) registerTranscript(source, input);
|
|
190
|
+
return { kind: "admitted", input };
|
|
191
|
+
};
|
|
192
|
+
var admittedInput = (read) => read.kind === "admitted" ? read.input : null;
|
|
193
|
+
var readHookInput = async (source, fallbackEvent = "", stdin = process.stdin, parseInput) => admittedInput(await readHookInputOutcome(source, fallbackEvent, stdin, parseInput));
|
|
194
|
+
var inClaudeShape = (source, event, parsed) => {
|
|
195
|
+
const profile = hookCompatibleProfileBySource(source);
|
|
196
|
+
return profile ? claudeShapedHookInput(profile.payload, event, parsed) : parsed;
|
|
197
|
+
};
|
|
198
|
+
var eventNameOf = (input) => {
|
|
199
|
+
if (!("hook_event_name" in input)) return void 0;
|
|
200
|
+
const name = input.hook_event_name;
|
|
201
|
+
return typeof name === "string" && name.length > 0 ? name : void 0;
|
|
202
|
+
};
|
|
203
|
+
function readToolHookInput(source, event, stdin = process.stdin) {
|
|
204
|
+
return readHookInput(source, event, stdin, parseToolHookInput);
|
|
205
|
+
}
|
|
206
|
+
var isClaudePreToolUse = (source, event) => source === "claude" && event === "PreToolUse";
|
|
207
|
+
var screenFor = (source, event, readCursorGate) => isClaudePreToolUse(source, event) ? { cursorGateOwnsCall: (payload) => cursorGateOwnsClaudeCall(payload, readCursorGate) } : {};
|
|
208
|
+
function readToolHookCall(source, event, stdin = process.stdin, { readCursorGate = readCursorGateRegistration } = {}) {
|
|
209
|
+
return readHookInputOutcome(source, event, stdin, parseToolHookInput, screenFor(source, event, readCursorGate));
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export {
|
|
213
|
+
readHookInput,
|
|
214
|
+
readToolHookInput,
|
|
215
|
+
readToolHookCall
|
|
216
|
+
};
|
|
@@ -22,23 +22,23 @@ import {
|
|
|
22
22
|
turnCodexAppCardsOff,
|
|
23
23
|
turnCodexAppCardsOn,
|
|
24
24
|
whyLaunchctlFailed
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-OU3BYBJ3.js";
|
|
26
|
+
import "./chunk-5JK3DQGZ.js";
|
|
27
27
|
import "./chunk-XCEN33UP.js";
|
|
28
28
|
import "./chunk-QCGNGEGE.js";
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-4WFAP6QN.js";
|
|
30
30
|
import "./chunk-XHKBHWLX.js";
|
|
31
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-IOH2T3CB.js";
|
|
32
32
|
import "./chunk-E46NE7FB.js";
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-MWLTTLPK.js";
|
|
36
|
-
import "./chunk-CJ5TCFD4.js";
|
|
33
|
+
import "./chunk-L5CDGXPO.js";
|
|
34
|
+
import "./chunk-V5W3CK7F.js";
|
|
37
35
|
import "./chunk-QENTGE75.js";
|
|
38
|
-
import "./chunk-
|
|
39
|
-
import "./chunk-
|
|
36
|
+
import "./chunk-MK4USZYQ.js";
|
|
37
|
+
import "./chunk-5LOP4AVD.js";
|
|
38
|
+
import "./chunk-BUQU3OPX.js";
|
|
39
|
+
import "./chunk-6Z2VR3BA.js";
|
|
40
40
|
import "./chunk-QTOLNRET.js";
|
|
41
|
-
import "./chunk-
|
|
41
|
+
import "./chunk-7NCLUA65.js";
|
|
42
42
|
import "./chunk-MLKGABMK.js";
|
|
43
43
|
export {
|
|
44
44
|
CODEX_APP_CARDS_DIRECTORY,
|
|
@@ -11,36 +11,36 @@ import {
|
|
|
11
11
|
isCodexQuestionLeftWithTheLocalClient,
|
|
12
12
|
planCodexElicitation,
|
|
13
13
|
reportOwnedQuestion
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-P6RF4RQN.js";
|
|
15
|
+
import "./chunk-OP5IBEV7.js";
|
|
16
|
+
import "./chunk-HOIO66DU.js";
|
|
17
|
+
import "./chunk-OY6Z4IKB.js";
|
|
18
|
+
import "./chunk-CLABCSZC.js";
|
|
19
19
|
import "./chunk-VUFHYMSP.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-BCVCUDFI.js";
|
|
21
|
+
import "./chunk-V7N5NOZV.js";
|
|
22
22
|
import "./chunk-XHKBHWLX.js";
|
|
23
23
|
import "./chunk-6ICPEJY5.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-7GRQGXF4.js";
|
|
25
25
|
import {
|
|
26
26
|
writeDegraded
|
|
27
|
-
} from "./chunk-
|
|
28
|
-
import "./chunk-XAO6EYGM.js";
|
|
27
|
+
} from "./chunk-TBKHQWIH.js";
|
|
29
28
|
import "./chunk-POFBE6ZY.js";
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-ELAK46NR.js";
|
|
30
|
+
import "./chunk-AB3VAQ25.js";
|
|
31
|
+
import "./chunk-VFJSVPNL.js";
|
|
32
|
+
import "./chunk-L5CDGXPO.js";
|
|
33
33
|
import "./chunk-PPY5N2E6.js";
|
|
34
34
|
import "./chunk-KZERVKTD.js";
|
|
35
|
-
import "./chunk-MWLTTLPK.js";
|
|
36
|
-
import "./chunk-CJ5TCFD4.js";
|
|
37
35
|
import "./chunk-QENTGE75.js";
|
|
38
|
-
import "./chunk-
|
|
39
|
-
import "./chunk-
|
|
36
|
+
import "./chunk-MK4USZYQ.js";
|
|
37
|
+
import "./chunk-5LOP4AVD.js";
|
|
38
|
+
import "./chunk-BUQU3OPX.js";
|
|
39
|
+
import "./chunk-6Z2VR3BA.js";
|
|
40
40
|
import "./chunk-QTOLNRET.js";
|
|
41
41
|
import {
|
|
42
42
|
canonicalJsonText
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-7NCLUA65.js";
|
|
44
44
|
import "./chunk-MLKGABMK.js";
|
|
45
45
|
|
|
46
46
|
// src/codex-session-launch.ts
|
|
@@ -3,9 +3,9 @@ import {
|
|
|
3
3
|
getApiKey,
|
|
4
4
|
getBaseUrl,
|
|
5
5
|
resetKeyDriftWarning
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-BUQU3OPX.js";
|
|
7
|
+
import "./chunk-6Z2VR3BA.js";
|
|
8
|
+
import "./chunk-7NCLUA65.js";
|
|
9
9
|
import "./chunk-MLKGABMK.js";
|
|
10
10
|
export {
|
|
11
11
|
configFilePath,
|
|
@@ -7,21 +7,21 @@ import {
|
|
|
7
7
|
recordUnfinishedUpgrade,
|
|
8
8
|
upgradeInstalledPackage,
|
|
9
9
|
withUpgradeLock
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-EQ26IKZM.js";
|
|
11
|
+
import "./chunk-PIQ4HHA2.js";
|
|
12
|
+
import "./chunk-HOIO66DU.js";
|
|
13
|
+
import "./chunk-OY6Z4IKB.js";
|
|
14
14
|
import "./chunk-VUFHYMSP.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-PJ34FOIV.js";
|
|
16
16
|
import "./chunk-6ICPEJY5.js";
|
|
17
17
|
import "./chunk-POFBE6ZY.js";
|
|
18
18
|
import "./chunk-KZERVKTD.js";
|
|
19
|
-
import "./chunk-MWLTTLPK.js";
|
|
20
|
-
import "./chunk-CJ5TCFD4.js";
|
|
21
19
|
import "./chunk-QENTGE75.js";
|
|
22
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-MK4USZYQ.js";
|
|
21
|
+
import "./chunk-5LOP4AVD.js";
|
|
22
|
+
import "./chunk-6Z2VR3BA.js";
|
|
23
23
|
import "./chunk-QTOLNRET.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-7NCLUA65.js";
|
|
25
25
|
import "./chunk-MLKGABMK.js";
|
|
26
26
|
export {
|
|
27
27
|
finishGlobalUpgrade,
|
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
getMachineId,
|
|
3
3
|
getOrCreateMachineId,
|
|
4
4
|
readExistingMachineId
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-MWLTTLPK.js";
|
|
7
|
-
import "./chunk-CJ5TCFD4.js";
|
|
5
|
+
} from "./chunk-L5CDGXPO.js";
|
|
8
6
|
import "./chunk-QENTGE75.js";
|
|
7
|
+
import "./chunk-MK4USZYQ.js";
|
|
8
|
+
import "./chunk-5LOP4AVD.js";
|
|
9
9
|
import "./chunk-QTOLNRET.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-7NCLUA65.js";
|
|
11
11
|
import "./chunk-MLKGABMK.js";
|
|
12
12
|
export {
|
|
13
13
|
getMachineId,
|
|
@@ -22,14 +22,14 @@ import {
|
|
|
22
22
|
resolveControlPolicy,
|
|
23
23
|
resolveProviderBinary,
|
|
24
24
|
trackProviderInventory
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-HOIO66DU.js";
|
|
26
|
+
import "./chunk-OY6Z4IKB.js";
|
|
27
27
|
import "./chunk-VUFHYMSP.js";
|
|
28
28
|
import "./chunk-6ICPEJY5.js";
|
|
29
|
-
import "./chunk-CJ5TCFD4.js";
|
|
30
29
|
import "./chunk-QENTGE75.js";
|
|
30
|
+
import "./chunk-5LOP4AVD.js";
|
|
31
31
|
import "./chunk-QTOLNRET.js";
|
|
32
|
-
import "./chunk-
|
|
32
|
+
import "./chunk-7NCLUA65.js";
|
|
33
33
|
import "./chunk-MLKGABMK.js";
|
|
34
34
|
export {
|
|
35
35
|
CLAUDE_BRIDGE_CAPABILITY,
|
|
@@ -33,10 +33,10 @@ import {
|
|
|
33
33
|
serviceOwedBackMark,
|
|
34
34
|
vscodePluginDir,
|
|
35
35
|
vscodePluginMcp
|
|
36
|
-
} from "./chunk-
|
|
37
|
-
import "./chunk-
|
|
36
|
+
} from "./chunk-MK4USZYQ.js";
|
|
37
|
+
import "./chunk-5LOP4AVD.js";
|
|
38
38
|
import "./chunk-QTOLNRET.js";
|
|
39
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-7NCLUA65.js";
|
|
40
40
|
import "./chunk-MLKGABMK.js";
|
|
41
41
|
export {
|
|
42
42
|
autoUpdateLock,
|
|
@@ -11,41 +11,42 @@ import {
|
|
|
11
11
|
reapplyOpenCodePlugin,
|
|
12
12
|
reapplyVsCodePlugin,
|
|
13
13
|
repairCodexHolds
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-OW6VBXXI.js";
|
|
15
|
+
import "./chunk-YK6GR4GU.js";
|
|
16
|
+
import "./chunk-DMNLFWGY.js";
|
|
17
|
+
import "./chunk-S2Z6VWHH.js";
|
|
18
|
+
import "./chunk-WUOOZE5S.js";
|
|
19
|
+
import "./chunk-LTT54NOU.js";
|
|
20
|
+
import "./chunk-OY6Z4IKB.js";
|
|
20
21
|
import "./chunk-VUFHYMSP.js";
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-3QLFB2EY.js";
|
|
23
|
+
import "./chunk-SKUSGWFK.js";
|
|
24
|
+
import "./chunk-BQFL2ECS.js";
|
|
25
|
+
import "./chunk-XE5N352V.js";
|
|
26
|
+
import "./chunk-KLZZI5TU.js";
|
|
26
27
|
import "./chunk-NMUI3ZWG.js";
|
|
27
28
|
import "./chunk-XHKBHWLX.js";
|
|
28
29
|
import "./chunk-6ICPEJY5.js";
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-XAO6EYGM.js";
|
|
30
|
+
import "./chunk-IOH2T3CB.js";
|
|
31
|
+
import "./chunk-PXAOEFJZ.js";
|
|
32
|
+
import "./chunk-VC3HFFMQ.js";
|
|
33
|
+
import "./chunk-7GRQGXF4.js";
|
|
34
|
+
import "./chunk-TBKHQWIH.js";
|
|
35
35
|
import "./chunk-POFBE6ZY.js";
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-
|
|
36
|
+
import "./chunk-ELAK46NR.js";
|
|
37
|
+
import "./chunk-AB3VAQ25.js";
|
|
38
|
+
import "./chunk-VFJSVPNL.js";
|
|
39
|
+
import "./chunk-L5CDGXPO.js";
|
|
39
40
|
import "./chunk-PPY5N2E6.js";
|
|
40
41
|
import "./chunk-KZERVKTD.js";
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-MWLTTLPK.js";
|
|
43
|
-
import "./chunk-CJ5TCFD4.js";
|
|
42
|
+
import "./chunk-V5W3CK7F.js";
|
|
44
43
|
import "./chunk-QENTGE75.js";
|
|
45
|
-
import "./chunk-
|
|
46
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-MK4USZYQ.js";
|
|
45
|
+
import "./chunk-5LOP4AVD.js";
|
|
46
|
+
import "./chunk-BUQU3OPX.js";
|
|
47
|
+
import "./chunk-6Z2VR3BA.js";
|
|
47
48
|
import "./chunk-QTOLNRET.js";
|
|
48
|
-
import "./chunk-
|
|
49
|
+
import "./chunk-7NCLUA65.js";
|
|
49
50
|
import "./chunk-MLKGABMK.js";
|
|
50
51
|
export {
|
|
51
52
|
ensureCodexTrustAfterReapply,
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
handlePreToolUse
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
8
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-QC2W42DE.js";
|
|
4
|
+
import "../chunk-2MZ6ROWZ.js";
|
|
5
|
+
import "../chunk-XO3KAH7K.js";
|
|
6
|
+
import "../chunk-KL76XWZ7.js";
|
|
7
|
+
import "../chunk-3QLFB2EY.js";
|
|
8
|
+
import "../chunk-BQFL2ECS.js";
|
|
9
9
|
import {
|
|
10
10
|
fetchAccountPublicKey
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-V7N5NOZV.js";
|
|
12
12
|
import "../chunk-6ICPEJY5.js";
|
|
13
13
|
import {
|
|
14
14
|
fetchModeOverride,
|
|
@@ -18,34 +18,34 @@ import {
|
|
|
18
18
|
handlePostToolUse,
|
|
19
19
|
handleStop,
|
|
20
20
|
reportEvent
|
|
21
|
-
} from "../chunk-
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-
|
|
21
|
+
} from "../chunk-PXAOEFJZ.js";
|
|
22
|
+
import "../chunk-VC3HFFMQ.js";
|
|
23
|
+
import "../chunk-7GRQGXF4.js";
|
|
24
24
|
import {
|
|
25
25
|
askUser,
|
|
26
26
|
cancelQuestion,
|
|
27
27
|
waitForAnswer
|
|
28
|
-
} from "../chunk-
|
|
29
|
-
import "../chunk-XAO6EYGM.js";
|
|
28
|
+
} from "../chunk-TBKHQWIH.js";
|
|
30
29
|
import "../chunk-POFBE6ZY.js";
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
30
|
+
import "../chunk-ELAK46NR.js";
|
|
31
|
+
import "../chunk-AB3VAQ25.js";
|
|
32
|
+
import "../chunk-VFJSVPNL.js";
|
|
33
|
+
import "../chunk-L5CDGXPO.js";
|
|
34
34
|
import "../chunk-PPY5N2E6.js";
|
|
35
35
|
import "../chunk-KZERVKTD.js";
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-MWLTTLPK.js";
|
|
38
|
-
import "../chunk-CJ5TCFD4.js";
|
|
36
|
+
import "../chunk-V5W3CK7F.js";
|
|
39
37
|
import "../chunk-QENTGE75.js";
|
|
38
|
+
import "../chunk-MK4USZYQ.js";
|
|
39
|
+
import "../chunk-5LOP4AVD.js";
|
|
40
40
|
import {
|
|
41
41
|
getApiKey,
|
|
42
42
|
getBaseUrl
|
|
43
|
-
} from "../chunk-
|
|
44
|
-
import "../chunk-
|
|
43
|
+
} from "../chunk-BUQU3OPX.js";
|
|
44
|
+
import "../chunk-6Z2VR3BA.js";
|
|
45
45
|
import "../chunk-QTOLNRET.js";
|
|
46
46
|
import {
|
|
47
47
|
resolvePolicy
|
|
48
|
-
} from "../chunk-
|
|
48
|
+
} from "../chunk-7NCLUA65.js";
|
|
49
49
|
import "../chunk-MLKGABMK.js";
|
|
50
50
|
export {
|
|
51
51
|
askUser,
|
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
installWithUpgradeLock,
|
|
5
5
|
ownsUpgradeLock,
|
|
6
6
|
releaseAutoUpdateLock
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-MWLTTLPK.js";
|
|
9
|
-
import "./chunk-CJ5TCFD4.js";
|
|
7
|
+
} from "./chunk-PIQ4HHA2.js";
|
|
10
8
|
import "./chunk-QENTGE75.js";
|
|
9
|
+
import "./chunk-MK4USZYQ.js";
|
|
10
|
+
import "./chunk-5LOP4AVD.js";
|
|
11
11
|
import "./chunk-QTOLNRET.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-7NCLUA65.js";
|
|
13
13
|
import "./chunk-MLKGABMK.js";
|
|
14
14
|
export {
|
|
15
15
|
claimUpgradeLock,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exitOnHelpFlag
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-75ODMNOM.js";
|
|
4
4
|
import "./chunk-KZERVKTD.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-6Z2VR3BA.js";
|
|
6
6
|
import "./chunk-QTOLNRET.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-7NCLUA65.js";
|
|
8
8
|
import "./chunk-MLKGABMK.js";
|
|
9
9
|
export {
|
|
10
10
|
exitOnHelpFlag
|