@pushary/agent-hooks 1.9.7 → 1.9.8
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 +11 -0
- package/README.md +3 -3
- package/data/cursor-plugin/README.md +3 -7
- package/data/vscode-plugin/README.md +1 -1
- package/dist/bin/pushary-bell-hook.js +22 -23
- package/dist/bin/pushary-bell.js +9 -9
- package/dist/bin/pushary-claude.js +27 -28
- package/dist/bin/pushary-clean.js +101 -79
- package/dist/bin/pushary-codex-bridge.js +18 -18
- package/dist/bin/pushary-codex-hook.js +32 -33
- package/dist/bin/pushary-codex.js +13 -13
- package/dist/bin/pushary-connect.js +24 -21
- package/dist/bin/pushary-cowork.js +5 -5
- package/dist/bin/pushary-daemon.js +51 -39
- package/dist/bin/pushary-disconnect.js +189 -54
- package/dist/bin/pushary-doctor.js +67 -58
- package/dist/bin/pushary-elicitation-hook.js +24 -25
- package/dist/bin/pushary-gemini-bridge.js +13 -13
- package/dist/bin/pushary-gemini-hook.js +29 -30
- package/dist/bin/pushary-hook.js +30 -32
- package/dist/bin/pushary-login.js +12 -12
- package/dist/bin/pushary-logout.js +105 -42
- package/dist/bin/pushary-mcp.js +9 -9
- package/dist/bin/pushary-mode.js +28 -31
- package/dist/bin/pushary-notification-hook.js +26 -28
- package/dist/bin/pushary-opencode-hook.js +28 -29
- package/dist/bin/pushary-permission-denied-hook.js +30 -32
- package/dist/bin/pushary-permission-hook.js +29 -31
- package/dist/bin/pushary-post-hook.js +26 -28
- package/dist/bin/pushary-prompt-hook.js +26 -28
- package/dist/bin/pushary-session-end-hook.js +26 -28
- package/dist/bin/pushary-session-start-hook.js +31 -32
- package/dist/bin/pushary-setup.js +91 -101
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +34 -18
- package/dist/bin/pushary-stop-hook.js +26 -28
- package/dist/bin/pushary-stopfailure-hook.js +26 -28
- package/dist/bin/pushary-suggestions.js +19 -21
- package/dist/bin/pushary-transcript-register.js +18 -19
- package/dist/bin/pushary-transcripts.js +7 -7
- package/dist/bin/pushary-upgrade.js +55 -25
- package/dist/bin/pushary-wait.js +23 -19
- package/dist/bin/pushary.js +15 -14
- package/dist/{chunk-R3YW55MY.js → chunk-2A53H4S6.js} +17 -15
- package/dist/{chunk-4YO4T5FV.js → chunk-2QGYMY7A.js} +83 -3
- package/dist/{chunk-MBK7N46B.js → chunk-2QTO5YIT.js} +6 -6
- package/dist/{chunk-D6S5EKXA.js → chunk-2VZAALEJ.js} +5 -9
- package/dist/chunk-2WXF3QJR.js +49 -0
- package/dist/{chunk-JCWZ23MJ.js → chunk-3I6IVOZV.js} +3 -3
- package/dist/chunk-3Z3A37WD.js +77 -0
- package/dist/{chunk-Z6HPS67T.js → chunk-5QUPKDI5.js} +1 -1
- package/dist/{chunk-JWKBDSPF.js → chunk-6TE27XZR.js} +2 -2
- package/dist/{chunk-STQRUH3S.js → chunk-7DVNSQWF.js} +59 -15
- package/dist/{chunk-QTO6HEZD.js → chunk-7PT35RY2.js} +2 -2
- package/dist/{chunk-7OIWWZAD.js → chunk-B64KHETR.js} +3 -3
- package/dist/chunk-BEJRK4DF.js +94 -0
- package/dist/chunk-BXET3ALR.js +46 -0
- package/dist/{chunk-6DJTDHBI.js → chunk-CD47ZFFZ.js} +1 -1
- package/dist/{chunk-UFVGSEWH.js → chunk-CKV3UPMU.js} +2 -2
- package/dist/{chunk-4FK6RZVJ.js → chunk-CLOSJ4ES.js} +1 -1
- package/dist/{chunk-AVNKVF7N.js → chunk-DKMD6AWR.js} +4 -4
- package/dist/{chunk-SBLPHUEB.js → chunk-DL7XWKYV.js} +7 -5
- package/dist/{chunk-BTQGAXZ3.js → chunk-DPGSLWOS.js} +8 -8
- package/dist/{chunk-KYO45G5L.js → chunk-DUZVXBBU.js} +1 -1
- package/dist/{chunk-EB4XGVBG.js → chunk-EUW7JL2K.js} +0 -32
- package/dist/{chunk-4D2AYNSE.js → chunk-FQ2GORVG.js} +2 -2
- package/dist/{chunk-W2KI5KPD.js → chunk-HRULIYDU.js} +2 -2
- package/dist/{chunk-QR6VE5ME.js → chunk-I5IJRMNV.js} +58 -8
- package/dist/{chunk-T7Y5EADL.js → chunk-I6MJXLMY.js} +2 -2
- package/dist/{chunk-N4EUSDKX.js → chunk-IAD2RT4L.js} +14 -14
- package/dist/{chunk-H37L7TT3.js → chunk-IHFDPV7C.js} +2 -2
- package/dist/{chunk-3GNUXXDZ.js → chunk-IHO3YQAN.js} +2 -2
- package/dist/{chunk-JWQZSYCK.js → chunk-KF3UZLYI.js} +1 -1
- package/dist/chunk-KFF7G225.js +599 -0
- package/dist/{chunk-MZPXVH4A.js → chunk-KHNFLYJO.js} +204 -28
- package/dist/{chunk-QFEM7R6T.js → chunk-KRCR2CRQ.js} +9 -9
- package/dist/{chunk-VXRXFU6Q.js → chunk-LKLVTG3V.js} +14 -7
- package/dist/{chunk-KFKL3FHS.js → chunk-LWOO567I.js} +4 -3
- package/dist/{chunk-HPRZJKRO.js → chunk-M6BZZFVQ.js} +1 -1
- package/dist/{chunk-X5NXPCIC.js → chunk-MFF3ONG5.js} +16 -2
- package/dist/{chunk-H7MMU64M.js → chunk-MGRFDGWU.js} +2 -2
- package/dist/{chunk-L76HTPU6.js → chunk-MKTJEXZ3.js} +3 -3
- package/dist/{chunk-NIBFSARF.js → chunk-MXHTGVFZ.js} +33 -9
- package/dist/{chunk-ADSQDYYG.js → chunk-N4QSPI3B.js} +54 -5
- package/dist/{chunk-AQ55ZSSS.js → chunk-NWDG3MSW.js} +1 -1
- package/dist/chunk-OP7IHC2I.js +24 -0
- package/dist/{chunk-KT5E2RLS.js → chunk-QOLITCIP.js} +1 -1
- package/dist/{chunk-JXISQ7DT.js → chunk-TCQ43LSG.js} +3 -3
- package/dist/chunk-TCWKTUAE.js +50 -0
- package/dist/{chunk-RQGODFQN.js → chunk-V5HPPF3E.js} +1 -1
- package/dist/{chunk-7264S5HZ.js → chunk-WG3K4TCH.js} +1 -1
- package/dist/{chunk-GKI6LFAV.js → chunk-WS4H76EP.js} +2 -2
- package/dist/{chunk-XWAYAO3V.js → chunk-WWOHTTVP.js} +2 -2
- package/dist/{chunk-SD3272LS.js → chunk-YIG2R3BJ.js} +9 -7
- package/dist/{chunk-ZUTU43FT.js → chunk-ZBHUHJG6.js} +4 -4
- package/dist/{chunk-AUUXS44H.js → chunk-ZBK6E2OR.js} +1 -1
- package/dist/{chunk-QQ4HBXZC.js → chunk-ZN3C6GBG.js} +84 -673
- package/dist/{chunk-CBQACHKY.js → chunk-ZSTSEBG7.js} +1 -1
- package/dist/{chunk-3PVDOCFI.js → chunk-ZW3XZLJC.js} +5 -5
- package/dist/{global-upgrade-E2HUEB4B.js → global-upgrade-I56HNM23.js} +6 -6
- package/dist/{paths-QVTEGNZV.js → paths-AGY43CXS.js} +2 -2
- package/dist/reapply-IA5XUKWW.js +57 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +19 -20
- package/dist/{upgrade-lock-JCIDZMHF.js → upgrade-lock-B34TAUKV.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-ANEAA37E.js +0 -197
- package/dist/chunk-MNWRUGMH.js +0 -86
- package/dist/chunk-RQSOEB4S.js +0 -44
- package/dist/reapply-5QVKM6LA.js +0 -38
|
@@ -2,52 +2,64 @@
|
|
|
2
2
|
import {
|
|
3
3
|
describeLastSeen,
|
|
4
4
|
listMachines
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-
|
|
5
|
+
} from "../chunk-2QTO5YIT.js";
|
|
6
|
+
import "../chunk-I6MJXLMY.js";
|
|
7
7
|
import "../chunk-RIVNNBEK.js";
|
|
8
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-LKLVTG3V.js";
|
|
9
9
|
import "../chunk-XHKBHWLX.js";
|
|
10
10
|
import "../chunk-6ICPEJY5.js";
|
|
11
11
|
import {
|
|
12
12
|
describeReach,
|
|
13
13
|
fetchChannels,
|
|
14
14
|
reachVerdict
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-IAD2RT4L.js";
|
|
16
16
|
import "../chunk-3EGEA4KH.js";
|
|
17
17
|
import "../chunk-QCGNGEGE.js";
|
|
18
|
+
import {
|
|
19
|
+
SIGNED_OUT_ON_MAC_MESSAGE,
|
|
20
|
+
activeKeyVerdictOf,
|
|
21
|
+
describeSignedOutKey,
|
|
22
|
+
readSignedOutDiagnosis
|
|
23
|
+
} from "../chunk-2WXF3QJR.js";
|
|
18
24
|
import {
|
|
19
25
|
createIo
|
|
20
26
|
} from "../chunk-U4TMAANR.js";
|
|
21
27
|
import {
|
|
22
28
|
exitOnHelpFlag
|
|
23
|
-
} from "../chunk-
|
|
29
|
+
} from "../chunk-CKV3UPMU.js";
|
|
24
30
|
import {
|
|
25
31
|
rejectUnknownFlags
|
|
26
32
|
} from "../chunk-GMXKITVA.js";
|
|
27
33
|
import {
|
|
28
34
|
readKeySource
|
|
29
|
-
} from "../chunk-
|
|
30
|
-
import "../chunk-
|
|
35
|
+
} from "../chunk-N4QSPI3B.js";
|
|
36
|
+
import "../chunk-MKTJEXZ3.js";
|
|
31
37
|
import {
|
|
32
38
|
checkApiKey,
|
|
33
39
|
describeKeyCheck
|
|
34
|
-
} from "../chunk-
|
|
35
|
-
import "../chunk-
|
|
36
|
-
import "../chunk-
|
|
40
|
+
} from "../chunk-LWOO567I.js";
|
|
41
|
+
import "../chunk-TCQ43LSG.js";
|
|
42
|
+
import "../chunk-DUZVXBBU.js";
|
|
37
43
|
import {
|
|
38
44
|
UsageError
|
|
39
45
|
} from "../chunk-7QLSKOSU.js";
|
|
40
46
|
import {
|
|
41
47
|
EXIT
|
|
42
48
|
} from "../chunk-KZERVKTD.js";
|
|
43
|
-
import "../chunk-
|
|
44
|
-
import "../chunk-
|
|
49
|
+
import "../chunk-FQ2GORVG.js";
|
|
50
|
+
import "../chunk-ZBHUHJG6.js";
|
|
45
51
|
import "../chunk-T7E75EKA.js";
|
|
46
|
-
import "../chunk-
|
|
47
|
-
import "../chunk-
|
|
48
|
-
import "../chunk-
|
|
52
|
+
import "../chunk-5QUPKDI5.js";
|
|
53
|
+
import "../chunk-7DVNSQWF.js";
|
|
54
|
+
import "../chunk-I5IJRMNV.js";
|
|
49
55
|
|
|
50
56
|
// src/status.ts
|
|
57
|
+
var signedOutReport = (facts, lines) => {
|
|
58
|
+
const signedOut = facts.signedOut;
|
|
59
|
+
if (signedOut?.kind !== "signed_out_on_mac") return null;
|
|
60
|
+
lines.push({ label: "Server", value: "key signed out on this Mac", ok: false });
|
|
61
|
+
return { lines, headline: SIGNED_OUT_ON_MAC_MESSAGE, next: [...describeSignedOutKey(signedOut)], exitCode: EXIT.UNAUTHENTICATED };
|
|
62
|
+
};
|
|
51
63
|
var keySourceLine = (source) => {
|
|
52
64
|
if (source.kind === "none") {
|
|
53
65
|
return { label: "Key", value: "none found", ok: false };
|
|
@@ -86,6 +98,8 @@ var buildStatusReport = (facts) => {
|
|
|
86
98
|
});
|
|
87
99
|
}
|
|
88
100
|
if (facts.source.kind === "none") {
|
|
101
|
+
const signedOut = signedOutReport(facts, lines);
|
|
102
|
+
if (signedOut) return signedOut;
|
|
89
103
|
return {
|
|
90
104
|
lines,
|
|
91
105
|
headline: "Not set up on this machine.",
|
|
@@ -95,6 +109,8 @@ var buildStatusReport = (facts) => {
|
|
|
95
109
|
}
|
|
96
110
|
const check = facts.keyCheck;
|
|
97
111
|
if (check && check.kind !== "ok") {
|
|
112
|
+
const signedOut = check.kind === "rejected" ? signedOutReport(facts, lines) : null;
|
|
113
|
+
if (signedOut) return signedOut;
|
|
98
114
|
const report = describeKeyCheck(check);
|
|
99
115
|
lines.push({ label: "Server", value: report.message, ok: check.kind === "unreachable" ? null : false });
|
|
100
116
|
return { lines, headline: report.message, next: [...report.next], exitCode: report.exitCode };
|
|
@@ -148,7 +164,7 @@ var buildStatusReport = (facts) => {
|
|
|
148
164
|
return {
|
|
149
165
|
lines,
|
|
150
166
|
headline: verdict.kind === "nobody" ? "Configured, but no device can receive an approval." : verdict.kind === "others" ? "Configured, but the only devices here are your teammates'." : "Configured, and nothing proves an approval reaches you.",
|
|
151
|
-
next: verdict.kind === "nobody" ? ["Run `pushary
|
|
167
|
+
next: verdict.kind === "nobody" ? ["Run `pushary pair` to pair your phone, or install the Pushary app."] : ["Run `pushary pair` to pair your own phone.", "Or `pushary doctor --roundtrip` to prove one of these is yours."],
|
|
152
168
|
exitCode: EXIT.NO_DEVICE
|
|
153
169
|
};
|
|
154
170
|
}
|
|
@@ -156,7 +172,7 @@ var buildStatusReport = (facts) => {
|
|
|
156
172
|
return {
|
|
157
173
|
lines,
|
|
158
174
|
headline: "Configured, but nothing in your pocket can receive an approval.",
|
|
159
|
-
next: ["Run `pushary
|
|
175
|
+
next: ["Run `pushary pair` to pair your phone, or install the Pushary app."],
|
|
160
176
|
exitCode: EXIT.NO_DEVICE
|
|
161
177
|
};
|
|
162
178
|
}
|
|
@@ -208,7 +224,7 @@ var main = async () => {
|
|
|
208
224
|
if (keyCheck.kind === "ok") channels = await fetchChannels(source.key);
|
|
209
225
|
}
|
|
210
226
|
const machines = devices && keyCheck?.kind === "ok" ? await listMachines(source.key) : null;
|
|
211
|
-
const facts = { source, keyCheck, channels };
|
|
227
|
+
const facts = { source, keyCheck, channels, signedOut: readSignedOutDiagnosis(source.key, activeKeyVerdictOf(keyCheck)) };
|
|
212
228
|
const report = buildStatusReport(facts);
|
|
213
229
|
if (json) {
|
|
214
230
|
const payload = statusJson(facts, report);
|
|
@@ -2,49 +2,47 @@
|
|
|
2
2
|
import {
|
|
3
3
|
activeHookSource,
|
|
4
4
|
activeIdentity
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-ANEAA37E.js";
|
|
5
|
+
} from "../chunk-KHNFLYJO.js";
|
|
7
6
|
import {
|
|
8
7
|
readHookInput
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
8
|
+
} from "../chunk-WWOHTTVP.js";
|
|
9
|
+
import "../chunk-DPGSLWOS.js";
|
|
11
10
|
import "../chunk-SGZJ5LYH.js";
|
|
12
|
-
import "../chunk-
|
|
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-HPRZJKRO.js";
|
|
11
|
+
import "../chunk-YIG2R3BJ.js";
|
|
12
|
+
import "../chunk-DL7XWKYV.js";
|
|
13
|
+
import "../chunk-LKLVTG3V.js";
|
|
14
|
+
import "../chunk-2QGYMY7A.js";
|
|
15
|
+
import "../chunk-3I6IVOZV.js";
|
|
16
|
+
import "../chunk-WG3K4TCH.js";
|
|
17
|
+
import "../chunk-ZBK6E2OR.js";
|
|
18
|
+
import "../chunk-CLOSJ4ES.js";
|
|
19
|
+
import "../chunk-M6BZZFVQ.js";
|
|
22
20
|
import "../chunk-XHKBHWLX.js";
|
|
23
21
|
import "../chunk-6ICPEJY5.js";
|
|
24
22
|
import {
|
|
25
23
|
handleStop,
|
|
26
24
|
handleSubagentStop,
|
|
27
25
|
isSubagentStop
|
|
28
|
-
} from "../chunk-
|
|
26
|
+
} from "../chunk-KRCR2CRQ.js";
|
|
29
27
|
import "../chunk-N6IOSZOE.js";
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
28
|
+
import "../chunk-CD47ZFFZ.js";
|
|
29
|
+
import "../chunk-2VZAALEJ.js";
|
|
30
|
+
import "../chunk-DKMD6AWR.js";
|
|
33
31
|
import "../chunk-POFBE6ZY.js";
|
|
34
32
|
import "../chunk-GMXKITVA.js";
|
|
35
|
-
import "../chunk-
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
39
|
-
import "../chunk-
|
|
33
|
+
import "../chunk-N4QSPI3B.js";
|
|
34
|
+
import "../chunk-MKTJEXZ3.js";
|
|
35
|
+
import "../chunk-LWOO567I.js";
|
|
36
|
+
import "../chunk-TCQ43LSG.js";
|
|
37
|
+
import "../chunk-DUZVXBBU.js";
|
|
40
38
|
import "../chunk-7QLSKOSU.js";
|
|
41
39
|
import "../chunk-KZERVKTD.js";
|
|
42
|
-
import "../chunk-
|
|
43
|
-
import "../chunk-
|
|
40
|
+
import "../chunk-FQ2GORVG.js";
|
|
41
|
+
import "../chunk-ZBHUHJG6.js";
|
|
44
42
|
import "../chunk-T7E75EKA.js";
|
|
45
|
-
import "../chunk-
|
|
46
|
-
import "../chunk-
|
|
47
|
-
import "../chunk-
|
|
43
|
+
import "../chunk-5QUPKDI5.js";
|
|
44
|
+
import "../chunk-7DVNSQWF.js";
|
|
45
|
+
import "../chunk-I5IJRMNV.js";
|
|
48
46
|
|
|
49
47
|
// bin/pushary-stop-hook.ts
|
|
50
48
|
var AGENT = activeIdentity(process.argv);
|
|
@@ -2,47 +2,45 @@
|
|
|
2
2
|
import {
|
|
3
3
|
activeHookSource,
|
|
4
4
|
activeIdentity
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-ANEAA37E.js";
|
|
5
|
+
} from "../chunk-KHNFLYJO.js";
|
|
7
6
|
import {
|
|
8
7
|
readHookInput
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
8
|
+
} from "../chunk-WWOHTTVP.js";
|
|
9
|
+
import "../chunk-DPGSLWOS.js";
|
|
11
10
|
import "../chunk-SGZJ5LYH.js";
|
|
12
|
-
import "../chunk-
|
|
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-HPRZJKRO.js";
|
|
11
|
+
import "../chunk-YIG2R3BJ.js";
|
|
12
|
+
import "../chunk-DL7XWKYV.js";
|
|
13
|
+
import "../chunk-LKLVTG3V.js";
|
|
14
|
+
import "../chunk-2QGYMY7A.js";
|
|
15
|
+
import "../chunk-3I6IVOZV.js";
|
|
16
|
+
import "../chunk-WG3K4TCH.js";
|
|
17
|
+
import "../chunk-ZBK6E2OR.js";
|
|
18
|
+
import "../chunk-CLOSJ4ES.js";
|
|
19
|
+
import "../chunk-M6BZZFVQ.js";
|
|
22
20
|
import "../chunk-XHKBHWLX.js";
|
|
23
21
|
import "../chunk-6ICPEJY5.js";
|
|
24
22
|
import {
|
|
25
23
|
handleStopFailure
|
|
26
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-KRCR2CRQ.js";
|
|
27
25
|
import "../chunk-N6IOSZOE.js";
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-CD47ZFFZ.js";
|
|
27
|
+
import "../chunk-2VZAALEJ.js";
|
|
28
|
+
import "../chunk-DKMD6AWR.js";
|
|
31
29
|
import "../chunk-POFBE6ZY.js";
|
|
32
30
|
import "../chunk-GMXKITVA.js";
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
35
|
-
import "../chunk-
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
31
|
+
import "../chunk-N4QSPI3B.js";
|
|
32
|
+
import "../chunk-MKTJEXZ3.js";
|
|
33
|
+
import "../chunk-LWOO567I.js";
|
|
34
|
+
import "../chunk-TCQ43LSG.js";
|
|
35
|
+
import "../chunk-DUZVXBBU.js";
|
|
38
36
|
import "../chunk-7QLSKOSU.js";
|
|
39
37
|
import "../chunk-KZERVKTD.js";
|
|
40
|
-
import "../chunk-
|
|
41
|
-
import "../chunk-
|
|
38
|
+
import "../chunk-FQ2GORVG.js";
|
|
39
|
+
import "../chunk-ZBHUHJG6.js";
|
|
42
40
|
import "../chunk-T7E75EKA.js";
|
|
43
|
-
import "../chunk-
|
|
44
|
-
import "../chunk-
|
|
45
|
-
import "../chunk-
|
|
41
|
+
import "../chunk-5QUPKDI5.js";
|
|
42
|
+
import "../chunk-7DVNSQWF.js";
|
|
43
|
+
import "../chunk-I5IJRMNV.js";
|
|
46
44
|
|
|
47
45
|
// bin/pushary-stopfailure-hook.ts
|
|
48
46
|
var AGENT = activeIdentity(process.argv);
|
|
@@ -1,37 +1,40 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
exitOnFailedSettingsRequest
|
|
4
|
+
} from "../chunk-BEJRK4DF.js";
|
|
5
|
+
import "../chunk-2WXF3QJR.js";
|
|
2
6
|
import {
|
|
3
7
|
createIo
|
|
4
8
|
} from "../chunk-U4TMAANR.js";
|
|
5
9
|
import {
|
|
6
10
|
exitOnHelpFlag
|
|
7
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-CKV3UPMU.js";
|
|
8
12
|
import {
|
|
9
13
|
rejectUnknownFlags
|
|
10
14
|
} from "../chunk-GMXKITVA.js";
|
|
15
|
+
import "../chunk-N4QSPI3B.js";
|
|
16
|
+
import "../chunk-LWOO567I.js";
|
|
17
|
+
import "../chunk-TCQ43LSG.js";
|
|
18
|
+
import "../chunk-DUZVXBBU.js";
|
|
11
19
|
import {
|
|
12
20
|
UsageError
|
|
13
21
|
} from "../chunk-7QLSKOSU.js";
|
|
14
22
|
import {
|
|
15
23
|
EXIT
|
|
16
24
|
} from "../chunk-KZERVKTD.js";
|
|
25
|
+
import "../chunk-FQ2GORVG.js";
|
|
26
|
+
import "../chunk-ZBHUHJG6.js";
|
|
27
|
+
import "../chunk-T7E75EKA.js";
|
|
17
28
|
import {
|
|
18
29
|
getApiKey,
|
|
19
30
|
getBaseUrl
|
|
20
|
-
} from "../chunk-
|
|
21
|
-
import "../chunk-
|
|
22
|
-
import "../chunk-
|
|
31
|
+
} from "../chunk-5QUPKDI5.js";
|
|
32
|
+
import "../chunk-7DVNSQWF.js";
|
|
33
|
+
import "../chunk-I5IJRMNV.js";
|
|
23
34
|
|
|
24
35
|
// bin/pushary-suggestions.ts
|
|
25
36
|
exitOnHelpFlag("suggestions");
|
|
26
|
-
var { dim, green, cyan
|
|
27
|
-
var errorMessage = async (res) => {
|
|
28
|
-
try {
|
|
29
|
-
const body = await res.json();
|
|
30
|
-
return body.error ?? `HTTP ${res.status}`;
|
|
31
|
-
} catch {
|
|
32
|
-
return `HTTP ${res.status}`;
|
|
33
|
-
}
|
|
34
|
-
};
|
|
37
|
+
var { dim, green, cyan } = createIo();
|
|
35
38
|
{
|
|
36
39
|
const raw = process.argv.slice(2);
|
|
37
40
|
const positional = raw[0] === "suggestions" ? raw.slice(1) : raw;
|
|
@@ -46,6 +49,7 @@ var errorMessage = async (res) => {
|
|
|
46
49
|
var main = async () => {
|
|
47
50
|
const apiKey = getApiKey();
|
|
48
51
|
const baseUrl = getBaseUrl();
|
|
52
|
+
const settings = { request: "suggestions", apiKey, baseUrl };
|
|
49
53
|
const headers = { Authorization: `Bearer ${apiKey}`, "Content-Type": "application/json" };
|
|
50
54
|
const rest = process.argv.slice(2);
|
|
51
55
|
const args = rest[0] === "suggestions" ? rest.slice(1) : rest;
|
|
@@ -61,18 +65,12 @@ var main = async () => {
|
|
|
61
65
|
headers,
|
|
62
66
|
body: JSON.stringify({ id })
|
|
63
67
|
});
|
|
64
|
-
if (!res2.ok)
|
|
65
|
-
console.error(` ${red("\u2717")} ${await errorMessage(res2)}`);
|
|
66
|
-
process.exit(1);
|
|
67
|
-
}
|
|
68
|
+
if (!res2.ok) await exitOnFailedSettingsRequest(res2, settings);
|
|
68
69
|
console.log(` ${green("\u2713")} Accepted. The rule is live now; your agents will pick it up on their next check.`);
|
|
69
70
|
return;
|
|
70
71
|
}
|
|
71
72
|
const res = await fetch(`${baseUrl}/api/mcp/suggestions`, { headers });
|
|
72
|
-
if (!res.ok)
|
|
73
|
-
console.error(` ${red("\u2717")} ${await errorMessage(res)}`);
|
|
74
|
-
process.exit(1);
|
|
75
|
-
}
|
|
73
|
+
if (!res.ok) await exitOnFailedSettingsRequest(res, settings);
|
|
76
74
|
const { suggestions } = await res.json();
|
|
77
75
|
if (suggestions.length === 0) {
|
|
78
76
|
console.log(` ${dim("No pending suggestions. Keep approving; a rule is offered once a pattern is earned.")}`);
|
|
@@ -1,32 +1,31 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
registerTranscript
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-DPGSLWOS.js";
|
|
5
5
|
import "../chunk-SGZJ5LYH.js";
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-HPRZJKRO.js";
|
|
6
|
+
import "../chunk-YIG2R3BJ.js";
|
|
7
|
+
import "../chunk-DL7XWKYV.js";
|
|
8
|
+
import "../chunk-LKLVTG3V.js";
|
|
9
|
+
import "../chunk-2QGYMY7A.js";
|
|
10
|
+
import "../chunk-3I6IVOZV.js";
|
|
11
|
+
import "../chunk-WG3K4TCH.js";
|
|
12
|
+
import "../chunk-ZBK6E2OR.js";
|
|
13
|
+
import "../chunk-CLOSJ4ES.js";
|
|
14
|
+
import "../chunk-M6BZZFVQ.js";
|
|
16
15
|
import "../chunk-XHKBHWLX.js";
|
|
17
16
|
import "../chunk-6ICPEJY5.js";
|
|
18
|
-
import "../chunk-
|
|
17
|
+
import "../chunk-CD47ZFFZ.js";
|
|
19
18
|
import "../chunk-GMXKITVA.js";
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-N4QSPI3B.js";
|
|
20
|
+
import "../chunk-DUZVXBBU.js";
|
|
22
21
|
import "../chunk-7QLSKOSU.js";
|
|
23
22
|
import "../chunk-KZERVKTD.js";
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
23
|
+
import "../chunk-FQ2GORVG.js";
|
|
24
|
+
import "../chunk-ZBHUHJG6.js";
|
|
26
25
|
import "../chunk-T7E75EKA.js";
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-5QUPKDI5.js";
|
|
27
|
+
import "../chunk-7DVNSQWF.js";
|
|
28
|
+
import "../chunk-I5IJRMNV.js";
|
|
30
29
|
|
|
31
30
|
// bin/pushary-transcript-register.ts
|
|
32
31
|
var raw = "";
|
|
@@ -6,17 +6,17 @@ import {
|
|
|
6
6
|
} from "../chunk-SGZJ5LYH.js";
|
|
7
7
|
import {
|
|
8
8
|
transcriptsEnabled
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-M6BZZFVQ.js";
|
|
10
10
|
import {
|
|
11
11
|
exitOnHelpFlag
|
|
12
|
-
} from "../chunk-
|
|
13
|
-
import "../chunk-
|
|
12
|
+
} from "../chunk-CKV3UPMU.js";
|
|
13
|
+
import "../chunk-N4QSPI3B.js";
|
|
14
14
|
import "../chunk-KZERVKTD.js";
|
|
15
|
-
import "../chunk-
|
|
15
|
+
import "../chunk-FQ2GORVG.js";
|
|
16
16
|
import "../chunk-T7E75EKA.js";
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
19
|
-
import "../chunk-
|
|
17
|
+
import "../chunk-5QUPKDI5.js";
|
|
18
|
+
import "../chunk-7DVNSQWF.js";
|
|
19
|
+
import "../chunk-I5IJRMNV.js";
|
|
20
20
|
|
|
21
21
|
// bin/pushary-transcripts.ts
|
|
22
22
|
exitOnHelpFlag("transcripts");
|
|
@@ -9,29 +9,33 @@ import {
|
|
|
9
9
|
upgradeFinishOutcome,
|
|
10
10
|
upgradeInstalledPackage,
|
|
11
11
|
withUpgradeLock
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-ZW3XZLJC.js";
|
|
13
13
|
import {
|
|
14
14
|
installWithUpgradeLock
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-V5HPPF3E.js";
|
|
16
16
|
import {
|
|
17
17
|
ensureCodexTrustAfterReapply,
|
|
18
18
|
reapplyAllAgents
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-MXHTGVFZ.js";
|
|
20
|
+
import "../chunk-3Z3A37WD.js";
|
|
20
21
|
import {
|
|
21
22
|
describeCodexTrustConfirmation
|
|
22
|
-
} from "../chunk-
|
|
23
|
-
import "../chunk-
|
|
23
|
+
} from "../chunk-6TE27XZR.js";
|
|
24
|
+
import "../chunk-MGRFDGWU.js";
|
|
24
25
|
import {
|
|
25
26
|
waitForMachineReadiness
|
|
26
|
-
} from "../chunk-
|
|
27
|
-
import
|
|
28
|
-
|
|
27
|
+
} from "../chunk-2QTO5YIT.js";
|
|
28
|
+
import {
|
|
29
|
+
appAgentKey
|
|
30
|
+
} from "../chunk-OP7IHC2I.js";
|
|
31
|
+
import "../chunk-MFF3ONG5.js";
|
|
32
|
+
import "../chunk-KHNFLYJO.js";
|
|
29
33
|
import {
|
|
30
34
|
detectProviderLiveCapabilities,
|
|
31
35
|
expectedLaunchCapabilities,
|
|
32
36
|
hasSpawnProvider,
|
|
33
37
|
resolveControlPolicy
|
|
34
|
-
} from "../chunk-
|
|
38
|
+
} from "../chunk-I6MJXLMY.js";
|
|
35
39
|
import "../chunk-RIVNNBEK.js";
|
|
36
40
|
import {
|
|
37
41
|
AUTO_UPDATE_DISABLE_ENV,
|
|
@@ -42,8 +46,9 @@ import {
|
|
|
42
46
|
parseAutoUpdateFlag,
|
|
43
47
|
readAutoUpdateState,
|
|
44
48
|
updateAutoUpdateState
|
|
45
|
-
} from "../chunk-
|
|
46
|
-
import "../chunk-
|
|
49
|
+
} from "../chunk-7PT35RY2.js";
|
|
50
|
+
import "../chunk-YIG2R3BJ.js";
|
|
51
|
+
import "../chunk-DL7XWKYV.js";
|
|
47
52
|
import {
|
|
48
53
|
DAEMON_COLD_START_TIMEOUT_MS,
|
|
49
54
|
daemonHasRemoteProof,
|
|
@@ -55,45 +60,60 @@ import {
|
|
|
55
60
|
replaceDaemonService,
|
|
56
61
|
stopDaemonService,
|
|
57
62
|
waitForDaemonRemoteProof
|
|
58
|
-
} from "../chunk-
|
|
59
|
-
import "../chunk-
|
|
63
|
+
} from "../chunk-LKLVTG3V.js";
|
|
64
|
+
import "../chunk-2QGYMY7A.js";
|
|
65
|
+
import "../chunk-3I6IVOZV.js";
|
|
66
|
+
import "../chunk-WG3K4TCH.js";
|
|
60
67
|
import "../chunk-XHKBHWLX.js";
|
|
61
68
|
import "../chunk-6ICPEJY5.js";
|
|
62
|
-
import "../chunk-
|
|
69
|
+
import "../chunk-KRCR2CRQ.js";
|
|
70
|
+
import "../chunk-N6IOSZOE.js";
|
|
71
|
+
import "../chunk-CD47ZFFZ.js";
|
|
72
|
+
import "../chunk-2VZAALEJ.js";
|
|
73
|
+
import "../chunk-DKMD6AWR.js";
|
|
63
74
|
import "../chunk-POFBE6ZY.js";
|
|
64
75
|
import {
|
|
65
76
|
exitOnHelpFlag
|
|
66
|
-
} from "../chunk-
|
|
77
|
+
} from "../chunk-CKV3UPMU.js";
|
|
78
|
+
import "../chunk-GMXKITVA.js";
|
|
67
79
|
import {
|
|
68
|
-
readControlMode
|
|
69
|
-
|
|
70
|
-
|
|
80
|
+
readControlMode,
|
|
81
|
+
recordMacAppKeyPrefix
|
|
82
|
+
} from "../chunk-N4QSPI3B.js";
|
|
83
|
+
import "../chunk-MKTJEXZ3.js";
|
|
84
|
+
import "../chunk-LWOO567I.js";
|
|
85
|
+
import "../chunk-TCQ43LSG.js";
|
|
86
|
+
import "../chunk-DUZVXBBU.js";
|
|
87
|
+
import "../chunk-7QLSKOSU.js";
|
|
71
88
|
import {
|
|
72
89
|
EXIT
|
|
73
90
|
} from "../chunk-KZERVKTD.js";
|
|
74
|
-
import "../chunk-
|
|
91
|
+
import "../chunk-FQ2GORVG.js";
|
|
75
92
|
import {
|
|
76
93
|
LATEST_TAG,
|
|
77
94
|
autoUpdateState,
|
|
95
|
+
bridgeAgentKey,
|
|
78
96
|
claudeJson,
|
|
79
97
|
codexConfigToml,
|
|
80
98
|
cursorPluginDir,
|
|
81
99
|
fetchLatestPublishedVersion,
|
|
82
100
|
geminiSettings,
|
|
83
101
|
vscodePluginDir
|
|
84
|
-
} from "../chunk-
|
|
85
|
-
import
|
|
102
|
+
} from "../chunk-ZBHUHJG6.js";
|
|
103
|
+
import {
|
|
104
|
+
readJsonSafe
|
|
105
|
+
} from "../chunk-T7E75EKA.js";
|
|
86
106
|
import {
|
|
87
107
|
getApiKey
|
|
88
|
-
} from "../chunk-
|
|
108
|
+
} from "../chunk-5QUPKDI5.js";
|
|
89
109
|
import {
|
|
90
110
|
NPX_LATEST_COMMAND
|
|
91
|
-
} from "../chunk-
|
|
111
|
+
} from "../chunk-7DVNSQWF.js";
|
|
92
112
|
import {
|
|
93
113
|
CANONICAL_PACKAGE,
|
|
94
114
|
LEGACY_PACKAGE,
|
|
95
115
|
getPackageVersion
|
|
96
|
-
} from "../chunk-
|
|
116
|
+
} from "../chunk-I5IJRMNV.js";
|
|
97
117
|
|
|
98
118
|
// bin/pushary-upgrade.ts
|
|
99
119
|
import { existsSync } from "fs";
|
|
@@ -142,9 +162,13 @@ var finishUpgrade = async () => {
|
|
|
142
162
|
} catch {
|
|
143
163
|
apiKey = void 0;
|
|
144
164
|
}
|
|
165
|
+
const bridgeAgentKey2 = readJsonSafe(bridgeAgentKey());
|
|
166
|
+
const macAppKey = bridgeAgentKey2.kind === "ok" ? appAgentKey(bridgeAgentKey2.value) : null;
|
|
167
|
+
if (macAppKey) recordMacAppKeyPrefix(macAppKey);
|
|
145
168
|
const inspectedAgents = reapplyAllAgents(apiKey);
|
|
146
169
|
const codexTrust = await ensureCodexTrustAfterReapply(inspectedAgents);
|
|
147
170
|
const refreshed = inspectedAgents.filter((agent) => agent.result.reapplied);
|
|
171
|
+
const keptForApp = inspectedAgents.filter((agent) => agent.heldBy === "app");
|
|
148
172
|
const failedRefreshes = inspectedAgents.filter((agent) => agent.result.failed);
|
|
149
173
|
const configuredControlProviders = inspectedAgents.filter((agent) => agent.result.configured && (agent.id === "claude" || agent.id === "codex" || agent.id === "gemini")).map((agent) => agent.id);
|
|
150
174
|
const controlMode = readControlMode();
|
|
@@ -191,9 +215,14 @@ var finishUpgrade = async () => {
|
|
|
191
215
|
console.log();
|
|
192
216
|
console.log("No key was readable here, so MCP entries kept the key they already had.");
|
|
193
217
|
}
|
|
194
|
-
} else if (failedRefreshes.length === 0) {
|
|
218
|
+
} else if (failedRefreshes.length === 0 && keptForApp.length === 0) {
|
|
195
219
|
console.log("No agent config on this machine needed refreshing.");
|
|
196
220
|
}
|
|
221
|
+
if (keptForApp.length > 0) {
|
|
222
|
+
if (refreshed.length > 0) console.log();
|
|
223
|
+
console.log(KEPT_FOR_APP_HEADING);
|
|
224
|
+
for (const agent of keptForApp) console.log(` ${agent.label}`);
|
|
225
|
+
}
|
|
197
226
|
if (codexTrust) {
|
|
198
227
|
console.log();
|
|
199
228
|
console.log(describeCodexTrustConfirmation(codexTrust));
|
|
@@ -212,6 +241,7 @@ var finishUpgrade = async () => {
|
|
|
212
241
|
console.log(controlPolicy === "disabled" ? "Done. Your hooks use the new global install; phone-start remains disabled." : controlPolicy === "unsupported" || controlPolicy === "preserve-absent" ? "Done. Your hooks use the new global install; no background service was added." : "Done. Your hooks and background service use the new global install.");
|
|
213
242
|
console.log("Verify with: pushary doctor");
|
|
214
243
|
};
|
|
244
|
+
var KEPT_FOR_APP_HEADING = "Kept for the Pushary Mac app, which owns these agents. Nothing in their config was changed:";
|
|
215
245
|
var AUTO_UPDATE_ON_MESSAGE = "Automatic updates are on. Pushary checks for a new version once a day, when an agent session starts.";
|
|
216
246
|
var AUTO_UPDATE_OFF_MESSAGE = "Automatic updates are off. Turn them back on with: pushary upgrade --auto=on";
|
|
217
247
|
var AUTO_UPDATE_RUN_MESSAGES = {
|