@pushary/agent-hooks 1.9.36 → 1.9.38
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 +12 -0
- package/dist/bin/pushary-bell-hook.js +25 -25
- package/dist/bin/pushary-bell.js +9 -9
- package/dist/bin/pushary-claude.js +24 -24
- package/dist/bin/pushary-clean.js +29 -29
- package/dist/bin/pushary-codex-bridge.js +40 -29
- package/dist/bin/pushary-codex-hook.js +66 -41
- package/dist/bin/pushary-codex.js +12 -12
- package/dist/bin/pushary-connect.js +24 -24
- package/dist/bin/pushary-cowork.js +5 -5
- package/dist/bin/pushary-daemon.js +32 -32
- package/dist/bin/pushary-disconnect.js +24 -24
- package/dist/bin/pushary-doctor.js +33 -33
- package/dist/bin/pushary-elicitation-hook.js +25 -25
- package/dist/bin/pushary-gemini-bridge.js +13 -13
- package/dist/bin/pushary-gemini-hook.js +27 -27
- package/dist/bin/pushary-hook.js +29 -29
- package/dist/bin/pushary-login.js +12 -12
- package/dist/bin/pushary-logout.js +24 -24
- package/dist/bin/pushary-mcp.js +9 -9
- package/dist/bin/pushary-mode.js +12 -12
- package/dist/bin/pushary-notification-hook.js +24 -24
- package/dist/bin/pushary-opencode-hook.js +26 -26
- package/dist/bin/pushary-permission-denied-hook.js +29 -29
- package/dist/bin/pushary-permission-hook.js +28 -28
- package/dist/bin/pushary-post-hook.js +24 -24
- package/dist/bin/pushary-prompt-hook.js +24 -24
- package/dist/bin/pushary-session-end-hook.js +24 -24
- package/dist/bin/pushary-session-start-hook.js +28 -28
- package/dist/bin/pushary-setup.js +35 -35
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +26 -26
- package/dist/bin/pushary-stop-hook.js +24 -24
- package/dist/bin/pushary-stopfailure-hook.js +24 -24
- package/dist/bin/pushary-suggestions.js +12 -12
- package/dist/bin/pushary-transcript-register.js +17 -17
- package/dist/bin/pushary-transcripts.js +7 -7
- package/dist/bin/pushary-upgrade.js +30 -30
- package/dist/bin/pushary-wait.js +12 -12
- package/dist/bin/pushary.js +6 -6
- package/dist/{chunk-NE5OPCD5.js → chunk-3DXDJL4K.js} +4 -4
- package/dist/{chunk-EGTVN6YV.js → chunk-3HUHP4A4.js} +1 -1
- package/dist/{chunk-H3MOTS2C.js → chunk-4D54LZGF.js} +1 -1
- package/dist/{chunk-K5X25GUV.js → chunk-4GEHVRV3.js} +9 -6
- package/dist/{chunk-UDHT3W7I.js → chunk-5DC2PRVT.js} +2 -2
- package/dist/{chunk-VRALPR4B.js → chunk-5KVL4AP5.js} +4 -4
- package/dist/{chunk-SHLLDMPM.js → chunk-7GSOIBVM.js} +4 -4
- package/dist/{chunk-FBKGGIFB.js → chunk-7O5U5TED.js} +5 -5
- package/dist/{chunk-EH635XAR.js → chunk-7P43CI6G.js} +2 -2
- package/dist/{chunk-BS64ZHTB.js → chunk-ABDGTGBT.js} +5 -4
- package/dist/{chunk-7GQILLZD.js → chunk-AI2YBW42.js} +5 -5
- package/dist/{chunk-Y5FCB66K.js → chunk-AJIH4JGB.js} +5 -5
- package/dist/{chunk-MBBPLF5T.js → chunk-B54Q4I7T.js} +2 -2
- package/dist/{chunk-CRZ4CP7C.js → chunk-BMHD2NEH.js} +3 -3
- package/dist/chunk-CHRRBADC.js +184 -0
- package/dist/{chunk-ML42WKI7.js → chunk-CW3IJD2H.js} +3 -3
- package/dist/{chunk-JWURAYXK.js → chunk-D2G6HWEA.js} +2 -2
- package/dist/{chunk-PRKH662J.js → chunk-D322CKL2.js} +1 -1
- package/dist/{chunk-HCKBZYBW.js → chunk-D5IAEPFA.js} +2 -2
- package/dist/{chunk-QHL3Y6D2.js → chunk-DDRLK67P.js} +2 -2
- package/dist/{chunk-TRNSODJ6.js → chunk-FLEWP4BV.js} +1 -1
- package/dist/{chunk-EQXMVKKD.js → chunk-FZEQWY7Q.js} +1 -1
- package/dist/{chunk-J36W6ARB.js → chunk-G3CNMCQS.js} +1 -1
- package/dist/{chunk-ULDOQF4Q.js → chunk-GBNG6QEV.js} +3 -3
- package/dist/{chunk-GTEF64CJ.js → chunk-HCXBAF43.js} +1 -1
- package/dist/{chunk-U2PUHT4W.js → chunk-IBUAVM6X.js} +1 -1
- package/dist/{chunk-CHWJ7ZXI.js → chunk-J2APHNZL.js} +5 -5
- package/dist/{chunk-5ML6E3L7.js → chunk-JVKY6ILU.js} +1 -1
- package/dist/{chunk-42FTY5II.js → chunk-JWMCGL3P.js} +3 -3
- package/dist/{chunk-4E4PZQFE.js → chunk-K2CZJBUS.js} +4 -4
- package/dist/{chunk-YRAPCLOB.js → chunk-KBMQYMGG.js} +6 -6
- package/dist/{chunk-6LKIK7V2.js → chunk-L5WOYQT7.js} +8 -8
- package/dist/{chunk-ETGGQWBR.js → chunk-LZZ3EKKI.js} +4 -4
- package/dist/{chunk-26AEFJSK.js → chunk-MBTNHQCI.js} +2 -2
- package/dist/{chunk-5S2P2CK6.js → chunk-MIENLS7P.js} +2 -2
- package/dist/{chunk-LL256PHP.js → chunk-MXEDMQLC.js} +1 -1
- package/dist/{chunk-RNRCOOQZ.js → chunk-N2I7RMC6.js} +34 -109
- package/dist/{chunk-RYXSY3RH.js → chunk-NRVZNZVE.js} +5 -5
- package/dist/{chunk-GNESC5EF.js → chunk-OLS4DTFN.js} +3 -3
- package/dist/{chunk-L25KSDIB.js → chunk-PA3OZGIA.js} +8 -8
- package/dist/{chunk-QPUTCMAK.js → chunk-QC7ZNZMZ.js} +1 -1
- package/dist/{chunk-2DZBIELP.js → chunk-QOUW57RT.js} +170 -67
- package/dist/{chunk-55XIK7YS.js → chunk-QZ4KOMFE.js} +1 -1
- package/dist/{chunk-CRZKFEEO.js → chunk-RISJLN3O.js} +2 -2
- package/dist/{chunk-CHNSFTD5.js → chunk-RULJMNY7.js} +2 -2
- package/dist/{chunk-556JCOMK.js → chunk-STXWIYAY.js} +4 -4
- package/dist/{chunk-IPYCRJGM.js → chunk-TEG2JL5M.js} +7 -7
- package/dist/{chunk-KCUTE3EB.js → chunk-VITJTFFT.js} +2 -2
- package/dist/{chunk-DC6KHRVH.js → chunk-W2TXFM6O.js} +1 -1
- package/dist/{chunk-JAA7YJJZ.js → chunk-WASCAI2U.js} +4 -4
- package/dist/{chunk-7MOFAAZ3.js → chunk-WLQENMOW.js} +4 -4
- package/dist/{chunk-X4BPD5RD.js → chunk-WR3GKYKD.js} +1 -1
- package/dist/{chunk-F5W7B7YT.js → chunk-Y3XF324T.js} +1 -1
- package/dist/{chunk-4NMDFPK7.js → chunk-ZFJAZBBF.js} +5 -5
- package/dist/{global-upgrade-EF6RZBPU.js → global-upgrade-ROZHFAO5.js} +6 -6
- package/dist/{paths-F645XTFZ.js → paths-FSFFGRRU.js} +2 -2
- package/dist/{reapply-HJOTWJAN.js → reapply-WY5LHIR4.js} +20 -20
- package/dist/src/index.js +19 -19
- package/dist/{upgrade-lock-APUN7YKQ.js → upgrade-lock-6PYOTF4X.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-MNXHKEXB.js +0 -71
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.9.38
|
|
4
|
+
|
|
5
|
+
- Owned Codex child questions reach the long-wait bridge instead of being asked first by a short-lived native hook. The matching Mac helper hands these questions to the CLI; kill, deny and command-permission checks still apply.
|
|
6
|
+
- Questions in the personal Codex child bridge keep waiting until answered or cancelled when Codex supplies no deadline. A short poll or temporary network failure no longer cancels the question.
|
|
7
|
+
- A cancelled request or an explicit Codex deadline still stops the wait and rejects a late answer. Native permission hooks and recovery after closing Codex keep their existing limits.
|
|
8
|
+
- With the updated Pushary server, ordinary MCP questions remain available after the cache clears and can receive one reminder after ten minutes. This saves the answer; it does not promise that a closed agent will restart.
|
|
9
|
+
|
|
10
|
+
## 1.9.37
|
|
11
|
+
|
|
12
|
+
- Codex questions reach Pushary. When Codex asks you something with its question card (`request_user_input`), the question and its choices go to your phone or the Mac notch, and your answer goes back to Codex in place of the card. A question with no choices, one choice, more than four, or a secret stays in Codex, and so does one nobody answers or Pushary cannot reach. Setup and upgrade widen the Codex `PreToolUse` matcher to include both question tools.
|
|
13
|
+
- When away now asks about a destructive Codex command (such as `rm -rf`, a force push, `git reset --hard` or `git clean`) or a patch that deletes a file, because Codex can run those without a prompt of its own. The question goes to your phone when you are away from the keyboard; at the keyboard Codex carries on as before. A call nobody answers is refused.
|
|
14
|
+
|
|
3
15
|
## 1.9.36
|
|
4
16
|
|
|
5
17
|
- Connect Grok Build to Pushary with native hooks for tool approvals, session activity and subagent activity. Setup, doctor, upgrades and disconnect use Grok's configuration directory, including a custom `GROK_HOME`.
|
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
handleBell
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-Y3XF324T.js";
|
|
5
5
|
import {
|
|
6
6
|
readHookInput
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-WLQENMOW.js";
|
|
8
|
+
import "../chunk-PA3OZGIA.js";
|
|
9
9
|
import "../chunk-DWQYCOPI.js";
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-AJIH4JGB.js";
|
|
11
|
+
import "../chunk-4D54LZGF.js";
|
|
12
|
+
import "../chunk-WR3GKYKD.js";
|
|
13
|
+
import "../chunk-QC7ZNZMZ.js";
|
|
14
14
|
import "../chunk-XHKBHWLX.js";
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
19
|
-
import "../chunk-
|
|
15
|
+
import "../chunk-7GSOIBVM.js";
|
|
16
|
+
import "../chunk-ZFJAZBBF.js";
|
|
17
|
+
import "../chunk-GBNG6QEV.js";
|
|
18
|
+
import "../chunk-FZEQWY7Q.js";
|
|
19
|
+
import "../chunk-JVKY6ILU.js";
|
|
20
20
|
import "../chunk-GMXKITVA.js";
|
|
21
21
|
import "../chunk-6ICPEJY5.js";
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
22
|
+
import "../chunk-JWMCGL3P.js";
|
|
23
|
+
import "../chunk-L5WOYQT7.js";
|
|
24
|
+
import "../chunk-IBUAVM6X.js";
|
|
25
|
+
import "../chunk-7O5U5TED.js";
|
|
26
26
|
import "../chunk-POFBE6ZY.js";
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
27
|
+
import "../chunk-ABDGTGBT.js";
|
|
28
|
+
import "../chunk-OLS4DTFN.js";
|
|
29
|
+
import "../chunk-BMHD2NEH.js";
|
|
30
|
+
import "../chunk-3HUHP4A4.js";
|
|
31
31
|
import "../chunk-7QLSKOSU.js";
|
|
32
32
|
import "../chunk-KZERVKTD.js";
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
33
|
+
import "../chunk-MIENLS7P.js";
|
|
34
|
+
import "../chunk-4GEHVRV3.js";
|
|
35
35
|
import "../chunk-AQFEP65J.js";
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
36
|
+
import "../chunk-D322CKL2.js";
|
|
37
|
+
import "../chunk-MXEDMQLC.js";
|
|
38
|
+
import "../chunk-QOUW57RT.js";
|
|
39
39
|
|
|
40
40
|
// bin/pushary-bell-hook.ts
|
|
41
41
|
var main = async () => {
|
package/dist/bin/pushary-bell.js
CHANGED
|
@@ -5,39 +5,39 @@ import {
|
|
|
5
5
|
liveAgentCount,
|
|
6
6
|
ring,
|
|
7
7
|
upgradeThreshold
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-Y3XF324T.js";
|
|
9
9
|
import {
|
|
10
10
|
createIo
|
|
11
11
|
} from "../chunk-FO3MDD26.js";
|
|
12
12
|
import {
|
|
13
13
|
exitOnHelpFlag
|
|
14
|
-
} from "../chunk-
|
|
14
|
+
} from "../chunk-7P43CI6G.js";
|
|
15
15
|
import {
|
|
16
16
|
addBellHooks,
|
|
17
17
|
bellInstalled,
|
|
18
18
|
removeBellHooks
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-JVKY6ILU.js";
|
|
20
20
|
import {
|
|
21
21
|
parseFlags
|
|
22
22
|
} from "../chunk-GMXKITVA.js";
|
|
23
|
-
import "../chunk-
|
|
23
|
+
import "../chunk-JWMCGL3P.js";
|
|
24
24
|
import "../chunk-7QLSKOSU.js";
|
|
25
25
|
import {
|
|
26
26
|
EXIT
|
|
27
27
|
} from "../chunk-KZERVKTD.js";
|
|
28
|
-
import "../chunk-
|
|
28
|
+
import "../chunk-MIENLS7P.js";
|
|
29
29
|
import {
|
|
30
30
|
claudeSettings
|
|
31
|
-
} from "../chunk-
|
|
31
|
+
} from "../chunk-4GEHVRV3.js";
|
|
32
32
|
import {
|
|
33
33
|
readJsonSafe,
|
|
34
34
|
writeJsonAtomic
|
|
35
35
|
} from "../chunk-AQFEP65J.js";
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
36
|
+
import "../chunk-D322CKL2.js";
|
|
37
|
+
import "../chunk-MXEDMQLC.js";
|
|
38
38
|
import {
|
|
39
39
|
isRecord
|
|
40
|
-
} from "../chunk-
|
|
40
|
+
} from "../chunk-QOUW57RT.js";
|
|
41
41
|
|
|
42
42
|
// bin/pushary-bell.ts
|
|
43
43
|
exitOnHelpFlag("bell");
|
|
@@ -8,39 +8,39 @@ import {
|
|
|
8
8
|
describeIdleWindow,
|
|
9
9
|
startProcessOwnership,
|
|
10
10
|
withSpawnProcessOwnership
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-DDRLK67P.js";
|
|
12
12
|
import {
|
|
13
13
|
announceSubscriptionRequired,
|
|
14
14
|
isDeferAnswer
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-W2TXFM6O.js";
|
|
16
16
|
import {
|
|
17
17
|
claudeTranscriptPath,
|
|
18
18
|
loadSessionKey,
|
|
19
19
|
registerTranscript,
|
|
20
20
|
registeredTranscriptEnabled
|
|
21
|
-
} from "../chunk-
|
|
21
|
+
} from "../chunk-PA3OZGIA.js";
|
|
22
22
|
import "../chunk-DWQYCOPI.js";
|
|
23
23
|
import {
|
|
24
24
|
ensureDaemonRunning
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-AJIH4JGB.js";
|
|
26
26
|
import {
|
|
27
27
|
encryptRecord
|
|
28
|
-
} from "../chunk-
|
|
29
|
-
import "../chunk-
|
|
28
|
+
} from "../chunk-4D54LZGF.js";
|
|
29
|
+
import "../chunk-WR3GKYKD.js";
|
|
30
30
|
import {
|
|
31
31
|
transcriptsEnabled
|
|
32
|
-
} from "../chunk-
|
|
32
|
+
} from "../chunk-QC7ZNZMZ.js";
|
|
33
33
|
import {
|
|
34
34
|
needsShell,
|
|
35
35
|
spawnClaude
|
|
36
36
|
} from "../chunk-XHKBHWLX.js";
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
39
|
-
import "../chunk-
|
|
40
|
-
import "../chunk-
|
|
37
|
+
import "../chunk-ZFJAZBBF.js";
|
|
38
|
+
import "../chunk-GBNG6QEV.js";
|
|
39
|
+
import "../chunk-FZEQWY7Q.js";
|
|
40
|
+
import "../chunk-JVKY6ILU.js";
|
|
41
41
|
import "../chunk-GMXKITVA.js";
|
|
42
42
|
import "../chunk-6ICPEJY5.js";
|
|
43
|
-
import "../chunk-
|
|
43
|
+
import "../chunk-JWMCGL3P.js";
|
|
44
44
|
import {
|
|
45
45
|
DEFAULT_SESSION,
|
|
46
46
|
UNNAMED_ACTION,
|
|
@@ -58,8 +58,8 @@ import {
|
|
|
58
58
|
reportEvent,
|
|
59
59
|
savePendingCommand,
|
|
60
60
|
scopePathFor
|
|
61
|
-
} from "../chunk-
|
|
62
|
-
import "../chunk-
|
|
61
|
+
} from "../chunk-L5WOYQT7.js";
|
|
62
|
+
import "../chunk-IBUAVM6X.js";
|
|
63
63
|
import {
|
|
64
64
|
askUser,
|
|
65
65
|
cancelQuestion,
|
|
@@ -70,28 +70,28 @@ import {
|
|
|
70
70
|
waitForAnswer,
|
|
71
71
|
waitsForThePhone,
|
|
72
72
|
withdrawQuestion
|
|
73
|
-
} from "../chunk-
|
|
73
|
+
} from "../chunk-7O5U5TED.js";
|
|
74
74
|
import "../chunk-POFBE6ZY.js";
|
|
75
75
|
import {
|
|
76
76
|
SubscriptionRequiredError
|
|
77
|
-
} from "../chunk-
|
|
78
|
-
import "../chunk-
|
|
79
|
-
import "../chunk-
|
|
77
|
+
} from "../chunk-ABDGTGBT.js";
|
|
78
|
+
import "../chunk-OLS4DTFN.js";
|
|
79
|
+
import "../chunk-BMHD2NEH.js";
|
|
80
80
|
import {
|
|
81
81
|
getMachineId
|
|
82
|
-
} from "../chunk-
|
|
82
|
+
} from "../chunk-3HUHP4A4.js";
|
|
83
83
|
import "../chunk-7QLSKOSU.js";
|
|
84
84
|
import "../chunk-KZERVKTD.js";
|
|
85
|
-
import "../chunk-
|
|
86
|
-
import "../chunk-
|
|
85
|
+
import "../chunk-MIENLS7P.js";
|
|
86
|
+
import "../chunk-4GEHVRV3.js";
|
|
87
87
|
import "../chunk-AQFEP65J.js";
|
|
88
88
|
import {
|
|
89
89
|
getApiKey,
|
|
90
90
|
getBaseUrl
|
|
91
|
-
} from "../chunk-
|
|
91
|
+
} from "../chunk-D322CKL2.js";
|
|
92
92
|
import {
|
|
93
93
|
NPX_LATEST_COMMAND
|
|
94
|
-
} from "../chunk-
|
|
94
|
+
} from "../chunk-MXEDMQLC.js";
|
|
95
95
|
import {
|
|
96
96
|
DECISION_STOP_REASON,
|
|
97
97
|
HAND_BACK_WITHOUT_A_PROMPT,
|
|
@@ -101,7 +101,7 @@ import {
|
|
|
101
101
|
redactSecretsFromContent,
|
|
102
102
|
resolveGate,
|
|
103
103
|
timeoutActionWithoutLocalPrompt
|
|
104
|
-
} from "../chunk-
|
|
104
|
+
} from "../chunk-QOUW57RT.js";
|
|
105
105
|
|
|
106
106
|
// src/wrapper/localPassthrough.ts
|
|
107
107
|
var SIGNAL_NUMBERS = {
|
|
@@ -9,12 +9,12 @@ import {
|
|
|
9
9
|
planCliKeyRevocations,
|
|
10
10
|
readCliHeldKeys,
|
|
11
11
|
revokeCliKeys
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-AI2YBW42.js";
|
|
13
13
|
import {
|
|
14
14
|
isCursorPluginLeftover,
|
|
15
15
|
releaseSoleGate,
|
|
16
16
|
withoutPusharyCursorHooks
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-WASCAI2U.js";
|
|
18
18
|
import {
|
|
19
19
|
HERMES_PIP_PACKAGE,
|
|
20
20
|
readHermesStatus,
|
|
@@ -23,25 +23,25 @@ import {
|
|
|
23
23
|
shortenHome,
|
|
24
24
|
unregisterPluginLocation,
|
|
25
25
|
vscodeSettingsTargets
|
|
26
|
-
} from "../chunk-
|
|
26
|
+
} from "../chunk-3DXDJL4K.js";
|
|
27
27
|
import {
|
|
28
28
|
planFxRemoval,
|
|
29
29
|
removeInstructionBlock
|
|
30
|
-
} from "../chunk-
|
|
31
|
-
import "../chunk-
|
|
30
|
+
} from "../chunk-LZZ3EKKI.js";
|
|
31
|
+
import "../chunk-VITJTFFT.js";
|
|
32
32
|
import {
|
|
33
33
|
disableDaemonService
|
|
34
|
-
} from "../chunk-
|
|
34
|
+
} from "../chunk-AJIH4JGB.js";
|
|
35
35
|
import "../chunk-XHKBHWLX.js";
|
|
36
|
-
import "../chunk-
|
|
36
|
+
import "../chunk-K2CZJBUS.js";
|
|
37
37
|
import {
|
|
38
38
|
macAppKeepsMcpEntry,
|
|
39
39
|
mcpServerBearer,
|
|
40
40
|
pusharyKey,
|
|
41
41
|
readMacAppAgentKey,
|
|
42
42
|
setupReceiptKey
|
|
43
|
-
} from "../chunk-
|
|
44
|
-
import "../chunk-
|
|
43
|
+
} from "../chunk-5KVL4AP5.js";
|
|
44
|
+
import "../chunk-D2G6HWEA.js";
|
|
45
45
|
import {
|
|
46
46
|
OPENCODE_PLUGIN_SIBLING,
|
|
47
47
|
OPENCODE_PLUGIN_SIBLING_CONTENTS,
|
|
@@ -53,14 +53,14 @@ import {
|
|
|
53
53
|
openCodePluginDir,
|
|
54
54
|
openCodePluginFile,
|
|
55
55
|
removeOpenCodeMcpServer
|
|
56
|
-
} from "../chunk-
|
|
56
|
+
} from "../chunk-J2APHNZL.js";
|
|
57
57
|
import {
|
|
58
58
|
ansiPainter,
|
|
59
59
|
useColor
|
|
60
60
|
} from "../chunk-FO3MDD26.js";
|
|
61
61
|
import {
|
|
62
62
|
exitOnHelpFlag
|
|
63
|
-
} from "../chunk-
|
|
63
|
+
} from "../chunk-7P43CI6G.js";
|
|
64
64
|
import {
|
|
65
65
|
compatibleConfigFile,
|
|
66
66
|
compatibleDocuments,
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
removePusharyToolPermissions,
|
|
77
77
|
restoreClaudeMcpServer,
|
|
78
78
|
serializeConfigDocument
|
|
79
|
-
} from "../chunk-
|
|
79
|
+
} from "../chunk-7GSOIBVM.js";
|
|
80
80
|
import {
|
|
81
81
|
hookOwnerOf,
|
|
82
82
|
isHookTakeoverReceipt,
|
|
@@ -84,12 +84,12 @@ import {
|
|
|
84
84
|
resolveBridgeStub,
|
|
85
85
|
restoreHookTakeover,
|
|
86
86
|
restoreMcpServer
|
|
87
|
-
} from "../chunk-
|
|
87
|
+
} from "../chunk-ZFJAZBBF.js";
|
|
88
88
|
import {
|
|
89
89
|
removeGeminiSettings
|
|
90
|
-
} from "../chunk-
|
|
91
|
-
import "../chunk-
|
|
92
|
-
import "../chunk-
|
|
90
|
+
} from "../chunk-GBNG6QEV.js";
|
|
91
|
+
import "../chunk-FZEQWY7Q.js";
|
|
92
|
+
import "../chunk-JVKY6ILU.js";
|
|
93
93
|
import {
|
|
94
94
|
rejectUnknownFlags
|
|
95
95
|
} from "../chunk-GMXKITVA.js";
|
|
@@ -99,20 +99,20 @@ import {
|
|
|
99
99
|
isDisabledExport,
|
|
100
100
|
removeClaudeAlias,
|
|
101
101
|
shellProfileCandidates
|
|
102
|
-
} from "../chunk-
|
|
103
|
-
import "../chunk-
|
|
104
|
-
import "../chunk-
|
|
105
|
-
import "../chunk-
|
|
102
|
+
} from "../chunk-JWMCGL3P.js";
|
|
103
|
+
import "../chunk-L5WOYQT7.js";
|
|
104
|
+
import "../chunk-IBUAVM6X.js";
|
|
105
|
+
import "../chunk-7O5U5TED.js";
|
|
106
106
|
import "../chunk-POFBE6ZY.js";
|
|
107
|
-
import "../chunk-
|
|
108
|
-
import "../chunk-
|
|
109
|
-
import "../chunk-
|
|
110
|
-
import "../chunk-
|
|
107
|
+
import "../chunk-ABDGTGBT.js";
|
|
108
|
+
import "../chunk-OLS4DTFN.js";
|
|
109
|
+
import "../chunk-BMHD2NEH.js";
|
|
110
|
+
import "../chunk-3HUHP4A4.js";
|
|
111
111
|
import "../chunk-7QLSKOSU.js";
|
|
112
112
|
import {
|
|
113
113
|
EXIT
|
|
114
114
|
} from "../chunk-KZERVKTD.js";
|
|
115
|
-
import "../chunk-
|
|
115
|
+
import "../chunk-MIENLS7P.js";
|
|
116
116
|
import {
|
|
117
117
|
claudeJson,
|
|
118
118
|
claudeMcpReceipt,
|
|
@@ -149,14 +149,14 @@ import {
|
|
|
149
149
|
restoreCodexHookTrust,
|
|
150
150
|
vscodePluginDir,
|
|
151
151
|
vscodePluginMcp
|
|
152
|
-
} from "../chunk-
|
|
152
|
+
} from "../chunk-4GEHVRV3.js";
|
|
153
153
|
import "../chunk-AQFEP65J.js";
|
|
154
154
|
import {
|
|
155
155
|
getBaseUrl
|
|
156
|
-
} from "../chunk-
|
|
156
|
+
} from "../chunk-D322CKL2.js";
|
|
157
157
|
import {
|
|
158
158
|
NPX_LATEST_COMMAND
|
|
159
|
-
} from "../chunk-
|
|
159
|
+
} from "../chunk-MXEDMQLC.js";
|
|
160
160
|
import {
|
|
161
161
|
CLI_PACKAGE_NAMES,
|
|
162
162
|
HOOK_COMPATIBLE_PROFILES,
|
|
@@ -168,7 +168,7 @@ import {
|
|
|
168
168
|
globalRootFor,
|
|
169
169
|
isValidApiKey,
|
|
170
170
|
redactSecrets
|
|
171
|
-
} from "../chunk-
|
|
171
|
+
} from "../chunk-QOUW57RT.js";
|
|
172
172
|
|
|
173
173
|
// bin/pushary-clean.ts
|
|
174
174
|
import { existsSync as existsSync6, readFileSync as readFileSync4, copyFileSync, readdirSync as readdirSync4 } from "fs";
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
postLiveSession,
|
|
6
6
|
postLiveSessionUntilAccepted,
|
|
7
7
|
startLiveSessionHeartbeat
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-5DC2PRVT.js";
|
|
9
9
|
import {
|
|
10
10
|
resolveProviderBinary
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-MBTNHQCI.js";
|
|
12
12
|
import "../chunk-RIVNNBEK.js";
|
|
13
13
|
import {
|
|
14
14
|
SESSION_IDLE_TIMEOUT_MS,
|
|
@@ -16,50 +16,51 @@ import {
|
|
|
16
16
|
idleDeadlinePassed,
|
|
17
17
|
startProcessOwnership,
|
|
18
18
|
withSpawnProcessOwnership
|
|
19
|
-
} from "../chunk-
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-
|
|
19
|
+
} from "../chunk-DDRLK67P.js";
|
|
20
|
+
import "../chunk-4D54LZGF.js";
|
|
21
|
+
import "../chunk-WR3GKYKD.js";
|
|
22
22
|
import {
|
|
23
23
|
transcriptsEnabled
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-QC7ZNZMZ.js";
|
|
25
25
|
import {
|
|
26
26
|
spawnClaude
|
|
27
27
|
} from "../chunk-XHKBHWLX.js";
|
|
28
28
|
import "../chunk-6ICPEJY5.js";
|
|
29
|
-
import "../chunk-
|
|
29
|
+
import "../chunk-JWMCGL3P.js";
|
|
30
30
|
import {
|
|
31
31
|
isAskUserResponse,
|
|
32
32
|
isDecisionStopped,
|
|
33
33
|
isWaitForAnswerResponse,
|
|
34
34
|
withdrawQuestion,
|
|
35
35
|
writeDegraded
|
|
36
|
-
} from "../chunk-
|
|
36
|
+
} from "../chunk-7O5U5TED.js";
|
|
37
37
|
import "../chunk-POFBE6ZY.js";
|
|
38
38
|
import {
|
|
39
|
-
callMcpTool
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
import "../chunk-
|
|
39
|
+
callMcpTool,
|
|
40
|
+
isRetryable
|
|
41
|
+
} from "../chunk-ABDGTGBT.js";
|
|
42
|
+
import "../chunk-OLS4DTFN.js";
|
|
43
|
+
import "../chunk-BMHD2NEH.js";
|
|
43
44
|
import {
|
|
44
45
|
getMachineId
|
|
45
|
-
} from "../chunk-
|
|
46
|
+
} from "../chunk-3HUHP4A4.js";
|
|
46
47
|
import "../chunk-7QLSKOSU.js";
|
|
47
48
|
import "../chunk-KZERVKTD.js";
|
|
48
|
-
import "../chunk-
|
|
49
|
-
import "../chunk-
|
|
49
|
+
import "../chunk-MIENLS7P.js";
|
|
50
|
+
import "../chunk-4GEHVRV3.js";
|
|
50
51
|
import "../chunk-AQFEP65J.js";
|
|
51
52
|
import {
|
|
52
53
|
getApiKey,
|
|
53
54
|
getBaseUrl
|
|
54
|
-
} from "../chunk-
|
|
55
|
-
import "../chunk-
|
|
55
|
+
} from "../chunk-D322CKL2.js";
|
|
56
|
+
import "../chunk-MXEDMQLC.js";
|
|
56
57
|
import {
|
|
57
58
|
elicitationContent,
|
|
58
59
|
parseAgentQuestion,
|
|
59
60
|
parseAgentQuestionAnswers,
|
|
60
61
|
planElicitationAsk,
|
|
61
62
|
readElicitationFields
|
|
62
|
-
} from "../chunk-
|
|
63
|
+
} from "../chunk-QOUW57RT.js";
|
|
63
64
|
|
|
64
65
|
// bin/pushary-codex-bridge.ts
|
|
65
66
|
import { existsSync } from "fs";
|
|
@@ -112,7 +113,7 @@ var JsonRpcClient = class {
|
|
|
112
113
|
constructor(command, cwd, timeoutMs, bridgeOptions) {
|
|
113
114
|
this.bridgeOptions = bridgeOptions;
|
|
114
115
|
this.threadId = bridgeOptions.resumeThreadId ?? null;
|
|
115
|
-
const options = { cwd, env: process.env, stdio: ["pipe", "pipe", "pipe"] };
|
|
116
|
+
const options = { cwd, env: { ...process.env, PUSHARY_CODEX_BRIDGE: "1" }, stdio: ["pipe", "pipe", "pipe"] };
|
|
116
117
|
this.child = process.platform === "win32" ? spawnClaude(command.command, command.args ?? [], options) : spawn(command.command, command.args ?? [], options);
|
|
117
118
|
this.child.stdout?.setEncoding("utf8");
|
|
118
119
|
this.child.stdout?.on("data", (chunk) => this.read(String(chunk)));
|
|
@@ -288,9 +289,11 @@ var rpcTurnId = (result) => {
|
|
|
288
289
|
var answerCodexQuestions = async (options, params, signal, toolName = "request_user_input") => {
|
|
289
290
|
if (!Array.isArray(params.questions) || !params.questions.length || params.questions.length > 3) throw new Error("Invalid questions");
|
|
290
291
|
const answers = /* @__PURE__ */ Object.create(null);
|
|
291
|
-
const
|
|
292
|
+
const now = options.now ?? Date.now;
|
|
293
|
+
if (params.autoResolutionMs != null && (typeof params.autoResolutionMs !== "number" || !Number.isFinite(params.autoResolutionMs) || params.autoResolutionMs < 0)) throw new Error("Invalid question deadline");
|
|
294
|
+
const deadline = typeof params.autoResolutionMs === "number" ? now() + params.autoResolutionMs : null;
|
|
292
295
|
for (const raw of params.questions) {
|
|
293
|
-
if (signal.aborted ||
|
|
296
|
+
if (signal.aborted || deadline !== null && now() >= deadline) throw new Error("Question expired");
|
|
294
297
|
const question = object(raw);
|
|
295
298
|
const id = string(question?.id);
|
|
296
299
|
const prompt = string(question?.question);
|
|
@@ -306,7 +309,7 @@ var answerCodexQuestions = async (options, params, signal, toolName = "request_u
|
|
|
306
309
|
};
|
|
307
310
|
try {
|
|
308
311
|
signal.throwIfAborted();
|
|
309
|
-
if (
|
|
312
|
+
if (deadline !== null && now() >= deadline) throw new Error("Question expired");
|
|
310
313
|
let result = await call("ask_user", {
|
|
311
314
|
requestId: randomUUID(),
|
|
312
315
|
question: prompt,
|
|
@@ -319,8 +322,9 @@ var answerCodexQuestions = async (options, params, signal, toolName = "request_u
|
|
|
319
322
|
machineId: options.machineId,
|
|
320
323
|
toolName,
|
|
321
324
|
wait: false,
|
|
322
|
-
waitEndsAt: new Date(deadline).toISOString()
|
|
323
|
-
|
|
325
|
+
...deadline === null ? {} : { waitEndsAt: new Date(deadline).toISOString() },
|
|
326
|
+
localSurfaceAvailable: false
|
|
327
|
+
}, deadline === null ? 1e4 : Math.min(1e4, deadline - now()));
|
|
324
328
|
correlationId = string(object(result)?.correlationId);
|
|
325
329
|
if (!isAskUserResponse(result)) throw new Error("Invalid ask_user response");
|
|
326
330
|
while (!result.answered) {
|
|
@@ -337,13 +341,20 @@ var answerCodexQuestions = async (options, params, signal, toolName = "request_u
|
|
|
337
341
|
}
|
|
338
342
|
throw new Error(LOCAL_QUESTION_UNAVAILABLE);
|
|
339
343
|
}
|
|
340
|
-
if (
|
|
341
|
-
|
|
344
|
+
if (signal.aborted) throw new Error("Question cancelled");
|
|
345
|
+
if (!correlationId || result.handoffAction === "stop" && result.status !== "unavailable" || result.noDevices || result.status && result.status !== "pending" && result.status !== "unavailable") throw new Error(QUESTION_UNAVAILABLE);
|
|
346
|
+
const remaining = deadline === null ? 27e3 : deadline - now();
|
|
342
347
|
if (remaining <= 0) throw new Error("Question expired");
|
|
343
|
-
|
|
344
|
-
|
|
348
|
+
try {
|
|
349
|
+
result = await call("wait_for_answer", { correlationId, timeoutMs: Math.min(25e3, remaining) }, Math.min(27e3, remaining));
|
|
350
|
+
} catch (error) {
|
|
351
|
+
if (signal.aborted || !isRetryable(error)) throw error;
|
|
352
|
+
await liveSessionSleep(2e3, signal);
|
|
353
|
+
continue;
|
|
354
|
+
}
|
|
355
|
+
if (!result.answered) await liveSessionSleep(result.status === "unavailable" ? 2e3 : 100, signal);
|
|
345
356
|
}
|
|
346
|
-
if (signal.aborted ||
|
|
357
|
+
if (signal.aborted || deadline !== null && now() >= deadline) throw new Error("Question expired");
|
|
347
358
|
settled = true;
|
|
348
359
|
const rawValue = string(result.value);
|
|
349
360
|
const value = rawValue && structured ? (parseAgentQuestionAnswers([structured], rawValue) ?? parseAgentQuestionAnswers([structured], JSON.stringify({ [prompt]: rawValue })))?.[prompt] : rawValue;
|