@pushary/agent-hooks 1.9.65 → 1.9.67
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 +18 -0
- package/data/SKILL.md +1 -1
- package/data/cursor-plugin/skills/pushary/SKILL.md +1 -1
- package/data/vscode-plugin/skills/pushary/SKILL.md +1 -1
- package/dist/{api-32B3XLJR.js → api-3WIPD5GC.js} +12 -10
- package/dist/bin/pushary-bell-hook.js +25 -27
- package/dist/bin/pushary-bell.js +10 -10
- package/dist/bin/pushary-claude.js +26 -28
- package/dist/bin/pushary-clean.js +74 -77
- package/dist/bin/pushary-codex-bridge.js +21 -22
- package/dist/bin/pushary-codex-hook.js +30 -32
- package/dist/bin/pushary-codex-session.js +8 -8
- package/dist/bin/pushary-codex.js +13 -13
- package/dist/bin/pushary-connect.js +28 -28
- package/dist/bin/pushary-cowork.js +5 -5
- package/dist/bin/pushary-daemon.js +40 -41
- package/dist/bin/pushary-disconnect.js +25 -26
- package/dist/bin/pushary-doctor.js +118 -76
- package/dist/bin/pushary-elicitation-hook.js +25 -27
- package/dist/bin/pushary-gemini-bridge.js +15 -16
- package/dist/bin/pushary-gemini-hook.js +27 -29
- package/dist/bin/pushary-hook.js +29 -31
- package/dist/bin/pushary-login.js +20 -19
- package/dist/bin/pushary-logout.js +26 -28
- package/dist/bin/pushary-mcp.js +11 -11
- package/dist/bin/pushary-mode.js +16 -15
- package/dist/bin/pushary-notification-hook.js +24 -26
- package/dist/bin/pushary-opencode-hook.js +26 -28
- package/dist/bin/pushary-permission-denied-hook.js +29 -31
- package/dist/bin/pushary-permission-hook.js +32 -31
- package/dist/bin/pushary-post-hook.js +24 -26
- package/dist/bin/pushary-prompt-hook.js +24 -26
- package/dist/bin/pushary-session-end-hook.js +26 -28
- package/dist/bin/pushary-session-start-hook.js +34 -35
- package/dist/bin/pushary-setup.js +111 -99
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +37 -36
- package/dist/bin/pushary-stop-hook.js +24 -26
- package/dist/bin/pushary-stopfailure-hook.js +24 -26
- package/dist/bin/pushary-suggestions.js +15 -14
- package/dist/bin/pushary-transcript-register.js +16 -18
- package/dist/bin/pushary-transcripts.js +18 -17
- package/dist/bin/pushary-upgrade.js +45 -39
- package/dist/bin/pushary-wait.js +26 -20
- package/dist/bin/pushary.js +7 -7
- package/dist/{chunk-Y64JGYTB.js → chunk-32OSSYGZ.js} +1 -1
- package/dist/{chunk-UHS5MMAI.js → chunk-3THDNNVL.js} +3 -3
- package/dist/{chunk-OA6EADFT.js → chunk-564IPPBL.js} +3 -3
- package/dist/chunk-5MOJCOCF.js +25 -0
- package/dist/{chunk-RRHHWYPX.js → chunk-6H4E5UBA.js} +6 -6
- package/dist/{chunk-UM2X7HL6.js → chunk-6LXXKMV6.js} +42 -16
- package/dist/chunk-76SWHCAR.js +299 -0
- package/dist/{chunk-AN7C3CHH.js → chunk-77L2TNJW.js} +1 -1
- package/dist/{chunk-XJIIU36L.js → chunk-7YJSDXLM.js} +1 -1
- package/dist/{chunk-XZCJC3QO.js → chunk-B3V2WOJX.js} +285 -50
- package/dist/{chunk-RABLE5R6.js → chunk-BBFGDYYI.js} +1 -1
- package/dist/{chunk-GTBWWCCM.js → chunk-BFF3ABFV.js} +115 -9
- package/dist/{chunk-NOH3EJFH.js → chunk-C4EDAHXI.js} +1 -1
- package/dist/{chunk-ITYKN2K3.js → chunk-CHYBOTQN.js} +2 -2
- package/dist/{chunk-FFSIYBBU.js → chunk-CJZLIAJF.js} +27 -10
- package/dist/{chunk-UMTMFDL2.js → chunk-CPLQ5OHX.js} +1 -1
- package/dist/{chunk-DTVHZDYM.js → chunk-D3U6CN7T.js} +26 -12
- package/dist/{chunk-ICFHMJTW.js → chunk-D7Z4USSB.js} +27 -8
- package/dist/{chunk-DXMUJTYF.js → chunk-DP6LU6BB.js} +2 -2
- package/dist/{chunk-GA257T2E.js → chunk-DXCHIKAN.js} +8 -8
- package/dist/{chunk-PP7FC3Y7.js → chunk-EQR6JSFE.js} +9 -7
- package/dist/{chunk-Z3M627TQ.js → chunk-FONWVVDD.js} +1 -1
- package/dist/{chunk-3KXBRSL3.js → chunk-GMHQYX3D.js} +1 -1
- package/dist/{chunk-WY6YAMZW.js → chunk-ICQCQAUO.js} +5 -4
- package/dist/{chunk-CZ65D6Q5.js → chunk-IPG3RS23.js} +2 -2
- package/dist/{chunk-JCWHOB36.js → chunk-IRV2MNMA.js} +53 -3
- package/dist/{chunk-HIYLAC3C.js → chunk-IVB5O6NY.js} +3 -3
- package/dist/{chunk-DM24VZOI.js → chunk-IXTVUINH.js} +3 -3
- package/dist/{chunk-BEQ3MEE3.js → chunk-JBRMIADM.js} +2 -2
- package/dist/{chunk-CU2PXLZ6.js → chunk-JHB5SR5B.js} +4 -4
- package/dist/{chunk-ED2SWTPC.js → chunk-JOBSKQ2Z.js} +4 -4
- package/dist/{chunk-W5L2ZLHE.js → chunk-JOD2325S.js} +3 -3
- package/dist/{chunk-CSKABVSH.js → chunk-JSPCGPSH.js} +3 -3
- package/dist/{chunk-R4FL5JHK.js → chunk-KE4TSJUD.js} +4 -4
- package/dist/{chunk-3LF7T3NW.js → chunk-KIXRHNCW.js} +6 -6
- package/dist/{chunk-BKCI53W6.js → chunk-KNUYUQBP.js} +4 -4
- package/dist/{chunk-4LUWNBGD.js → chunk-KTLE7NIK.js} +23 -8
- package/dist/{chunk-ADXHPGBZ.js → chunk-LJHDUKBB.js} +6 -6
- package/dist/{chunk-U2P2LQ5B.js → chunk-LS42NV6E.js} +15 -6
- package/dist/{chunk-QNZ6G3LY.js → chunk-LYTWK5TF.js} +5 -5
- package/dist/{chunk-2VADJ6JH.js → chunk-METUT7V4.js} +2 -2
- package/dist/{chunk-P5HZEGT7.js → chunk-NSS2AIGI.js} +6 -6
- package/dist/{chunk-QSW3HAKI.js → chunk-NWN6GGJL.js} +61 -2
- package/dist/{chunk-7ILQX47W.js → chunk-P4RXSZDT.js} +3 -3
- package/dist/{chunk-FWS2KLV2.js → chunk-PIBWX3EF.js} +2 -2
- package/dist/{chunk-F56GTJFG.js → chunk-PO2P3XDC.js} +5 -5
- package/dist/{chunk-EEVE7H5Z.js → chunk-R2BZH2NK.js} +4 -4
- package/dist/{chunk-I2UBF2SS.js → chunk-RO2B4YBF.js} +1 -1
- package/dist/{chunk-MNKIR2ZB.js → chunk-RQOT6QL3.js} +67 -6
- package/dist/{chunk-Q2BD4IBX.js → chunk-SB6TYV4M.js} +11 -13
- package/dist/{chunk-ATPJGHUP.js → chunk-TI4JYPGQ.js} +7 -3
- package/dist/{chunk-LMC5UPL7.js → chunk-UC2J5RR4.js} +1 -1
- package/dist/{chunk-IZVEBBDH.js → chunk-UQIPWXBL.js} +3 -3
- package/dist/{chunk-VHKK3US3.js → chunk-UXN73YAE.js} +3 -3
- package/dist/{chunk-WOHP7EL6.js → chunk-VEYFXRZ6.js} +7 -6
- package/dist/{chunk-2Z7I7DHT.js → chunk-VHMZPN3N.js} +1 -1
- package/dist/{chunk-HVOQUPSO.js → chunk-VKZ3RJ5U.js} +1 -1
- package/dist/chunk-VVIQWGS7.js +2298 -0
- package/dist/{chunk-SCMEVDAR.js → chunk-WJLHZ6E6.js} +3 -3
- package/dist/{chunk-BAGBCSXA.js → chunk-X2MTVD4W.js} +1 -1
- package/dist/{chunk-3UNAPXED.js → chunk-XFDWLDHG.js} +9 -9
- package/dist/{chunk-6CZX6YOE.js → chunk-XNUWKKGS.js} +3 -3
- package/dist/{chunk-NUEPJ5W6.js → chunk-XZKSUJ55.js} +3 -5
- package/dist/{chunk-HDGB6SQ4.js → chunk-Y4MRHAE5.js} +2 -2
- package/dist/{chunk-SZBMTOUZ.js → chunk-Y6ZN454E.js} +1 -1
- package/dist/{chunk-TK4JU2F7.js → chunk-YSD4SMHE.js} +1 -1
- package/dist/{chunk-SROWUG5W.js → chunk-ZK5WYAMI.js} +1 -1
- package/dist/{chunk-JFKMPLNF.js → chunk-ZPIYJLQ3.js} +2 -2
- package/dist/{codex-app-cards-switch-HK4RMOBI.js → codex-app-cards-switch-25TDTMUZ.js} +11 -11
- package/dist/{codex-desktop-launch-OCO6N7SA.js → codex-desktop-launch-JDKUCD2Y.js} +1 -1
- package/dist/{codex-session-launch-ETZQTVFS.js → codex-session-launch-6N35AAEO.js} +18 -19
- package/dist/{config-YY54G3CC.js → config-OBGYURFX.js} +3 -3
- package/dist/{global-upgrade-5DN5G3ZQ.js → global-upgrade-2QNQD5OM.js} +10 -10
- package/dist/{identity-EGL6HAWG.js → identity-CUPX2U7Q.js} +4 -4
- package/dist/{live-capabilities-WU3FYJJG.js → live-capabilities-CUEIWMSM.js} +5 -5
- package/dist/{paths-ZG6KDM6Y.js → paths-BHLBZ6FY.js} +7 -3
- package/dist/{reapply-AQLNCCTE.js → reapply-4GXLWZ5M.js} +27 -27
- package/dist/src/index.js +30 -20
- package/dist/{upgrade-lock-BIRXIKHJ.js → upgrade-lock-RDKTAHWR.js} +4 -4
- package/dist/{usage-43C2DHDU.js → usage-KX2HN47E.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-ANP3DIST.js +0 -118
- package/dist/chunk-ONBL2GCU.js +0 -615
- package/dist/chunk-TJUJAK5L.js +0 -62
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "../chunk-KEPESIIR.js";
|
|
5
5
|
import {
|
|
6
6
|
runBrowserLogin
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-C4EDAHXI.js";
|
|
8
8
|
import {
|
|
9
9
|
INSTALL_NODE_STEP,
|
|
10
10
|
NPM_FILE_IN_USE_STEP,
|
|
@@ -17,33 +17,36 @@ import {
|
|
|
17
17
|
phoneStartServiceState,
|
|
18
18
|
renderCommandSurface,
|
|
19
19
|
unverifiedKeyClosingReason
|
|
20
|
-
} from "../chunk-
|
|
20
|
+
} from "../chunk-KTLE7NIK.js";
|
|
21
21
|
import {
|
|
22
22
|
coworkOutput,
|
|
23
23
|
coworkSelection
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-UXN73YAE.js";
|
|
25
25
|
import "../chunk-PUZZELE6.js";
|
|
26
26
|
import {
|
|
27
27
|
clearDeclinedAgent,
|
|
28
28
|
declinedAgentForSetupChoice
|
|
29
|
-
} from "../chunk-
|
|
29
|
+
} from "../chunk-UQIPWXBL.js";
|
|
30
30
|
import {
|
|
31
31
|
describeVersionManagerPin,
|
|
32
32
|
saveSetupFailure,
|
|
33
33
|
versionManagerOf
|
|
34
|
-
} from "../chunk-
|
|
34
|
+
} from "../chunk-JSPCGPSH.js";
|
|
35
35
|
import {
|
|
36
|
+
HERMES_RESTART_COMMAND,
|
|
36
37
|
codexTrustOutcome,
|
|
37
38
|
describeCodexTrustConfirmation,
|
|
39
|
+
describeHermesInstallFailure,
|
|
40
|
+
describeHermesState,
|
|
38
41
|
needsCodexTrustStep
|
|
39
|
-
} from "../chunk-
|
|
42
|
+
} from "../chunk-IRV2MNMA.js";
|
|
40
43
|
import {
|
|
41
44
|
describeWaitLadder
|
|
42
45
|
} from "../chunk-CVWG2N3Y.js";
|
|
43
46
|
import {
|
|
44
47
|
writeJsonError,
|
|
45
48
|
writeStdoutFully
|
|
46
|
-
} from "../chunk-
|
|
49
|
+
} from "../chunk-VHMZPN3N.js";
|
|
47
50
|
import {
|
|
48
51
|
BROWSER_CONNECT_COMMAND,
|
|
49
52
|
confirmAppConnection,
|
|
@@ -52,7 +55,7 @@ import {
|
|
|
52
55
|
pairingEscapeApplies,
|
|
53
56
|
printConnectInstructions,
|
|
54
57
|
waitForYourPhone
|
|
55
|
-
} from "../chunk-
|
|
58
|
+
} from "../chunk-R2BZH2NK.js";
|
|
56
59
|
import "../chunk-3EGEA4KH.js";
|
|
57
60
|
import {
|
|
58
61
|
SETUP_AGENT_NAME,
|
|
@@ -60,14 +63,14 @@ import {
|
|
|
60
63
|
describeRoundTripOutcome,
|
|
61
64
|
roundTripEvidence,
|
|
62
65
|
verifyRoundTrip
|
|
63
|
-
} from "../chunk-
|
|
66
|
+
} from "../chunk-D7Z4USSB.js";
|
|
64
67
|
import {
|
|
65
68
|
readManagedControlEvidence,
|
|
66
69
|
waitForMachineReadiness
|
|
67
|
-
} from "../chunk-
|
|
70
|
+
} from "../chunk-PO2P3XDC.js";
|
|
68
71
|
import {
|
|
69
72
|
ensureCodexTrustsPusharyHooks
|
|
70
|
-
} from "../chunk-
|
|
73
|
+
} from "../chunk-Y4MRHAE5.js";
|
|
71
74
|
import {
|
|
72
75
|
describeSetupSideEffects,
|
|
73
76
|
installAgentSkill,
|
|
@@ -75,7 +78,7 @@ import {
|
|
|
75
78
|
} from "../chunk-EUW7JL2K.js";
|
|
76
79
|
import {
|
|
77
80
|
codexEngineBehindLauncher
|
|
78
|
-
} from "../chunk-
|
|
81
|
+
} from "../chunk-ZPIYJLQ3.js";
|
|
79
82
|
import "../chunk-XCEN33UP.js";
|
|
80
83
|
import {
|
|
81
84
|
CURSOR_PLUGIN_BACKUP_INFIX,
|
|
@@ -85,24 +88,36 @@ import {
|
|
|
85
88
|
soleGateFile,
|
|
86
89
|
soleGateReceipt,
|
|
87
90
|
soleGateReceiptFile
|
|
88
|
-
} from "../chunk-
|
|
91
|
+
} from "../chunk-JHB5SR5B.js";
|
|
89
92
|
import {
|
|
90
|
-
HERMES_PIP_PACKAGE,
|
|
91
93
|
describeDetection,
|
|
92
94
|
detectAllAgents,
|
|
93
95
|
isDetected,
|
|
94
|
-
isHermesConfigReceipt,
|
|
95
96
|
pluginLocationSnippet,
|
|
96
97
|
registerPluginLocation,
|
|
97
|
-
resolveHermesPython,
|
|
98
|
-
runHermesConfigScript,
|
|
99
98
|
shortenHome,
|
|
100
99
|
vscodeSettingsTargets
|
|
101
|
-
} from "../chunk-
|
|
100
|
+
} from "../chunk-76SWHCAR.js";
|
|
102
101
|
import {
|
|
103
102
|
mcpServerBearer,
|
|
104
103
|
readMacAppAgentKey
|
|
105
|
-
} from "../chunk-
|
|
104
|
+
} from "../chunk-LS42NV6E.js";
|
|
105
|
+
import {
|
|
106
|
+
keyScopeOf
|
|
107
|
+
} from "../chunk-5MOJCOCF.js";
|
|
108
|
+
import {
|
|
109
|
+
HERMES_CONFIG_FILE,
|
|
110
|
+
defaultHermesHome,
|
|
111
|
+
findHermesLauncher,
|
|
112
|
+
hermesPluginDirectory,
|
|
113
|
+
hermesReceiptPaths,
|
|
114
|
+
inspectHermesWiring,
|
|
115
|
+
installHermesPlugin,
|
|
116
|
+
isHermesWired,
|
|
117
|
+
routesHermesQuestions,
|
|
118
|
+
runsAnOlderPlugin,
|
|
119
|
+
shippedHermesPlugin
|
|
120
|
+
} from "../chunk-VVIQWGS7.js";
|
|
106
121
|
import {
|
|
107
122
|
setHumanStream
|
|
108
123
|
} from "../chunk-QCGNGEGE.js";
|
|
@@ -119,7 +134,7 @@ import {
|
|
|
119
134
|
readFxProfileForSetup,
|
|
120
135
|
withFxPusharyServer,
|
|
121
136
|
writeFxProfile
|
|
122
|
-
} from "../chunk-
|
|
137
|
+
} from "../chunk-LYTWK5TF.js";
|
|
123
138
|
import {
|
|
124
139
|
AgentConfigError,
|
|
125
140
|
afterAgentFailureNote,
|
|
@@ -132,10 +147,10 @@ import {
|
|
|
132
147
|
retryAgentCommand,
|
|
133
148
|
writeSetupConfigFile,
|
|
134
149
|
writeSetupConfigJson
|
|
135
|
-
} from "../chunk-
|
|
150
|
+
} from "../chunk-JOD2325S.js";
|
|
136
151
|
import {
|
|
137
152
|
MCP_BRIDGE_BINARY
|
|
138
|
-
} from "../chunk-
|
|
153
|
+
} from "../chunk-JBRMIADM.js";
|
|
139
154
|
import {
|
|
140
155
|
OPENCODE_HOOK_BINARY,
|
|
141
156
|
addOpenCodeMcpServer,
|
|
@@ -153,7 +168,7 @@ import {
|
|
|
153
168
|
openCodePluginFile,
|
|
154
169
|
openCodeWired,
|
|
155
170
|
withOpenCodeAskRules
|
|
156
|
-
} from "../chunk-
|
|
171
|
+
} from "../chunk-NSS2AIGI.js";
|
|
157
172
|
import {
|
|
158
173
|
ansiPainter,
|
|
159
174
|
createIo,
|
|
@@ -169,15 +184,15 @@ import {
|
|
|
169
184
|
nodeCodexInstallProbe,
|
|
170
185
|
phoneStartIsRequired,
|
|
171
186
|
resolveControlPolicy
|
|
172
|
-
} from "../chunk-
|
|
187
|
+
} from "../chunk-KE4TSJUD.js";
|
|
173
188
|
import {
|
|
174
189
|
detectClaudeVersion
|
|
175
|
-
} from "../chunk-
|
|
176
|
-
import "../chunk-
|
|
190
|
+
} from "../chunk-IVB5O6NY.js";
|
|
191
|
+
import "../chunk-BBFGDYYI.js";
|
|
177
192
|
import {
|
|
178
193
|
describeAutoUpdateAnnouncement,
|
|
179
194
|
takeAutoUpdateAnnouncement
|
|
180
|
-
} from "../chunk-
|
|
195
|
+
} from "../chunk-IXTVUINH.js";
|
|
181
196
|
import {
|
|
182
197
|
addCompatibleHooks,
|
|
183
198
|
addCompatibleMcpServer,
|
|
@@ -191,7 +206,7 @@ import {
|
|
|
191
206
|
compatibleRecord,
|
|
192
207
|
compatibleTargetPaths,
|
|
193
208
|
hasCompatibleHooks
|
|
194
|
-
} from "../chunk-
|
|
209
|
+
} from "../chunk-ICQCQAUO.js";
|
|
195
210
|
import {
|
|
196
211
|
DAEMON_COLD_START_TIMEOUT_MS,
|
|
197
212
|
clearDaemonNeedsLogin,
|
|
@@ -206,9 +221,13 @@ import {
|
|
|
206
221
|
replaceDaemonService,
|
|
207
222
|
stopDaemonService,
|
|
208
223
|
waitForDaemonRemoteProof
|
|
209
|
-
} from "../chunk-
|
|
224
|
+
} from "../chunk-LJHDUKBB.js";
|
|
210
225
|
import {
|
|
226
|
+
GEMINI_HOOK_BINARY,
|
|
227
|
+
GEMINI_HOOK_EVENTS,
|
|
211
228
|
KEEP_HINT,
|
|
229
|
+
addGeminiHooks,
|
|
230
|
+
addGeminiMcpServer,
|
|
212
231
|
captureHookTakeover,
|
|
213
232
|
captureMcpServer,
|
|
214
233
|
claudeWired,
|
|
@@ -218,24 +237,18 @@ import {
|
|
|
218
237
|
geminiWired,
|
|
219
238
|
planHooks,
|
|
220
239
|
pusharyHookExecutable
|
|
221
|
-
} from "../chunk-
|
|
222
|
-
import {
|
|
223
|
-
GEMINI_HOOK_BINARY,
|
|
224
|
-
GEMINI_HOOK_EVENTS,
|
|
225
|
-
addGeminiHooks,
|
|
226
|
-
addGeminiMcpServer
|
|
227
|
-
} from "../chunk-ANP3DIST.js";
|
|
240
|
+
} from "../chunk-BFF3ABFV.js";
|
|
228
241
|
import {
|
|
229
242
|
AGENT_CHOICES,
|
|
230
243
|
effectiveControlMode,
|
|
231
244
|
effectiveVerify,
|
|
232
245
|
parseSetupOptions
|
|
233
|
-
} from "../chunk-
|
|
234
|
-
import "../chunk-
|
|
246
|
+
} from "../chunk-ZK5WYAMI.js";
|
|
247
|
+
import "../chunk-FONWVVDD.js";
|
|
235
248
|
import "../chunk-NMUI3ZWG.js";
|
|
236
249
|
import {
|
|
237
250
|
transcriptPreferenceForSetup
|
|
238
|
-
} from "../chunk-
|
|
251
|
+
} from "../chunk-YSD4SMHE.js";
|
|
239
252
|
import "../chunk-XHKBHWLX.js";
|
|
240
253
|
import {
|
|
241
254
|
KEY_FILE_MODE,
|
|
@@ -249,7 +262,7 @@ import {
|
|
|
249
262
|
recordMacAppKeyPrefix,
|
|
250
263
|
resolveShellRc,
|
|
251
264
|
writeKey
|
|
252
|
-
} from "../chunk-
|
|
265
|
+
} from "../chunk-JOBSKQ2Z.js";
|
|
253
266
|
import {
|
|
254
267
|
CODEX_ENGINE_DIRECTORY,
|
|
255
268
|
CODEX_ENGINE_ENTRYPOINT,
|
|
@@ -258,25 +271,25 @@ import {
|
|
|
258
271
|
} from "../chunk-E46NE7FB.js";
|
|
259
272
|
import {
|
|
260
273
|
reportEvent
|
|
261
|
-
} from "../chunk-
|
|
262
|
-
import "../chunk-
|
|
263
|
-
import "../chunk-
|
|
274
|
+
} from "../chunk-XFDWLDHG.js";
|
|
275
|
+
import "../chunk-GMHQYX3D.js";
|
|
276
|
+
import "../chunk-D3U6CN7T.js";
|
|
264
277
|
import "../chunk-POFBE6ZY.js";
|
|
265
|
-
import "../chunk-
|
|
278
|
+
import "../chunk-KNUYUQBP.js";
|
|
266
279
|
import {
|
|
267
280
|
checkApiKey,
|
|
268
281
|
describeKeyCheck,
|
|
269
282
|
samePusharyAccount
|
|
270
|
-
} from "../chunk-
|
|
271
|
-
import "../chunk-
|
|
272
|
-
import "../chunk-
|
|
283
|
+
} from "../chunk-3THDNNVL.js";
|
|
284
|
+
import "../chunk-P4RXSZDT.js";
|
|
285
|
+
import "../chunk-PIBWX3EF.js";
|
|
273
286
|
import {
|
|
274
287
|
UsageError
|
|
275
288
|
} from "../chunk-PPY5N2E6.js";
|
|
276
289
|
import {
|
|
277
290
|
EXIT
|
|
278
291
|
} from "../chunk-KZERVKTD.js";
|
|
279
|
-
import "../chunk-
|
|
292
|
+
import "../chunk-METUT7V4.js";
|
|
280
293
|
import {
|
|
281
294
|
CLINE_AUTO_APPROVE_STEP,
|
|
282
295
|
CLINE_RELOAD_STEP,
|
|
@@ -324,7 +337,6 @@ import {
|
|
|
324
337
|
guardCursorGate,
|
|
325
338
|
guardNodeScript,
|
|
326
339
|
guardedArgv,
|
|
327
|
-
hermesConfigReceipt,
|
|
328
340
|
hookTakeoverReceipt,
|
|
329
341
|
isClaudeMcpSnapshot,
|
|
330
342
|
pusharyConfigFile,
|
|
@@ -335,7 +347,7 @@ import {
|
|
|
335
347
|
vscodePluginDir,
|
|
336
348
|
vscodePluginMcp,
|
|
337
349
|
writeInstructionBlock
|
|
338
|
-
} from "../chunk-
|
|
350
|
+
} from "../chunk-TI4JYPGQ.js";
|
|
339
351
|
import {
|
|
340
352
|
NpmMissingError,
|
|
341
353
|
backupFile,
|
|
@@ -348,14 +360,14 @@ import {
|
|
|
348
360
|
readJsonSafe,
|
|
349
361
|
resolveGlobalBinDir,
|
|
350
362
|
resolveGlobalBinary
|
|
351
|
-
} from "../chunk-
|
|
363
|
+
} from "../chunk-WJLHZ6E6.js";
|
|
352
364
|
import {
|
|
353
365
|
getBaseUrl
|
|
354
|
-
} from "../chunk-
|
|
366
|
+
} from "../chunk-32OSSYGZ.js";
|
|
355
367
|
import {
|
|
356
368
|
NPX_LATEST_COMMAND,
|
|
357
369
|
renderCommandHelp
|
|
358
|
-
} from "../chunk-
|
|
370
|
+
} from "../chunk-X2MTVD4W.js";
|
|
359
371
|
import {
|
|
360
372
|
getPackageVersion,
|
|
361
373
|
isNewerVersion,
|
|
@@ -374,7 +386,7 @@ import {
|
|
|
374
386
|
isRecord,
|
|
375
387
|
isTimeoutAction,
|
|
376
388
|
isValidApiKey
|
|
377
|
-
} from "../chunk-
|
|
389
|
+
} from "../chunk-RQOT6QL3.js";
|
|
378
390
|
import "../chunk-MLKGABMK.js";
|
|
379
391
|
|
|
380
392
|
// bin/pushary-setup.ts
|
|
@@ -395,7 +407,7 @@ var agentSetupTargets = (exists) => ({
|
|
|
395
407
|
claude_code: [claudeJson(), claudeSettings(), join(claudeSkillDir(), "SKILL.md")],
|
|
396
408
|
codex: [join(codexHome(), "config.toml"), codexHooksJson(), join(codexSkillDir(), "SKILL.md"), codexAgentsMd()],
|
|
397
409
|
gemini_cli: [geminiSettings(), geminiMd()],
|
|
398
|
-
hermes: [
|
|
410
|
+
hermes: [hermesPluginDirectory(defaultHermesHome()), join(defaultHermesHome(), HERMES_CONFIG_FILE)],
|
|
399
411
|
cursor: [join(cursorPluginDir(), "mcp.json"), cursorUserHooks()],
|
|
400
412
|
vscode: [vscodePluginMcp(), ...vscodeSettingsTargets(exists)],
|
|
401
413
|
opencode: [
|
|
@@ -964,7 +976,6 @@ var pairingComputerOf = (host, platform, detectedAgents) => ({
|
|
|
964
976
|
var CLAUDE_SETTINGS = claudeSettings();
|
|
965
977
|
var CLAUDE_JSON = claudeJson();
|
|
966
978
|
var CLAUDE_MCP_RECEIPT = claudeMcpReceipt();
|
|
967
|
-
var HERMES_CONFIG_RECEIPT = hermesConfigReceipt();
|
|
968
979
|
var CURSOR_PLUGIN_DIR = cursorPluginDir();
|
|
969
980
|
var CURSOR_USER_HOOKS = cursorUserHooks();
|
|
970
981
|
var VSCODE_PLUGIN_DIR = vscodePluginDir();
|
|
@@ -1188,60 +1199,56 @@ var setupClaudeCode = async (apiKey) => {
|
|
|
1188
1199
|
console.log(` ${dim("\u2022")} Auto-allowed tools: no permission prompts for Pushary MCP calls`);
|
|
1189
1200
|
};
|
|
1190
1201
|
var IS_WINDOWS = process.platform === "win32";
|
|
1191
|
-
var
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
}
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1202
|
+
var keptHermesPluginLine = (folder, pluginDirectory) => folder?.kind === "pushary" ? ` ${check} Plugin ${folder.marker.version} already in ${shortenHome(pluginDirectory)}` : ` ${check} Kept the pushary plugin Hermes installed in ${shortenHome(pluginDirectory)}`;
|
|
1203
|
+
var reportHermesInstall = (outcome, version) => {
|
|
1204
|
+
const inspection = outcome.inspection;
|
|
1205
|
+
const folder = inspection.kind === "inspected" ? inspection.folder : null;
|
|
1206
|
+
const pluginDirectory = inspection.kind === "inspected" ? hermesPluginDirectory(inspection.home) : "the Hermes plugins folder";
|
|
1207
|
+
console.log(outcome.folderWritten ? ` ${check} Plugin ${version} written to ${shortenHome(pluginDirectory)}` : keptHermesPluginLine(folder, pluginDirectory));
|
|
1208
|
+
if (outcome.legacyCopyRemoved) console.log(` ${check} Removed the old pip copy that Hermes would have loaded instead`);
|
|
1209
|
+
console.log();
|
|
1210
|
+
console.log(` ${dim("What this configured:")}`);
|
|
1211
|
+
console.log(` ${dim("\u2022")} Native tools: pushary_ask, pushary_notify, pushary_wait, pushary_cancel, pushary_remind, pushary_propose_scope`);
|
|
1212
|
+
console.log(` ${dim("\u2022")} Approvals: Hermes' dangerous-command prompts go to your phone with allow once / this session / always / deny`);
|
|
1213
|
+
console.log(` ${dim("\u2022")} Falls back to the terminal prompt when no device is connected, so work never blocks on us`);
|
|
1214
|
+
console.log(folder !== null && routesHermesQuestions(folder) ? ` ${dim("\u2022")} Questions: the plugin sends Hermes' ${bold("clarify")} questions through pushary_ask while it is loaded` : ` ${dim("\u2022")} Questions: this plugin copy leaves Hermes' ${bold("clarify")} questions in the terminal`);
|
|
1215
|
+
console.log(` ${dim("To send approvals back to the terminal:")} ${bold("hermes config unset security.approval.transport")}`);
|
|
1216
|
+
if (inspection.kind !== "inspected") return;
|
|
1217
|
+
if (inspection.state.kind === "restart_needed" || runsAnOlderPlugin(inspection.state)) {
|
|
1218
|
+
console.log(` ${yellow("!")} ${describeHermesState(inspection.state)}: ${bold(HERMES_RESTART_COMMAND)}`);
|
|
1219
|
+
noteManual(`Restart Hermes to load the Pushary plugin: ${HERMES_RESTART_COMMAND}`);
|
|
1220
|
+
} else {
|
|
1221
|
+
console.log(` ${dim(describeHermesState(inspection.state))}`);
|
|
1200
1222
|
}
|
|
1201
1223
|
};
|
|
1202
|
-
var enablePusharyPlugin = (python) => {
|
|
1203
|
-
return runHermesConfigScript(python, "setup", HERMES_CONFIG_RECEIPT) !== "failed";
|
|
1204
|
-
};
|
|
1205
1224
|
var setupHermes = async (_apiKey) => {
|
|
1206
1225
|
console.log(`
|
|
1207
1226
|
${bold("Setting up Hermes Agent")}
|
|
1208
1227
|
`);
|
|
1209
|
-
if (!
|
|
1228
|
+
if (!findHermesLauncher()) {
|
|
1210
1229
|
console.log(` ${yellow("!")} Hermes CLI not found. Skipping.`);
|
|
1211
1230
|
console.log(` ${dim("Install Hermes and re-run setup to configure.")}`);
|
|
1212
1231
|
return "skipped";
|
|
1213
1232
|
}
|
|
1214
|
-
const
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1233
|
+
const plugin = shippedHermesPlugin();
|
|
1234
|
+
const receipts = hermesReceiptPaths();
|
|
1235
|
+
const outcomes = [];
|
|
1236
|
+
await spinner("Installing the Pushary plugin into Hermes", async () => {
|
|
1237
|
+
outcomes.push(installHermesPlugin({ installedBy: "cli", plugin, receipts }));
|
|
1238
|
+
});
|
|
1239
|
+
const outcome = outcomes[0] ?? { kind: "no_launcher" };
|
|
1240
|
+
if (outcome.kind === "no_launcher") {
|
|
1241
|
+
console.log(` ${yellow("!")} Hermes CLI not found. Skipping.`);
|
|
1218
1242
|
return "skipped";
|
|
1219
1243
|
}
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
ensurePip(python);
|
|
1226
|
-
execSync(`"${python}" -m pip install --upgrade ${HERMES_PIP_PACKAGE}`, { stdio: "pipe", timeout: 18e4 });
|
|
1227
|
-
});
|
|
1228
|
-
let pluginEnabled = false;
|
|
1229
|
-
await spinner("Enabling plugin + routing questions to push", async () => {
|
|
1230
|
-
pluginEnabled = enablePusharyPlugin(python);
|
|
1231
|
-
});
|
|
1232
|
-
if (!pluginEnabled) {
|
|
1233
|
-
console.log(` ${yellow("!")} Installed the plugin, but could not edit Hermes' config.`);
|
|
1234
|
-
noteManual('Add "pushary" to plugins.enabled and set security.approval.transport to "pushary" (with transport_fallback "builtin") in ~/.hermes/config.yaml, plus "clarify" in agent.disabled_toolsets');
|
|
1244
|
+
if (outcome.kind === "failed") {
|
|
1245
|
+
const message = describeHermesInstallFailure(outcome.reason, shortenHome(hermesPluginDirectory(defaultHermesHome())), shortenHome(receipts.receiptPath));
|
|
1246
|
+
console.log(` ${yellow("!")} ${message}`);
|
|
1247
|
+
noteManual(message);
|
|
1248
|
+
return "skipped";
|
|
1235
1249
|
}
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
console.log(` ${dim("\u2022")} Native tools: pushary_notify, pushary_ask, pushary_wait, pushary_cancel, pushary_propose_scope`);
|
|
1239
|
-
console.log(` ${dim("\u2022")} Approvals: Hermes' dangerous-command prompts go to your phone with allow once / this session / always / deny`);
|
|
1240
|
-
console.log(` ${dim("\u2022")} Falls back to the terminal prompt when no device is connected, so work never blocks on us`);
|
|
1241
|
-
console.log(` ${dim("\u2022")} Questions go to your phone: Hermes' terminal ${bold("clarify")} tool is disabled, so pushary_ask handles every question`);
|
|
1242
|
-
console.log(` ${dim("\u2022")} Auto-notifications: push alert when tools return errors`);
|
|
1243
|
-
console.log(` ${dim("To send approvals back to the terminal:")} remove ${bold("security.approval.transport")} from ~/.hermes/config.yaml`);
|
|
1244
|
-
console.log(` ${dim("To re-enable terminal questions:")} remove ${bold("clarify")} from ${dim("agent.disabled_toolsets")}`);
|
|
1250
|
+
reportHermesInstall(outcome, plugin.version);
|
|
1251
|
+
return "configured";
|
|
1245
1252
|
};
|
|
1246
1253
|
var CODEX_HOOKS_JSON = join4(CODEX_HOME, "hooks.json");
|
|
1247
1254
|
var CODEX_HOOKS_MIN_VERSION = [0, 122, 0];
|
|
@@ -2094,6 +2101,10 @@ var agentIsWired = (agent) => {
|
|
|
2094
2101
|
return fxWired();
|
|
2095
2102
|
case "cline":
|
|
2096
2103
|
return clineWired();
|
|
2104
|
+
case "hermes": {
|
|
2105
|
+
const inspection = inspectHermesWiring();
|
|
2106
|
+
return inspection.kind === "inspected" && isHermesWired(inspection.state);
|
|
2107
|
+
}
|
|
2097
2108
|
default: {
|
|
2098
2109
|
const profile = hookCompatibleProfile(agent);
|
|
2099
2110
|
if (!profile) return true;
|
|
@@ -2652,6 +2663,7 @@ var main = async () => {
|
|
|
2652
2663
|
if (!options.dryRun) recordSetupKey(trimmedKey);
|
|
2653
2664
|
markStep("verify-key");
|
|
2654
2665
|
const keyCheck = await verifyKeyOrExit(trimmedKey, options, storedKeyCheck ?? void 0);
|
|
2666
|
+
const keyScope = keyScopeOf(keyCheck);
|
|
2655
2667
|
const wrongAccountHint = wrongAccountHintPlacement({
|
|
2656
2668
|
canPairWithApp,
|
|
2657
2669
|
reusedWithoutAsking: reuseAccepted && keyReuse === "announce",
|
|
@@ -2871,7 +2883,7 @@ var main = async () => {
|
|
|
2871
2883
|
await spinner(prompt.waiting, async () => roundTripSpinnerEnd(await answer));
|
|
2872
2884
|
roundTrip = await answer;
|
|
2873
2885
|
markStep(CONNECT_PHONE_STEP);
|
|
2874
|
-
const report = describeRoundTripOutcome(roundTrip, appPlatforms);
|
|
2886
|
+
const report = describeRoundTripOutcome(roundTrip, { appPlatforms, keyScope });
|
|
2875
2887
|
if (!report.ok) console.log(` ${yellow("!")} ${report.message}`);
|
|
2876
2888
|
for (const line of report.next) console.log(` ${dim(line)}`);
|
|
2877
2889
|
} else if (verifyMode === "roundtrip" && keyCheck.kind === "ok") {
|
|
@@ -3066,7 +3078,7 @@ var main = async () => {
|
|
|
3066
3078
|
for (const line of closing.next) console.log(` ${line}`);
|
|
3067
3079
|
console.log();
|
|
3068
3080
|
console.log(` ${dim("Useful:")}`);
|
|
3069
|
-
for (const line of renderCommandSurface()) console.log(` ${dim(line)}`);
|
|
3081
|
+
for (const line of renderCommandSurface(keyScope)) console.log(` ${dim(line)}`);
|
|
3070
3082
|
console.log();
|
|
3071
3083
|
const exitCode = closing.exitCode;
|
|
3072
3084
|
await reportSetupOutcome({
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
exitOnHelpFlag
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-77L2TNJW.js";
|
|
5
5
|
import {
|
|
6
6
|
readLedgerSummary
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-7YJSDXLM.js";
|
|
8
8
|
import "../chunk-KZERVKTD.js";
|
|
9
9
|
import {
|
|
10
10
|
getApiKey
|
|
11
|
-
} from "../chunk-
|
|
12
|
-
import "../chunk-
|
|
11
|
+
} from "../chunk-32OSSYGZ.js";
|
|
12
|
+
import "../chunk-X2MTVD4W.js";
|
|
13
13
|
import "../chunk-QTOLNRET.js";
|
|
14
|
-
import "../chunk-
|
|
14
|
+
import "../chunk-RQOT6QL3.js";
|
|
15
15
|
import "../chunk-MLKGABMK.js";
|
|
16
16
|
|
|
17
17
|
// bin/pushary-stats.ts
|
|
@@ -1,77 +1,78 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
writeJsonError
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-VHMZPN3N.js";
|
|
5
5
|
import {
|
|
6
6
|
fetchChannels
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-R2BZH2NK.js";
|
|
8
8
|
import "../chunk-3EGEA4KH.js";
|
|
9
9
|
import {
|
|
10
10
|
describeReach,
|
|
11
11
|
reachVerdict
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-D7Z4USSB.js";
|
|
13
13
|
import {
|
|
14
14
|
describeLastSeen,
|
|
15
15
|
listMachines
|
|
16
|
-
} from "../chunk-
|
|
17
|
-
import {
|
|
18
|
-
CONNECTED_THROUGH_MAC_APP,
|
|
19
|
-
readMacAppConnectionWhenKeyless
|
|
20
|
-
} from "../chunk-U2P2LQ5B.js";
|
|
21
|
-
import "../chunk-QCGNGEGE.js";
|
|
16
|
+
} from "../chunk-PO2P3XDC.js";
|
|
22
17
|
import {
|
|
23
18
|
SIGNED_OUT_ON_MAC_MESSAGE,
|
|
24
19
|
activeKeyVerdictOf,
|
|
25
20
|
describeSignedOutKey,
|
|
26
21
|
readSignedOutDiagnosis
|
|
27
|
-
} from "../chunk-
|
|
28
|
-
import
|
|
22
|
+
} from "../chunk-CHYBOTQN.js";
|
|
23
|
+
import {
|
|
24
|
+
CONNECTED_THROUGH_MAC_APP,
|
|
25
|
+
keyWrittenByMacApp,
|
|
26
|
+
readMacAppConnectionWhenKeyless
|
|
27
|
+
} from "../chunk-LS42NV6E.js";
|
|
28
|
+
import "../chunk-5MOJCOCF.js";
|
|
29
|
+
import "../chunk-QCGNGEGE.js";
|
|
30
|
+
import "../chunk-NSS2AIGI.js";
|
|
29
31
|
import {
|
|
30
32
|
createIo
|
|
31
33
|
} from "../chunk-FO3MDD26.js";
|
|
32
34
|
import {
|
|
33
35
|
exitOnHelpFlag
|
|
34
|
-
} from "../chunk-
|
|
35
|
-
import "../chunk-
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
39
|
-
import "../chunk-
|
|
40
|
-
import "../chunk-
|
|
41
|
-
import "../chunk-
|
|
42
|
-
import "../chunk-
|
|
43
|
-
import "../chunk-Z3M627TQ.js";
|
|
36
|
+
} from "../chunk-77L2TNJW.js";
|
|
37
|
+
import "../chunk-KE4TSJUD.js";
|
|
38
|
+
import "../chunk-IVB5O6NY.js";
|
|
39
|
+
import "../chunk-BBFGDYYI.js";
|
|
40
|
+
import "../chunk-ICQCQAUO.js";
|
|
41
|
+
import "../chunk-LJHDUKBB.js";
|
|
42
|
+
import "../chunk-BFF3ABFV.js";
|
|
43
|
+
import "../chunk-ZK5WYAMI.js";
|
|
44
|
+
import "../chunk-FONWVVDD.js";
|
|
44
45
|
import {
|
|
45
46
|
rejectUnknownFlags
|
|
46
47
|
} from "../chunk-NMUI3ZWG.js";
|
|
47
48
|
import "../chunk-XHKBHWLX.js";
|
|
48
49
|
import {
|
|
49
50
|
readKeySource
|
|
50
|
-
} from "../chunk-
|
|
51
|
-
import "../chunk-
|
|
52
|
-
import "../chunk-
|
|
53
|
-
import "../chunk-
|
|
51
|
+
} from "../chunk-JOBSKQ2Z.js";
|
|
52
|
+
import "../chunk-XFDWLDHG.js";
|
|
53
|
+
import "../chunk-GMHQYX3D.js";
|
|
54
|
+
import "../chunk-D3U6CN7T.js";
|
|
54
55
|
import "../chunk-POFBE6ZY.js";
|
|
55
|
-
import "../chunk-
|
|
56
|
+
import "../chunk-KNUYUQBP.js";
|
|
56
57
|
import {
|
|
57
58
|
checkApiKey,
|
|
58
59
|
describeKeyCheck
|
|
59
|
-
} from "../chunk-
|
|
60
|
-
import "../chunk-
|
|
61
|
-
import "../chunk-
|
|
60
|
+
} from "../chunk-3THDNNVL.js";
|
|
61
|
+
import "../chunk-P4RXSZDT.js";
|
|
62
|
+
import "../chunk-PIBWX3EF.js";
|
|
62
63
|
import {
|
|
63
64
|
UsageError
|
|
64
65
|
} from "../chunk-PPY5N2E6.js";
|
|
65
66
|
import {
|
|
66
67
|
EXIT
|
|
67
68
|
} from "../chunk-KZERVKTD.js";
|
|
68
|
-
import "../chunk-
|
|
69
|
-
import "../chunk-
|
|
70
|
-
import "../chunk-
|
|
71
|
-
import "../chunk-
|
|
72
|
-
import "../chunk-
|
|
69
|
+
import "../chunk-METUT7V4.js";
|
|
70
|
+
import "../chunk-TI4JYPGQ.js";
|
|
71
|
+
import "../chunk-WJLHZ6E6.js";
|
|
72
|
+
import "../chunk-32OSSYGZ.js";
|
|
73
|
+
import "../chunk-X2MTVD4W.js";
|
|
73
74
|
import "../chunk-QTOLNRET.js";
|
|
74
|
-
import "../chunk-
|
|
75
|
+
import "../chunk-RQOT6QL3.js";
|
|
75
76
|
import "../chunk-MLKGABMK.js";
|
|
76
77
|
|
|
77
78
|
// src/status.ts
|
|
@@ -264,7 +265,7 @@ var main = async () => {
|
|
|
264
265
|
keyCheck,
|
|
265
266
|
channels,
|
|
266
267
|
signedOut: readSignedOutDiagnosis(source.key, activeKeyVerdictOf(keyCheck)),
|
|
267
|
-
macApp: readMacAppConnectionWhenKeyless(source.key)
|
|
268
|
+
macApp: readMacAppConnectionWhenKeyless(source.key, keyWrittenByMacApp(source.kind === "config" ? source.key : null))
|
|
268
269
|
};
|
|
269
270
|
const report = buildStatusReport(facts);
|
|
270
271
|
if (json) {
|