@pushary/agent-hooks 0.98.0 → 1.0.0
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 +24 -0
- package/dist/bin/pushary-bell-hook.js +20 -19
- package/dist/bin/pushary-bell.js +7 -6
- package/dist/bin/pushary-claude.js +24 -25
- package/dist/bin/pushary-clean.js +61 -18
- package/dist/bin/pushary-codex-bridge.js +11 -10
- package/dist/bin/pushary-codex-hook.js +43 -35
- package/dist/bin/pushary-codex.js +7 -7
- package/dist/bin/pushary-connect.js +7 -6
- package/dist/bin/pushary-cowork.js +3 -3
- package/dist/bin/pushary-daemon.js +24 -23
- package/dist/bin/pushary-disconnect.js +48 -7
- package/dist/bin/pushary-doctor.js +61 -21
- package/dist/bin/pushary-elicitation-hook.js +19 -18
- package/dist/bin/pushary-gemini-bridge.js +10 -9
- package/dist/bin/pushary-gemini-hook.js +27 -28
- package/dist/bin/pushary-hook.js +63 -34
- package/dist/bin/pushary-login.js +8 -7
- package/dist/bin/pushary-logout.js +5 -4
- package/dist/bin/pushary-mode.js +3 -3
- package/dist/bin/pushary-notification-hook.js +28 -22
- package/dist/bin/pushary-opencode-hook.js +29 -30
- package/dist/bin/pushary-permission-denied-hook.js +26 -24
- package/dist/bin/pushary-permission-hook.js +34 -25
- package/dist/bin/pushary-post-hook.js +32 -23
- package/dist/bin/pushary-prompt-hook.js +28 -22
- package/dist/bin/pushary-session-end-hook.js +28 -22
- package/dist/bin/pushary-session-start-hook.js +32 -26
- package/dist/bin/pushary-setup.js +146 -37
- package/dist/bin/pushary-stats.js +2 -2
- package/dist/bin/pushary-status.js +11 -10
- package/dist/bin/pushary-stop-hook.js +29 -23
- package/dist/bin/pushary-stopfailure-hook.js +28 -22
- package/dist/bin/pushary-transcript-register.js +18 -17
- package/dist/bin/pushary-transcripts.js +6 -5
- package/dist/bin/pushary-upgrade.js +15 -14
- package/dist/bin/pushary-wait.js +3 -3
- package/dist/{chunk-HFQ7WSHZ.js → chunk-2PS3DTHQ.js} +7 -4
- package/dist/{chunk-W2MG2P46.js → chunk-2SL5X7UB.js} +9 -6
- package/dist/{chunk-53QCTSWY.js → chunk-3C4ERARU.js} +4 -4
- package/dist/{chunk-LBNAGGLV.js → chunk-3UUAK2AK.js} +3 -2
- package/dist/{chunk-V47GITZV.js → chunk-447SBIC7.js} +15 -2
- package/dist/{chunk-VZD2GEKB.js → chunk-4LL6LG5X.js} +1 -43
- package/dist/{chunk-WU6LSXJ6.js → chunk-7WMFPYR5.js} +2 -2
- package/dist/{chunk-XPPXOKIG.js → chunk-7ZDFVWRR.js} +1 -1
- package/dist/chunk-A3D43VXO.js +44 -0
- package/dist/{chunk-3RVCQDC4.js → chunk-BOZETFXB.js} +1 -1
- package/dist/{chunk-LX4NNYII.js → chunk-BPD4P3NN.js} +2 -2
- package/dist/{chunk-IRLTW6KF.js → chunk-CDTGL7TT.js} +1 -1
- package/dist/{chunk-CP34FI4B.js → chunk-D2N2EJH2.js} +2 -2
- package/dist/{chunk-J44RPHUZ.js → chunk-DMJTWULU.js} +2 -2
- package/dist/{chunk-SJLGOVC6.js → chunk-DOYARIYB.js} +4 -2
- package/dist/{chunk-XOOWC62T.js → chunk-DUOG74E7.js} +1 -1
- package/dist/{chunk-OPR2BPD4.js → chunk-EMCNSBF3.js} +1 -1
- package/dist/{chunk-5KLAETSU.js → chunk-GTR72MIU.js} +1 -1
- package/dist/{chunk-5B5QV3KC.js → chunk-HGEI7SVM.js} +8 -8
- package/dist/chunk-HS2KEAFD.js +224 -0
- package/dist/{chunk-6CYB77VD.js → chunk-I3TWY7GH.js} +30 -29
- package/dist/{chunk-NQGYPTJQ.js → chunk-IBU7UU3R.js} +1 -1
- package/dist/{chunk-M4TVEMLH.js → chunk-IWZG2Y4Z.js} +1 -1
- package/dist/{chunk-TZHDKRMG.js → chunk-IYA3NCZG.js} +2 -2
- package/dist/{chunk-XL3RKJYQ.js → chunk-LTPQKBJH.js} +65 -30
- package/dist/{chunk-YJDRHQLG.js → chunk-MDV7ZRAT.js} +698 -43
- package/dist/{chunk-QXIF6R4P.js → chunk-MGI6MLFU.js} +16 -16
- package/dist/{chunk-DOD3A6EU.js → chunk-MSOFZYI3.js} +4 -4
- package/dist/{chunk-JQU6PMH4.js → chunk-R744XA2M.js} +62 -45
- package/dist/{chunk-FAJ4R7IB.js → chunk-RFNMSC6N.js} +1 -1
- package/dist/{chunk-NIXVMMJM.js → chunk-S2W4ZSHE.js} +1 -1
- package/dist/{chunk-OUAE3GKO.js → chunk-TTBRBWAK.js} +278 -1
- package/dist/{chunk-6C6MS57P.js → chunk-TVY7AT6O.js} +1 -1
- package/dist/{chunk-2GLOHBYB.js → chunk-UWQVODHT.js} +1 -1
- package/dist/{chunk-6LRGZJFB.js → chunk-XK34HTMW.js} +10 -6
- package/dist/{chunk-SI7GYBQP.js → chunk-XKDKUFMP.js} +1 -1
- package/dist/{chunk-HB2KB7QL.js → chunk-XNXIMIFY.js} +1 -1
- package/dist/{chunk-K6CH5NVW.js → chunk-Y55JNI2I.js} +1 -1
- package/dist/{chunk-OBYC6SN4.js → chunk-YKLCWWEI.js} +1 -1
- package/dist/{chunk-B35OCFXH.js → chunk-ZZIUQVAN.js} +4 -4
- package/dist/reapply-I4NB5SSM.js +30 -0
- package/dist/src/index.js +13 -10
- package/package.json +1 -1
- package/dist/chunk-A76GNRIK.js +0 -608
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import {
|
|
3
3
|
coworkOutput,
|
|
4
4
|
parseCoworkOptions
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-D2N2EJH2.js";
|
|
6
6
|
import {
|
|
7
7
|
canOpenBrowser,
|
|
8
8
|
openInBrowser
|
|
9
9
|
} from "../chunk-PUZZELE6.js";
|
|
10
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-3UUAK2AK.js";
|
|
11
11
|
import {
|
|
12
12
|
exitOnHelpFlag
|
|
13
13
|
} from "../chunk-GOQHN2UH.js";
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "../chunk-KZERVKTD.js";
|
|
23
23
|
import {
|
|
24
24
|
CLAUDE_CONNECTOR_GUIDE
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-TTBRBWAK.js";
|
|
26
26
|
|
|
27
27
|
// bin/pushary-cowork.ts
|
|
28
28
|
exitOnHelpFlag("cowork");
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
inspectConfiguredManagedProviders
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-R744XA2M.js";
|
|
5
|
+
import "../chunk-Y55JNI2I.js";
|
|
6
6
|
import {
|
|
7
7
|
HEARTBEAT_INTERVAL_MS,
|
|
8
8
|
sendHeartbeat
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
9
|
+
} from "../chunk-ZZIUQVAN.js";
|
|
10
|
+
import "../chunk-MGI6MLFU.js";
|
|
11
11
|
import {
|
|
12
12
|
detectProviderLiveCapabilities,
|
|
13
13
|
hasSpawnProvider,
|
|
14
14
|
resolveControlPolicy
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-IYA3NCZG.js";
|
|
16
16
|
import {
|
|
17
17
|
SESSION_REAP_SILENCE_MS,
|
|
18
18
|
describeIdleWindow,
|
|
@@ -20,15 +20,15 @@ import {
|
|
|
20
20
|
listProcessProofs,
|
|
21
21
|
ownsLiveProcess,
|
|
22
22
|
silentSpawnedProofs
|
|
23
|
-
} from "../chunk-
|
|
23
|
+
} from "../chunk-DMJTWULU.js";
|
|
24
24
|
import {
|
|
25
25
|
startRegisteredTranscripts
|
|
26
|
-
} from "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
26
|
+
} from "../chunk-HGEI7SVM.js";
|
|
27
|
+
import "../chunk-YKLCWWEI.js";
|
|
28
|
+
import "../chunk-2SL5X7UB.js";
|
|
29
|
+
import "../chunk-3UUAK2AK.js";
|
|
30
|
+
import "../chunk-CDTGL7TT.js";
|
|
31
|
+
import "../chunk-XK34HTMW.js";
|
|
32
32
|
import {
|
|
33
33
|
DAEMON_LEASE_RENEW_INTERVAL_MS,
|
|
34
34
|
acquireDaemonLease,
|
|
@@ -45,22 +45,22 @@ import {
|
|
|
45
45
|
requestDaemonHandoff,
|
|
46
46
|
stopDaemonRunning,
|
|
47
47
|
writeDaemonNeedsLogin
|
|
48
|
-
} from "../chunk-
|
|
49
|
-
import "../chunk-
|
|
50
|
-
import "../chunk-
|
|
51
|
-
import "../chunk-
|
|
48
|
+
} from "../chunk-MSOFZYI3.js";
|
|
49
|
+
import "../chunk-2PS3DTHQ.js";
|
|
50
|
+
import "../chunk-UWQVODHT.js";
|
|
51
|
+
import "../chunk-7ZDFVWRR.js";
|
|
52
52
|
import "../chunk-EQRS3SGM.js";
|
|
53
|
-
import "../chunk-
|
|
53
|
+
import "../chunk-IBU7UU3R.js";
|
|
54
54
|
import {
|
|
55
55
|
spawnClaude
|
|
56
56
|
} from "../chunk-XHKBHWLX.js";
|
|
57
|
-
import "../chunk-
|
|
57
|
+
import "../chunk-EMCNSBF3.js";
|
|
58
58
|
import {
|
|
59
59
|
getMachineId
|
|
60
|
-
} from "../chunk-
|
|
60
|
+
} from "../chunk-7WMFPYR5.js";
|
|
61
61
|
import {
|
|
62
62
|
resolveBinary
|
|
63
|
-
} from "../chunk-
|
|
63
|
+
} from "../chunk-LTPQKBJH.js";
|
|
64
64
|
import {
|
|
65
65
|
writeHuman
|
|
66
66
|
} from "../chunk-QCGNGEGE.js";
|
|
@@ -72,17 +72,18 @@ import "../chunk-GMXKITVA.js";
|
|
|
72
72
|
import "../chunk-DINDL2CF.js";
|
|
73
73
|
import {
|
|
74
74
|
readControlMode
|
|
75
|
-
} from "../chunk-
|
|
75
|
+
} from "../chunk-DOYARIYB.js";
|
|
76
76
|
import "../chunk-7QLSKOSU.js";
|
|
77
77
|
import {
|
|
78
78
|
EXIT
|
|
79
79
|
} from "../chunk-KZERVKTD.js";
|
|
80
|
-
import "../chunk-
|
|
80
|
+
import "../chunk-A3D43VXO.js";
|
|
81
|
+
import "../chunk-4LL6LG5X.js";
|
|
81
82
|
import {
|
|
82
83
|
getApiKey,
|
|
83
84
|
getBaseUrl
|
|
84
85
|
} from "../chunk-2UMNXADU.js";
|
|
85
|
-
import "../chunk-
|
|
86
|
+
import "../chunk-TTBRBWAK.js";
|
|
86
87
|
|
|
87
88
|
// src/spawn-daemon.ts
|
|
88
89
|
import { execFileSync, spawn } from "child_process";
|
|
@@ -8,17 +8,28 @@ import {
|
|
|
8
8
|
openCodePluginDir,
|
|
9
9
|
openCodePluginFile,
|
|
10
10
|
removeOpenCodeMcpServer
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-XNXIMIFY.js";
|
|
12
|
+
import {
|
|
13
|
+
compatibleConfigFile,
|
|
14
|
+
compatibleMcpFile,
|
|
15
|
+
compatiblePermissionRuleFile,
|
|
16
|
+
removeCompatibleHooks,
|
|
17
|
+
removeCompatibleMcpServer
|
|
18
|
+
} from "../chunk-HS2KEAFD.js";
|
|
12
19
|
import {
|
|
13
20
|
isClaudeMcpSnapshot,
|
|
14
21
|
removeClaudeMcpServers,
|
|
15
22
|
removePusharySettings,
|
|
23
|
+
removePusharyToolPermissions,
|
|
16
24
|
restoreClaudeMcpServer
|
|
17
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-MGI6MLFU.js";
|
|
18
26
|
import {
|
|
19
27
|
removeGeminiSettings
|
|
20
|
-
} from "../chunk-
|
|
21
|
-
import "../chunk-
|
|
28
|
+
} from "../chunk-2PS3DTHQ.js";
|
|
29
|
+
import "../chunk-MDV7ZRAT.js";
|
|
30
|
+
import "../chunk-EMCNSBF3.js";
|
|
31
|
+
import "../chunk-LGXUGYUH.js";
|
|
32
|
+
import "../chunk-7WMFPYR5.js";
|
|
22
33
|
import {
|
|
23
34
|
claudeJson,
|
|
24
35
|
claudeMcpReceipt,
|
|
@@ -32,16 +43,23 @@ import {
|
|
|
32
43
|
geminiSettings,
|
|
33
44
|
removeCodexHooks,
|
|
34
45
|
removeCodexSettings
|
|
35
|
-
} from "../chunk-
|
|
46
|
+
} from "../chunk-LTPQKBJH.js";
|
|
36
47
|
import {
|
|
37
48
|
exitOnHelpFlag
|
|
38
49
|
} from "../chunk-GOQHN2UH.js";
|
|
39
50
|
import "../chunk-LZQVAEWP.js";
|
|
40
51
|
import "../chunk-DINDL2CF.js";
|
|
52
|
+
import "../chunk-EYRGBYZG.js";
|
|
53
|
+
import "../chunk-SAF6HGAA.js";
|
|
54
|
+
import "../chunk-7QLSKOSU.js";
|
|
41
55
|
import "../chunk-KZERVKTD.js";
|
|
56
|
+
import "../chunk-A3D43VXO.js";
|
|
57
|
+
import "../chunk-4LL6LG5X.js";
|
|
58
|
+
import "../chunk-2UMNXADU.js";
|
|
42
59
|
import {
|
|
43
|
-
DISCONNECTABLE_AGENTS
|
|
44
|
-
|
|
60
|
+
DISCONNECTABLE_AGENTS,
|
|
61
|
+
hookCompatibleProfileBySource
|
|
62
|
+
} from "../chunk-TTBRBWAK.js";
|
|
45
63
|
|
|
46
64
|
// bin/pushary-disconnect.ts
|
|
47
65
|
import { readdirSync, readFileSync, rmSync, writeFileSync } from "fs";
|
|
@@ -103,8 +121,31 @@ var disconnectPlan = (agent) => {
|
|
|
103
121
|
// that is otherwise the person's own.
|
|
104
122
|
case "opencode":
|
|
105
123
|
return [{ path: openCodeConfigFile(), format: "json", remove: removeOpenCodeMcpServer }];
|
|
124
|
+
case "qwen":
|
|
125
|
+
case "codebuddy":
|
|
126
|
+
case "qoder":
|
|
127
|
+
case "droid":
|
|
128
|
+
case "devin":
|
|
129
|
+
return compatibleDisconnectPlan(agent);
|
|
106
130
|
}
|
|
107
131
|
};
|
|
132
|
+
var compatibleDisconnectPlan = (source) => {
|
|
133
|
+
const profile = hookCompatibleProfileBySource(source);
|
|
134
|
+
if (!profile) return [];
|
|
135
|
+
const removers = /* @__PURE__ */ new Map();
|
|
136
|
+
const add = (path, remove) => {
|
|
137
|
+
if (!path) return;
|
|
138
|
+
removers.set(path, [...removers.get(path) ?? [], remove]);
|
|
139
|
+
};
|
|
140
|
+
add(compatibleConfigFile(profile), (config) => removeCompatibleHooks(config, profile));
|
|
141
|
+
add(compatibleMcpFile(profile), (config) => removeCompatibleMcpServer(config, profile));
|
|
142
|
+
add(compatiblePermissionRuleFile(profile), removePusharyToolPermissions);
|
|
143
|
+
return [...removers].map(([path, edits]) => ({
|
|
144
|
+
path,
|
|
145
|
+
format: "json",
|
|
146
|
+
remove: (config) => edits.reduce((changed, edit) => edit(config) || changed, false)
|
|
147
|
+
}));
|
|
148
|
+
};
|
|
108
149
|
var disconnectRemovals = (agent) => {
|
|
109
150
|
if (agent !== "opencode") return [];
|
|
110
151
|
return [
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import {
|
|
10
10
|
readMachineReadiness,
|
|
11
11
|
readManagedControlEvidence
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-ZZIUQVAN.js";
|
|
13
13
|
import {
|
|
14
14
|
CURSOR_GATE_SCRIPT
|
|
15
15
|
} from "../chunk-KBITFQST.js";
|
|
@@ -20,29 +20,37 @@ import {
|
|
|
20
20
|
hasInstructionBlock,
|
|
21
21
|
isDetected,
|
|
22
22
|
isPluginRegistered,
|
|
23
|
+
shortenHome,
|
|
23
24
|
vscodeSettingsTargets
|
|
24
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-447SBIC7.js";
|
|
25
26
|
import {
|
|
26
27
|
OPENCODE_PLUGIN_PLACEHOLDER,
|
|
27
28
|
openCodePluginDir,
|
|
28
29
|
openCodePluginFile,
|
|
29
30
|
openCodeWired
|
|
30
|
-
} from "../chunk-
|
|
31
|
-
import
|
|
31
|
+
} from "../chunk-XNXIMIFY.js";
|
|
32
|
+
import {
|
|
33
|
+
compatibleConfigFile,
|
|
34
|
+
compatibleInstructionsFile,
|
|
35
|
+
compatibleMcpFile,
|
|
36
|
+
hasCompatibleHooks,
|
|
37
|
+
missingCompatibleHookEvents
|
|
38
|
+
} from "../chunk-HS2KEAFD.js";
|
|
39
|
+
import "../chunk-MGI6MLFU.js";
|
|
32
40
|
import {
|
|
33
41
|
detectProviderLiveCapabilities,
|
|
34
42
|
hasSpawnProvider,
|
|
35
43
|
resolveControlPolicy
|
|
36
|
-
} from "../chunk-
|
|
44
|
+
} from "../chunk-IYA3NCZG.js";
|
|
37
45
|
import {
|
|
38
46
|
readLedgerSummary
|
|
39
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-DUOG74E7.js";
|
|
40
48
|
import {
|
|
41
49
|
describeBridgeResolution,
|
|
42
50
|
isBridgeLocator,
|
|
43
51
|
liveBridgeProbe,
|
|
44
52
|
resolveBridgeStub
|
|
45
|
-
} from "../chunk-
|
|
53
|
+
} from "../chunk-CDTGL7TT.js";
|
|
46
54
|
import {
|
|
47
55
|
claudeOtherHolders,
|
|
48
56
|
claudeUnprovenHolds,
|
|
@@ -59,7 +67,7 @@ import {
|
|
|
59
67
|
geminiWired,
|
|
60
68
|
holdsLong,
|
|
61
69
|
pusharyHookExecutable
|
|
62
|
-
} from "../chunk-
|
|
70
|
+
} from "../chunk-XK34HTMW.js";
|
|
63
71
|
import {
|
|
64
72
|
daemonHasRemoteProof,
|
|
65
73
|
daemonServiceManagerAvailable,
|
|
@@ -68,18 +76,19 @@ import {
|
|
|
68
76
|
readDaemonNeedsLogin,
|
|
69
77
|
readDaemonStatus,
|
|
70
78
|
readInstalledDaemonService
|
|
71
|
-
} from "../chunk-
|
|
79
|
+
} from "../chunk-MSOFZYI3.js";
|
|
72
80
|
import {
|
|
73
81
|
GEMINI_HOOK_BINARY,
|
|
74
82
|
hasGeminiHooks,
|
|
75
83
|
missingGeminiHookEvents
|
|
76
|
-
} from "../chunk-
|
|
84
|
+
} from "../chunk-2PS3DTHQ.js";
|
|
77
85
|
import "../chunk-XHKBHWLX.js";
|
|
78
|
-
import "../chunk-
|
|
79
|
-
import "../chunk-
|
|
86
|
+
import "../chunk-MDV7ZRAT.js";
|
|
87
|
+
import "../chunk-EMCNSBF3.js";
|
|
88
|
+
import "../chunk-LGXUGYUH.js";
|
|
80
89
|
import {
|
|
81
90
|
getMachineId
|
|
82
|
-
} from "../chunk-
|
|
91
|
+
} from "../chunk-7WMFPYR5.js";
|
|
83
92
|
import {
|
|
84
93
|
CODEX_HOOK_EVENTS,
|
|
85
94
|
claudeJson,
|
|
@@ -102,7 +111,7 @@ import {
|
|
|
102
111
|
pusharyConfigFile,
|
|
103
112
|
readCodexMcpAuth,
|
|
104
113
|
vscodePluginDir
|
|
105
|
-
} from "../chunk-
|
|
114
|
+
} from "../chunk-LTPQKBJH.js";
|
|
106
115
|
import {
|
|
107
116
|
describeReach,
|
|
108
117
|
describeRoundTrip,
|
|
@@ -110,12 +119,12 @@ import {
|
|
|
110
119
|
reachVerdict,
|
|
111
120
|
roundTripEvidence,
|
|
112
121
|
verifyRoundTrip
|
|
113
|
-
} from "../chunk-
|
|
122
|
+
} from "../chunk-BPD4P3NN.js";
|
|
114
123
|
import "../chunk-3EGEA4KH.js";
|
|
115
124
|
import {
|
|
116
125
|
checkApiKey,
|
|
117
126
|
describeKeyCheck
|
|
118
|
-
} from "../chunk-
|
|
127
|
+
} from "../chunk-BOZETFXB.js";
|
|
119
128
|
import "../chunk-QCGNGEGE.js";
|
|
120
129
|
import {
|
|
121
130
|
createIo
|
|
@@ -134,7 +143,7 @@ import {
|
|
|
134
143
|
keyPrefix,
|
|
135
144
|
readControlMode,
|
|
136
145
|
readKeySource
|
|
137
|
-
} from "../chunk-
|
|
146
|
+
} from "../chunk-DOYARIYB.js";
|
|
138
147
|
import {
|
|
139
148
|
callMcpTool,
|
|
140
149
|
sendMcpRequest
|
|
@@ -146,17 +155,19 @@ import {
|
|
|
146
155
|
import {
|
|
147
156
|
EXIT
|
|
148
157
|
} from "../chunk-KZERVKTD.js";
|
|
149
|
-
import "../chunk-
|
|
158
|
+
import "../chunk-A3D43VXO.js";
|
|
159
|
+
import "../chunk-4LL6LG5X.js";
|
|
150
160
|
import {
|
|
151
161
|
getBaseUrl
|
|
152
162
|
} from "../chunk-2UMNXADU.js";
|
|
153
163
|
import {
|
|
154
164
|
AGENTS,
|
|
155
165
|
CURSOR_GATE_EVENTS,
|
|
166
|
+
HOOK_COMPATIBLE_PROFILES,
|
|
156
167
|
HOOK_LOCATOR_BINARY,
|
|
157
168
|
hookActivationResult,
|
|
158
169
|
isHookActivationReport
|
|
159
|
-
} from "../chunk-
|
|
170
|
+
} from "../chunk-TTBRBWAK.js";
|
|
160
171
|
|
|
161
172
|
// bin/pushary-doctor.ts
|
|
162
173
|
import { existsSync, readFileSync, writeFileSync } from "fs";
|
|
@@ -496,7 +507,7 @@ var main = async () => {
|
|
|
496
507
|
check(present, `Claude Code: ${label}`, present ? void 0 : "missing \u2014 run npx @pushary/agent-hooks@latest upgrade");
|
|
497
508
|
}
|
|
498
509
|
for (const event of claudeUnprovenHolds(settings)) {
|
|
499
|
-
console.log(` ${warn} Claude Code: ${event} hook
|
|
510
|
+
console.log(` ${warn} Claude Code: ${event} hook carries no current hold budget ${dim("(an auto-mode block only notifies; run npx @pushary/agent-hooks@latest upgrade)")}`);
|
|
500
511
|
}
|
|
501
512
|
const preHookCommand = extractAgentHookCommand(hooks?.PreToolUse, "pushary-hook");
|
|
502
513
|
if (preHookCommand) {
|
|
@@ -596,7 +607,7 @@ var main = async () => {
|
|
|
596
607
|
}
|
|
597
608
|
}
|
|
598
609
|
for (const event of codexUnprovenHolds(codexHooksConfig)) {
|
|
599
|
-
console.log(` ${warn} Codex: ${event} hook
|
|
610
|
+
console.log(` ${warn} Codex: ${event} hook carries no current hold budget ${dim("(an auto-reviewer denial is not asked about; run npx @pushary/agent-hooks@latest upgrade)")}`);
|
|
600
611
|
}
|
|
601
612
|
} else {
|
|
602
613
|
check(!!codexNotifyPath, "Codex: notify handler configured (deprecated)", codexNotifyPath ? "upgrade Codex and re-run setup for native hooks" : "missing, re-run setup");
|
|
@@ -661,6 +672,35 @@ var main = async () => {
|
|
|
661
672
|
} else {
|
|
662
673
|
skipped("Gemini CLI", installed("gemini_cli") ? "installed, but Pushary is not set up for it" : "not installed");
|
|
663
674
|
}
|
|
675
|
+
for (const profile of HOOK_COMPATIBLE_PROFILES) {
|
|
676
|
+
const configPath = compatibleConfigFile(profile);
|
|
677
|
+
const config = readJson(configPath);
|
|
678
|
+
if (!config || !hasCompatibleHooks(config, profile)) {
|
|
679
|
+
skipped(profile.label, installed(profile.agentType) ? "installed, but Pushary is not set up for it" : "not installed");
|
|
680
|
+
continue;
|
|
681
|
+
}
|
|
682
|
+
checking(profile.label);
|
|
683
|
+
const missing = missingCompatibleHookEvents(config, profile);
|
|
684
|
+
check(
|
|
685
|
+
missing.length === 0,
|
|
686
|
+
`${profile.label}: native hooks installed`,
|
|
687
|
+
missing.length === 0 ? shortenHome(configPath) : `missing ${missing.join(", ")} \u2014 re-run setup`
|
|
688
|
+
);
|
|
689
|
+
const mcpPath = compatibleMcpFile(profile);
|
|
690
|
+
if (mcpPath) {
|
|
691
|
+
const hasServer = Boolean(readJson(mcpPath)?.mcpServers?.pushary);
|
|
692
|
+
check(hasServer, `${profile.label}: MCP server`, hasServer ? shortenHome(mcpPath) : "missing \u2014 re-run setup");
|
|
693
|
+
}
|
|
694
|
+
const instructionsPath = compatibleInstructionsFile(profile);
|
|
695
|
+
if (instructionsPath) {
|
|
696
|
+
const present = hasInstructionBlock(instructionsPath);
|
|
697
|
+
check(
|
|
698
|
+
present,
|
|
699
|
+
`${profile.label}: proactive instructions`,
|
|
700
|
+
present ? shortenHome(instructionsPath) : "missing \u2014 re-run setup so it asks via push, not the terminal"
|
|
701
|
+
);
|
|
702
|
+
}
|
|
703
|
+
}
|
|
664
704
|
const configuredManagedProviders = [
|
|
665
705
|
...claudeInPlay ? ["claude"] : [],
|
|
666
706
|
...codexInPlay ? ["codex"] : [],
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
readHookInput
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-IWZG2Y4Z.js";
|
|
5
5
|
import {
|
|
6
6
|
isDeferAnswer
|
|
7
7
|
} from "../chunk-YHG74UFF.js";
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-HGEI7SVM.js";
|
|
9
|
+
import "../chunk-YKLCWWEI.js";
|
|
10
|
+
import "../chunk-2SL5X7UB.js";
|
|
11
|
+
import "../chunk-3UUAK2AK.js";
|
|
12
|
+
import "../chunk-CDTGL7TT.js";
|
|
13
|
+
import "../chunk-XK34HTMW.js";
|
|
14
|
+
import "../chunk-MSOFZYI3.js";
|
|
15
|
+
import "../chunk-2PS3DTHQ.js";
|
|
16
|
+
import "../chunk-UWQVODHT.js";
|
|
17
|
+
import "../chunk-7ZDFVWRR.js";
|
|
18
18
|
import "../chunk-EQRS3SGM.js";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-IBU7UU3R.js";
|
|
20
20
|
import "../chunk-XHKBHWLX.js";
|
|
21
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-EMCNSBF3.js";
|
|
22
22
|
import {
|
|
23
23
|
askUser,
|
|
24
24
|
isDecisionStopped,
|
|
@@ -26,16 +26,17 @@ import {
|
|
|
26
26
|
} from "../chunk-LGXUGYUH.js";
|
|
27
27
|
import {
|
|
28
28
|
getMachineId
|
|
29
|
-
} from "../chunk-
|
|
30
|
-
import "../chunk-
|
|
29
|
+
} from "../chunk-7WMFPYR5.js";
|
|
30
|
+
import "../chunk-LTPQKBJH.js";
|
|
31
31
|
import "../chunk-GMXKITVA.js";
|
|
32
32
|
import "../chunk-DINDL2CF.js";
|
|
33
|
-
import "../chunk-
|
|
33
|
+
import "../chunk-DOYARIYB.js";
|
|
34
34
|
import "../chunk-EYRGBYZG.js";
|
|
35
35
|
import "../chunk-SAF6HGAA.js";
|
|
36
36
|
import "../chunk-7QLSKOSU.js";
|
|
37
37
|
import "../chunk-KZERVKTD.js";
|
|
38
|
-
import "../chunk-
|
|
38
|
+
import "../chunk-A3D43VXO.js";
|
|
39
|
+
import "../chunk-4LL6LG5X.js";
|
|
39
40
|
import {
|
|
40
41
|
getApiKey
|
|
41
42
|
} from "../chunk-2UMNXADU.js";
|
|
@@ -49,7 +50,7 @@ import {
|
|
|
49
50
|
planElicitationAsk,
|
|
50
51
|
readElicitationFields,
|
|
51
52
|
renderElicitationOutput
|
|
52
|
-
} from "../chunk-
|
|
53
|
+
} from "../chunk-TTBRBWAK.js";
|
|
53
54
|
|
|
54
55
|
// bin/pushary-elicitation-hook.ts
|
|
55
56
|
import { basename } from "path";
|
|
@@ -5,35 +5,36 @@ import {
|
|
|
5
5
|
postLiveSession,
|
|
6
6
|
postLiveSessionUntilAccepted,
|
|
7
7
|
startLiveSessionHeartbeat
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-GTR72MIU.js";
|
|
9
9
|
import {
|
|
10
10
|
SESSION_IDLE_TIMEOUT_MS,
|
|
11
11
|
describeIdleWindow,
|
|
12
12
|
idleDeadlinePassed,
|
|
13
13
|
startProcessOwnership,
|
|
14
14
|
withSpawnProcessOwnership
|
|
15
|
-
} from "../chunk-
|
|
16
|
-
import "../chunk-
|
|
15
|
+
} from "../chunk-DMJTWULU.js";
|
|
16
|
+
import "../chunk-7ZDFVWRR.js";
|
|
17
17
|
import "../chunk-EQRS3SGM.js";
|
|
18
18
|
import {
|
|
19
19
|
transcriptsEnabled
|
|
20
|
-
} from "../chunk-
|
|
20
|
+
} from "../chunk-IBU7UU3R.js";
|
|
21
21
|
import {
|
|
22
22
|
spawnClaude
|
|
23
23
|
} from "../chunk-XHKBHWLX.js";
|
|
24
24
|
import {
|
|
25
25
|
getMachineId
|
|
26
|
-
} from "../chunk-
|
|
26
|
+
} from "../chunk-7WMFPYR5.js";
|
|
27
27
|
import {
|
|
28
28
|
resolveBinary
|
|
29
|
-
} from "../chunk-
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
29
|
+
} from "../chunk-LTPQKBJH.js";
|
|
30
|
+
import "../chunk-DOYARIYB.js";
|
|
31
|
+
import "../chunk-A3D43VXO.js";
|
|
32
|
+
import "../chunk-4LL6LG5X.js";
|
|
32
33
|
import {
|
|
33
34
|
getApiKey,
|
|
34
35
|
getBaseUrl
|
|
35
36
|
} from "../chunk-2UMNXADU.js";
|
|
36
|
-
import "../chunk-
|
|
37
|
+
import "../chunk-TTBRBWAK.js";
|
|
37
38
|
|
|
38
39
|
// bin/pushary-gemini-bridge.ts
|
|
39
40
|
import { existsSync } from "fs";
|
|
@@ -2,29 +2,34 @@
|
|
|
2
2
|
import {
|
|
3
3
|
isGatingMoment,
|
|
4
4
|
recordKeylessMoment
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-DUOG74E7.js";
|
|
6
6
|
import {
|
|
7
7
|
readHookInput
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-IWZG2Y4Z.js";
|
|
9
9
|
import {
|
|
10
10
|
denyReasonFrom,
|
|
11
11
|
isDeferAnswer
|
|
12
12
|
} from "../chunk-YHG74UFF.js";
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
19
|
-
import "../chunk-
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-
|
|
22
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-HGEI7SVM.js";
|
|
14
|
+
import "../chunk-YKLCWWEI.js";
|
|
15
|
+
import "../chunk-2SL5X7UB.js";
|
|
16
|
+
import "../chunk-3UUAK2AK.js";
|
|
17
|
+
import "../chunk-CDTGL7TT.js";
|
|
18
|
+
import "../chunk-XK34HTMW.js";
|
|
19
|
+
import "../chunk-MSOFZYI3.js";
|
|
20
|
+
import "../chunk-2PS3DTHQ.js";
|
|
21
|
+
import "../chunk-UWQVODHT.js";
|
|
22
|
+
import "../chunk-7ZDFVWRR.js";
|
|
23
23
|
import "../chunk-EQRS3SGM.js";
|
|
24
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-IBU7UU3R.js";
|
|
25
25
|
import "../chunk-XHKBHWLX.js";
|
|
26
26
|
import {
|
|
27
27
|
DEFAULT_SESSION,
|
|
28
|
+
UNNAMED_ACTION,
|
|
29
|
+
deriveActionBody,
|
|
30
|
+
deriveBlocker,
|
|
31
|
+
deriveToolTarget,
|
|
32
|
+
describeToolCall,
|
|
28
33
|
fetchModeState,
|
|
29
34
|
getPolicy,
|
|
30
35
|
handlePostToolUse,
|
|
@@ -35,17 +40,10 @@ import {
|
|
|
35
40
|
readLastPrompt,
|
|
36
41
|
readLastUserPrompt,
|
|
37
42
|
repoKeyFor,
|
|
38
|
-
reportEvent
|
|
39
|
-
} from "../chunk-YJDRHQLG.js";
|
|
40
|
-
import {
|
|
41
|
-
UNNAMED_ACTION,
|
|
42
|
-
deriveActionBody,
|
|
43
|
-
deriveBlocker,
|
|
44
|
-
deriveToolTarget,
|
|
45
|
-
describeToolCall,
|
|
43
|
+
reportEvent,
|
|
46
44
|
scopePathFor
|
|
47
|
-
} from "../chunk-
|
|
48
|
-
import "../chunk-
|
|
45
|
+
} from "../chunk-MDV7ZRAT.js";
|
|
46
|
+
import "../chunk-EMCNSBF3.js";
|
|
49
47
|
import {
|
|
50
48
|
DECISION_STOP_REASON,
|
|
51
49
|
askUser,
|
|
@@ -56,16 +54,17 @@ import {
|
|
|
56
54
|
} from "../chunk-LGXUGYUH.js";
|
|
57
55
|
import {
|
|
58
56
|
getMachineId
|
|
59
|
-
} from "../chunk-
|
|
60
|
-
import "../chunk-
|
|
57
|
+
} from "../chunk-7WMFPYR5.js";
|
|
58
|
+
import "../chunk-LTPQKBJH.js";
|
|
61
59
|
import "../chunk-GMXKITVA.js";
|
|
62
60
|
import "../chunk-DINDL2CF.js";
|
|
63
|
-
import "../chunk-
|
|
61
|
+
import "../chunk-DOYARIYB.js";
|
|
64
62
|
import "../chunk-EYRGBYZG.js";
|
|
65
63
|
import "../chunk-SAF6HGAA.js";
|
|
66
64
|
import "../chunk-7QLSKOSU.js";
|
|
67
65
|
import "../chunk-KZERVKTD.js";
|
|
68
|
-
import "../chunk-
|
|
66
|
+
import "../chunk-A3D43VXO.js";
|
|
67
|
+
import "../chunk-4LL6LG5X.js";
|
|
69
68
|
import {
|
|
70
69
|
getApiKey
|
|
71
70
|
} from "../chunk-2UMNXADU.js";
|
|
@@ -77,7 +76,7 @@ import {
|
|
|
77
76
|
hookWaitClamped,
|
|
78
77
|
hookWaitDeadline,
|
|
79
78
|
resolveGate
|
|
80
|
-
} from "../chunk-
|
|
79
|
+
} from "../chunk-TTBRBWAK.js";
|
|
81
80
|
|
|
82
81
|
// bin/pushary-gemini-hook.ts
|
|
83
82
|
import { basename } from "path";
|