@pushary/agent-hooks 1.9.5 → 1.9.6
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 +5 -0
- package/data/cowork/SKILL.md +11 -10
- package/dist/bin/pushary-bell-hook.js +23 -23
- package/dist/bin/pushary-bell.js +9 -9
- package/dist/bin/pushary-claude.js +26 -26
- package/dist/bin/pushary-clean.js +28 -28
- package/dist/bin/pushary-codex-bridge.js +18 -18
- package/dist/bin/pushary-codex-hook.js +31 -31
- package/dist/bin/pushary-codex.js +13 -13
- package/dist/bin/pushary-connect.js +13 -13
- package/dist/bin/pushary-cowork.js +5 -5
- package/dist/bin/pushary-daemon.js +26 -26
- package/dist/bin/pushary-disconnect.js +18 -18
- package/dist/bin/pushary-doctor.js +30 -30
- 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 +28 -28
- package/dist/bin/pushary-hook.js +32 -32
- package/dist/bin/pushary-login.js +12 -12
- package/dist/bin/pushary-logout.js +7 -7
- package/dist/bin/pushary-mcp.js +9 -9
- package/dist/bin/pushary-mode.js +9 -9
- package/dist/bin/pushary-notification-hook.js +28 -28
- package/dist/bin/pushary-opencode-hook.js +27 -27
- package/dist/bin/pushary-permission-denied-hook.js +32 -32
- package/dist/bin/pushary-permission-hook.js +31 -31
- package/dist/bin/pushary-post-hook.js +28 -28
- package/dist/bin/pushary-prompt-hook.js +28 -28
- package/dist/bin/pushary-session-end-hook.js +28 -28
- package/dist/bin/pushary-session-start-hook.js +31 -31
- package/dist/bin/pushary-setup.js +36 -36
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +15 -15
- package/dist/bin/pushary-stop-hook.js +28 -28
- package/dist/bin/pushary-stopfailure-hook.js +28 -28
- package/dist/bin/pushary-suggestions.js +4 -4
- package/dist/bin/pushary-transcript-register.js +19 -19
- package/dist/bin/pushary-transcripts.js +7 -7
- package/dist/bin/pushary-upgrade.js +21 -21
- package/dist/bin/pushary-wait.js +9 -9
- package/dist/bin/pushary.js +6 -6
- package/dist/{chunk-G3W5GP6O.js → chunk-2I23NFVT.js} +5 -5
- package/dist/{chunk-2DSUVY6R.js → chunk-2QRE6QH2.js} +1 -1
- package/dist/{chunk-K2J6OGGN.js → chunk-3BUAEQCY.js} +1 -1
- package/dist/{chunk-L5XJZKF2.js → chunk-4QKM44N6.js} +3 -3
- package/dist/{chunk-IX5EFNCI.js → chunk-5AXCOTIT.js} +1 -1
- package/dist/{chunk-5DU7LJ7L.js → chunk-5BHROGRB.js} +2 -2
- package/dist/{chunk-TNCINDSF.js → chunk-5PMTC2CB.js} +6 -6
- package/dist/{chunk-2JOP4D2G.js → chunk-6GERGJHF.js} +2 -2
- package/dist/{chunk-FQKFONAS.js → chunk-75CA37FZ.js} +2 -2
- package/dist/{chunk-7AV2KBZC.js → chunk-7JTVYR5B.js} +1 -1
- package/dist/{chunk-ZJSII7OP.js → chunk-BSZ7VBVT.js} +10 -10
- package/dist/{chunk-VZGCXECP.js → chunk-BVCHY4OY.js} +2 -2
- package/dist/{chunk-UQBJTGLX.js → chunk-CBVDW2N6.js} +3 -3
- package/dist/{chunk-JSVBVV2Q.js → chunk-CCDVL63C.js} +9 -9
- package/dist/{chunk-RKEVFUBN.js → chunk-D7SOOVHX.js} +3 -3
- package/dist/{chunk-CPMVKL6H.js → chunk-DA4FTGTK.js} +4 -4
- package/dist/{chunk-FYEQSB6N.js → chunk-DGQTJDSJ.js} +1 -1
- package/dist/{chunk-KSJCYP4I.js → chunk-DJ4BB264.js} +1 -1
- package/dist/{chunk-QEY4SCXT.js → chunk-EVFY3VE6.js} +1 -1
- package/dist/{chunk-LSYSKKWW.js → chunk-EZAFBC2C.js} +1 -1
- package/dist/{chunk-4LVFBQJ3.js → chunk-F56SB65Y.js} +2 -2
- package/dist/{chunk-6WKOOF2H.js → chunk-FBD3QGVJ.js} +2 -2
- package/dist/{chunk-M7MMZURA.js → chunk-GQHZIBAZ.js} +1 -1
- package/dist/{chunk-ZBF5WAP7.js → chunk-HJXZJF6O.js} +4 -4
- package/dist/{chunk-ORBTANP2.js → chunk-HT3WMM6Q.js} +1 -1
- package/dist/{chunk-2PFD44YK.js → chunk-HWQNQVY6.js} +2 -2
- package/dist/{chunk-FNOY2K4N.js → chunk-IMGJYFCX.js} +2 -2
- package/dist/{chunk-V3TD72QA.js → chunk-IR5FRUPQ.js} +3 -3
- package/dist/{chunk-G7CZUI4G.js → chunk-JUFKJCZG.js} +1 -1
- package/dist/{chunk-XXBOA4ZL.js → chunk-KK54WQ74.js} +1 -1
- package/dist/{chunk-HOTK2D2S.js → chunk-L6USMDTW.js} +1 -1
- package/dist/{chunk-NUYECJ57.js → chunk-LBLCFD5K.js} +1 -1
- package/dist/{chunk-6OUATBSK.js → chunk-MKJ3RTUS.js} +2 -2
- package/dist/{chunk-3Z7NUGXO.js → chunk-NVGDMTX3.js} +4 -4
- package/dist/{chunk-LBTOB7Z7.js → chunk-PYZC54KA.js} +5 -5
- package/dist/{chunk-23R4BMUP.js → chunk-Q23MMVTD.js} +1 -1
- package/dist/{chunk-SBR2UKUO.js → chunk-Q4E56K4X.js} +15 -3
- package/dist/{chunk-XEZWDDR5.js → chunk-RDK7FX5F.js} +1 -1
- package/dist/{chunk-GRFV6GPY.js → chunk-RIC6OOJX.js} +1 -1
- package/dist/{chunk-5T65DZBH.js → chunk-SJN22ADZ.js} +1 -1
- package/dist/{chunk-Q6KNNFGG.js → chunk-SNJ3BOCP.js} +2 -2
- package/dist/{chunk-ZW7KE2GP.js → chunk-SPXBXN23.js} +1 -1
- package/dist/{chunk-GBKM4ULB.js → chunk-SVTHEMM3.js} +6 -6
- package/dist/{chunk-NH63BTRO.js → chunk-TE5M6GGK.js} +5 -5
- package/dist/{chunk-NI2BRIHL.js → chunk-UKNKYTTY.js} +3 -3
- package/dist/{chunk-V3ASMZLF.js → chunk-VRT3EEZN.js} +8 -8
- package/dist/{chunk-ELQAQZNO.js → chunk-W4Q7NFXU.js} +3 -3
- package/dist/{chunk-UM7DXK6V.js → chunk-WN6WYUCV.js} +5 -5
- package/dist/{chunk-2KH5NTKR.js → chunk-WUKUXICK.js} +2 -2
- package/dist/{chunk-EYKHHCLA.js → chunk-YPXUD6DW.js} +4 -4
- package/dist/{chunk-KTIY7ZIA.js → chunk-ZC3TF4LR.js} +5 -5
- package/dist/{chunk-CV2IAVD5.js → chunk-ZPW4MJOV.js} +3 -3
- package/dist/{global-upgrade-GWD4OADP.js → global-upgrade-7F5RP45B.js} +6 -6
- package/dist/{paths-MJGE4UFY.js → paths-MELXIVBO.js} +2 -2
- package/dist/{reapply-U6BMGCAB.js → reapply-NOB2Q6C4.js} +8 -8
- package/dist/src/index.js +20 -20
- package/dist/{upgrade-lock-HQP6XCER.js → upgrade-lock-AHRBA66K.js} +3 -3
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.9.6
|
|
4
|
+
|
|
5
|
+
- Read-only shell approval no longer covers commands that make the shell evaluate quoted text again: arithmetic expansion (`$[ ]`), subscripted parameters (`$name[ ]`, including zsh flag prefixes) and `printf -v`. These ran a quoted command substitution in bash or zsh while being approved without asking. They now go to your normal approval.
|
|
6
|
+
- An escaped `;`, `&` or `|` no longer splits a command when rating its risk, so destructive words passed as arguments to `sh -c` keep the command destructive and above a standing Bash auto-approve.
|
|
7
|
+
|
|
3
8
|
## 1.9.5
|
|
4
9
|
|
|
5
10
|
- Setup allows up to 30 seconds each for daemon startup and heartbeat/control proof, allowing cold Windows agent discovery to finish before reporting a failure. Healthy services return immediately.
|
package/data/cowork/SKILL.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pushary-cowork
|
|
3
|
-
version: 0.
|
|
4
|
-
description:
|
|
3
|
+
version: 0.5.0
|
|
4
|
+
description: Use Pushary in Claude Chat, Cowork, or Claude Code when the user asks for phone updates, a missing decision blocks work, an action needs approval outside existing authorization, or meaningful unattended work finishes or fails. Send task updates and confirm, choice, or text questions to the user's connected devices, then read the returned answer and handoff. Requires the Pushary connector and a paid Pushary account. This skill does not install native permission hooks.
|
|
5
5
|
metadata:
|
|
6
6
|
tags: notifications, push, mcp, human-in-the-loop, cowork, claude, alerts, approvals
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
# Pushary for Claude
|
|
9
|
+
# Pushary for Claude
|
|
10
10
|
|
|
11
11
|
Pushary is connected as a custom connector. It reaches the user on their phone, where confirm notifications can offer lock-screen actions; choices and text open the app. Use it proactively. Do not wait for the user to ask.
|
|
12
12
|
|
|
@@ -26,7 +26,7 @@ Every question costs the user their attention wherever they are. Before a run of
|
|
|
26
26
|
|
|
27
27
|
## Hand back with a way to reply
|
|
28
28
|
|
|
29
|
-
The connector
|
|
29
|
+
The connector carries only the updates and questions you send. Once your turn ends, this connector is no longer listening for answers. It cannot start a new Chat, Cowork, or Claude Code task, so a reply that says "now do X" reaches nobody unless you asked for it before you stopped.
|
|
30
30
|
|
|
31
31
|
When a specific unresolved decision is needed before you can finish, keep the channel open:
|
|
32
32
|
|
|
@@ -34,7 +34,7 @@ When a specific unresolved decision is needed before you can finish, keep the ch
|
|
|
34
34
|
2. Poll the returned `linkedCorrelationId` once with `wait_for_answer`, then follow its handoff.
|
|
35
35
|
3. Act on the answer in this same session, then hand back the same way again if more work follows.
|
|
36
36
|
|
|
37
|
-
Do not create a question just to keep the turn alive or ask for optional feedback after every result. Once this turn ends,
|
|
37
|
+
Do not create a question just to keep the turn alive or ask for optional feedback after every result. Once this turn ends, the user must send follow-up work in Claude.
|
|
38
38
|
|
|
39
39
|
## How to wait for answers
|
|
40
40
|
|
|
@@ -55,22 +55,23 @@ Delivery is controlled by the user's policy: `push_first` uses presence, `push_o
|
|
|
55
55
|
| Slack | Answer through buttons, menus or text modals when the integration and intended recipient are configured. |
|
|
56
56
|
| Browser | Open the decision page as a fallback; browser notification delivery requires permission. |
|
|
57
57
|
|
|
58
|
-
Personal setup connects the operator's devices.
|
|
58
|
+
Personal setup connects the operator's devices. The operator installs the Pushary phone or Mac app from https://pushary.com/download and signs in with the same account as the connector. In Chat or Cowork, connect Pushary from the plugin's Connectors tab or add `https://pushary.com/api/mcp/mcp` under Customize > Connectors. In Claude Code, check the connector with `/mcp` and follow its OAuth sign-in prompt. No CLI installer or API key is needed. Ask one harmless test question in the app being tested, answer it from Pushary, and verify Claude receives the answer. CLI doctor checks do not verify a hosted connector. Test phone fallback while away from the Mac; do not infer delivery from a successful API call alone.
|
|
59
59
|
|
|
60
60
|
Partner customers use scoped enrollment links issued by their application. Do not enroll them into the operator's account or send their decisions through personal tools. The Mac notch currently uses the personal account/session API; do not promise a Partner customer inbox on Mac. See https://pushary.com/docs/agents/embed for Partner setup.
|
|
61
61
|
|
|
62
62
|
## Conventions
|
|
63
63
|
|
|
64
|
-
- Reuse one opaque `sessionId` per
|
|
65
|
-
- Pass `agentName` as `Claude Cowork - <task name>` on every call
|
|
64
|
+
- Reuse one opaque `sessionId` per conversation or task. Do not reuse it across parallel tasks or put credentials in it.
|
|
65
|
+
- Pass `agentName` as `Claude Chat - <task name>`, `Claude Cowork - <task name>`, or `Claude Code - <task name>` to match the current app. Use it on every call so the user knows which session is asking.
|
|
66
66
|
- Keep questions short and decision-shaped. One sentence of context, then the ask. The user is reading a lock screen, not a report.
|
|
67
|
+
- Send only the context needed for the decision or task update. Leave passwords, API keys, file contents, and private conversation history out of Pushary tool arguments.
|
|
67
68
|
- Do not ask through Pushary for things you can safely decide yourself. Reserve it for real decisions, risky steps, completions, and errors, so a ping always means something.
|
|
68
69
|
|
|
69
70
|
## Setup and capability boundary
|
|
70
71
|
|
|
71
|
-
Install
|
|
72
|
+
Install Pushary for Claude to supply this skill and its remote MCP connector, or connect the public URL above. Sign in with the same Pushary account used by your phone and Mac. Enable the connector in the conversation and approve its tool access when Claude asks. Use this skill for proactive behavior. Cowork also supports standing instructions under Settings > Cowork; Chat and Cowork do not rely on a repository memory file.
|
|
72
73
|
|
|
73
|
-
|
|
74
|
+
This plugin uses the cooperative connector and installs no native permission hooks. Chat ignores hooks. Cowork and Claude Code can load hooks from other integrations, but that does not mean this bundle can enforce approvals. Native Claude permission prompts still need Claude's own approval surface unless a separately installed integration handles them.
|
|
74
75
|
|
|
75
76
|
## If the connector is missing
|
|
76
77
|
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
handleBell
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-LBLCFD5K.js";
|
|
5
5
|
import {
|
|
6
6
|
readHookInput
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-HWQNQVY6.js";
|
|
8
|
+
import "../chunk-VRT3EEZN.js";
|
|
9
9
|
import "../chunk-SGZJ5LYH.js";
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
19
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-NVGDMTX3.js";
|
|
11
|
+
import "../chunk-SPXBXN23.js";
|
|
12
|
+
import "../chunk-SJN22ADZ.js";
|
|
13
|
+
import "../chunk-D7SOOVHX.js";
|
|
14
|
+
import "../chunk-ZC3TF4LR.js";
|
|
15
|
+
import "../chunk-UKNKYTTY.js";
|
|
16
|
+
import "../chunk-Q23MMVTD.js";
|
|
17
|
+
import "../chunk-5AXCOTIT.js";
|
|
18
|
+
import "../chunk-7JTVYR5B.js";
|
|
19
|
+
import "../chunk-KK54WQ74.js";
|
|
20
20
|
import "../chunk-XHKBHWLX.js";
|
|
21
21
|
import "../chunk-6ICPEJY5.js";
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-
|
|
22
|
+
import "../chunk-DJ4BB264.js";
|
|
23
|
+
import "../chunk-DA4FTGTK.js";
|
|
24
24
|
import "../chunk-POFBE6ZY.js";
|
|
25
25
|
import "../chunk-GMXKITVA.js";
|
|
26
|
-
import "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-5BHROGRB.js";
|
|
27
|
+
import "../chunk-W4Q7NFXU.js";
|
|
28
|
+
import "../chunk-3BUAEQCY.js";
|
|
29
29
|
import "../chunk-7QLSKOSU.js";
|
|
30
30
|
import "../chunk-KZERVKTD.js";
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
31
|
+
import "../chunk-75CA37FZ.js";
|
|
32
|
+
import "../chunk-HJXZJF6O.js";
|
|
33
33
|
import "../chunk-T7E75EKA.js";
|
|
34
|
-
import "../chunk-
|
|
35
|
-
import "../chunk-
|
|
36
|
-
import "../chunk-
|
|
34
|
+
import "../chunk-2QRE6QH2.js";
|
|
35
|
+
import "../chunk-L6USMDTW.js";
|
|
36
|
+
import "../chunk-Q4E56K4X.js";
|
|
37
37
|
|
|
38
38
|
// bin/pushary-bell-hook.ts
|
|
39
39
|
var main = async () => {
|
package/dist/bin/pushary-bell.js
CHANGED
|
@@ -5,37 +5,37 @@ import {
|
|
|
5
5
|
liveAgentCount,
|
|
6
6
|
ring,
|
|
7
7
|
upgradeThreshold
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-LBLCFD5K.js";
|
|
9
9
|
import {
|
|
10
10
|
addBellHooks,
|
|
11
11
|
bellInstalled,
|
|
12
12
|
removeBellHooks
|
|
13
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-Q23MMVTD.js";
|
|
14
14
|
import {
|
|
15
15
|
createIo
|
|
16
16
|
} from "../chunk-U4TMAANR.js";
|
|
17
17
|
import {
|
|
18
18
|
exitOnHelpFlag
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-FBD3QGVJ.js";
|
|
20
20
|
import {
|
|
21
21
|
parseFlags
|
|
22
22
|
} from "../chunk-GMXKITVA.js";
|
|
23
|
-
import "../chunk-
|
|
23
|
+
import "../chunk-5BHROGRB.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-75CA37FZ.js";
|
|
29
29
|
import {
|
|
30
30
|
claudeSettings
|
|
31
|
-
} from "../chunk-
|
|
31
|
+
} from "../chunk-HJXZJF6O.js";
|
|
32
32
|
import {
|
|
33
33
|
readJsonSafe,
|
|
34
34
|
writeJsonAtomic
|
|
35
35
|
} from "../chunk-T7E75EKA.js";
|
|
36
|
-
import "../chunk-
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
36
|
+
import "../chunk-2QRE6QH2.js";
|
|
37
|
+
import "../chunk-L6USMDTW.js";
|
|
38
|
+
import "../chunk-Q4E56K4X.js";
|
|
39
39
|
|
|
40
40
|
// bin/pushary-bell.ts
|
|
41
41
|
exitOnHelpFlag("bell");
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
describeIdleWindow,
|
|
9
9
|
startProcessOwnership,
|
|
10
10
|
withSpawnProcessOwnership
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-RDK7FX5F.js";
|
|
12
12
|
import {
|
|
13
13
|
announceSubscriptionRequired,
|
|
14
14
|
isDeferAnswer
|
|
@@ -18,24 +18,24 @@ import {
|
|
|
18
18
|
loadSessionKey,
|
|
19
19
|
registerTranscript,
|
|
20
20
|
registeredTranscriptEnabled
|
|
21
|
-
} from "../chunk-
|
|
21
|
+
} from "../chunk-VRT3EEZN.js";
|
|
22
22
|
import "../chunk-SGZJ5LYH.js";
|
|
23
|
-
import "../chunk-
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
26
|
-
import "../chunk-
|
|
23
|
+
import "../chunk-NVGDMTX3.js";
|
|
24
|
+
import "../chunk-SPXBXN23.js";
|
|
25
|
+
import "../chunk-SJN22ADZ.js";
|
|
26
|
+
import "../chunk-D7SOOVHX.js";
|
|
27
27
|
import {
|
|
28
28
|
ensureDaemonRunning
|
|
29
|
-
} from "../chunk-
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
29
|
+
} from "../chunk-ZC3TF4LR.js";
|
|
30
|
+
import "../chunk-UKNKYTTY.js";
|
|
31
|
+
import "../chunk-Q23MMVTD.js";
|
|
32
32
|
import {
|
|
33
33
|
encryptRecord
|
|
34
|
-
} from "../chunk-
|
|
35
|
-
import "../chunk-
|
|
34
|
+
} from "../chunk-5AXCOTIT.js";
|
|
35
|
+
import "../chunk-7JTVYR5B.js";
|
|
36
36
|
import {
|
|
37
37
|
transcriptsEnabled
|
|
38
|
-
} from "../chunk-
|
|
38
|
+
} from "../chunk-KK54WQ74.js";
|
|
39
39
|
import {
|
|
40
40
|
needsShell,
|
|
41
41
|
spawnClaude
|
|
@@ -51,7 +51,7 @@ import {
|
|
|
51
51
|
repoKeyFor,
|
|
52
52
|
reportEvent,
|
|
53
53
|
scopePathFor
|
|
54
|
-
} from "../chunk-
|
|
54
|
+
} from "../chunk-CCDVL63C.js";
|
|
55
55
|
import {
|
|
56
56
|
DEFAULT_SESSION,
|
|
57
57
|
markPendingCommandDelivered,
|
|
@@ -61,7 +61,7 @@ import {
|
|
|
61
61
|
removePendingCommand,
|
|
62
62
|
savePendingCommand
|
|
63
63
|
} from "../chunk-N6IOSZOE.js";
|
|
64
|
-
import "../chunk-
|
|
64
|
+
import "../chunk-DJ4BB264.js";
|
|
65
65
|
import {
|
|
66
66
|
DECISION_STOP_REASON,
|
|
67
67
|
UNVERIFIABLE_APPROVAL_REASON,
|
|
@@ -72,36 +72,36 @@ import {
|
|
|
72
72
|
nextLongPollMs,
|
|
73
73
|
waitForAnswer,
|
|
74
74
|
withdrawQuestion
|
|
75
|
-
} from "../chunk-
|
|
76
|
-
import "../chunk-
|
|
75
|
+
} from "../chunk-WN6WYUCV.js";
|
|
76
|
+
import "../chunk-DA4FTGTK.js";
|
|
77
77
|
import "../chunk-POFBE6ZY.js";
|
|
78
78
|
import "../chunk-GMXKITVA.js";
|
|
79
|
-
import "../chunk-
|
|
79
|
+
import "../chunk-5BHROGRB.js";
|
|
80
80
|
import {
|
|
81
81
|
SubscriptionRequiredError
|
|
82
|
-
} from "../chunk-
|
|
83
|
-
import "../chunk-
|
|
84
|
-
import "../chunk-
|
|
82
|
+
} from "../chunk-ZPW4MJOV.js";
|
|
83
|
+
import "../chunk-4QKM44N6.js";
|
|
84
|
+
import "../chunk-W4Q7NFXU.js";
|
|
85
85
|
import {
|
|
86
86
|
getMachineId
|
|
87
|
-
} from "../chunk-
|
|
87
|
+
} from "../chunk-3BUAEQCY.js";
|
|
88
88
|
import "../chunk-7QLSKOSU.js";
|
|
89
89
|
import "../chunk-KZERVKTD.js";
|
|
90
|
-
import "../chunk-
|
|
91
|
-
import "../chunk-
|
|
90
|
+
import "../chunk-75CA37FZ.js";
|
|
91
|
+
import "../chunk-HJXZJF6O.js";
|
|
92
92
|
import "../chunk-T7E75EKA.js";
|
|
93
93
|
import {
|
|
94
94
|
getApiKey,
|
|
95
95
|
getBaseUrl
|
|
96
|
-
} from "../chunk-
|
|
96
|
+
} from "../chunk-2QRE6QH2.js";
|
|
97
97
|
import {
|
|
98
98
|
NPX_LATEST_COMMAND
|
|
99
|
-
} from "../chunk-
|
|
99
|
+
} from "../chunk-L6USMDTW.js";
|
|
100
100
|
import {
|
|
101
101
|
KILL_REASON,
|
|
102
102
|
redactSecretsFromContent,
|
|
103
103
|
resolveGate
|
|
104
|
-
} from "../chunk-
|
|
104
|
+
} from "../chunk-Q4E56K4X.js";
|
|
105
105
|
|
|
106
106
|
// src/wrapper/localPassthrough.ts
|
|
107
107
|
var SIGNAL_NUMBERS = {
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
PUSHARY_SKILL_SOURCE,
|
|
5
5
|
createGuards,
|
|
6
6
|
withoutPusharyCursorHooks
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-6GERGJHF.js";
|
|
8
8
|
import {
|
|
9
9
|
HERMES_PIP_PACKAGE,
|
|
10
10
|
planFxRemoval,
|
|
@@ -15,8 +15,8 @@ import {
|
|
|
15
15
|
shortenHome,
|
|
16
16
|
unregisterPluginLocation,
|
|
17
17
|
vscodeSettingsTargets
|
|
18
|
-
} from "../chunk-
|
|
19
|
-
import "../chunk-
|
|
18
|
+
} from "../chunk-5PMTC2CB.js";
|
|
19
|
+
import "../chunk-WUKUXICK.js";
|
|
20
20
|
import {
|
|
21
21
|
OPENCODE_PLUGIN_SIBLING,
|
|
22
22
|
OPENCODE_PLUGIN_SIBLING_CONTENTS,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
openCodePluginDir,
|
|
29
29
|
openCodePluginFile,
|
|
30
30
|
removeOpenCodeMcpServer
|
|
31
|
-
} from "../chunk-
|
|
31
|
+
} from "../chunk-RIC6OOJX.js";
|
|
32
32
|
import {
|
|
33
33
|
compatibleConfigFile,
|
|
34
34
|
compatibleInstructionsFile,
|
|
@@ -36,40 +36,40 @@ import {
|
|
|
36
36
|
compatiblePermissionRuleFile,
|
|
37
37
|
removeCompatibleHooks,
|
|
38
38
|
removeCompatibleMcpServer
|
|
39
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-TE5M6GGK.js";
|
|
40
40
|
import {
|
|
41
41
|
isClaudeMcpSnapshot,
|
|
42
42
|
removeClaudeMcpServers,
|
|
43
43
|
removePusharySettings,
|
|
44
44
|
removePusharyToolPermissions,
|
|
45
45
|
restoreClaudeMcpServer
|
|
46
|
-
} from "../chunk-
|
|
46
|
+
} from "../chunk-IR5FRUPQ.js";
|
|
47
47
|
import {
|
|
48
48
|
hookOwnerOf,
|
|
49
49
|
isHookTakeoverReceipt,
|
|
50
50
|
restoreHookTakeover,
|
|
51
51
|
restoreMcpServer
|
|
52
|
-
} from "../chunk-
|
|
53
|
-
import "../chunk-
|
|
52
|
+
} from "../chunk-NVGDMTX3.js";
|
|
53
|
+
import "../chunk-SPXBXN23.js";
|
|
54
54
|
import {
|
|
55
55
|
liveBridgeProbe,
|
|
56
56
|
resolveBridgeStub
|
|
57
|
-
} from "../chunk-
|
|
58
|
-
import "../chunk-
|
|
57
|
+
} from "../chunk-SJN22ADZ.js";
|
|
58
|
+
import "../chunk-D7SOOVHX.js";
|
|
59
59
|
import {
|
|
60
60
|
disableDaemonService
|
|
61
|
-
} from "../chunk-
|
|
61
|
+
} from "../chunk-ZC3TF4LR.js";
|
|
62
62
|
import {
|
|
63
63
|
removeGeminiSettings
|
|
64
|
-
} from "../chunk-
|
|
65
|
-
import "../chunk-
|
|
64
|
+
} from "../chunk-UKNKYTTY.js";
|
|
65
|
+
import "../chunk-Q23MMVTD.js";
|
|
66
66
|
import "../chunk-XHKBHWLX.js";
|
|
67
67
|
import "../chunk-6ICPEJY5.js";
|
|
68
|
-
import "../chunk-
|
|
68
|
+
import "../chunk-CCDVL63C.js";
|
|
69
69
|
import "../chunk-N6IOSZOE.js";
|
|
70
|
-
import "../chunk-
|
|
71
|
-
import "../chunk-
|
|
72
|
-
import "../chunk-
|
|
70
|
+
import "../chunk-DJ4BB264.js";
|
|
71
|
+
import "../chunk-WN6WYUCV.js";
|
|
72
|
+
import "../chunk-DA4FTGTK.js";
|
|
73
73
|
import "../chunk-POFBE6ZY.js";
|
|
74
74
|
import {
|
|
75
75
|
ansiPainter,
|
|
@@ -77,7 +77,7 @@ import {
|
|
|
77
77
|
} from "../chunk-U4TMAANR.js";
|
|
78
78
|
import {
|
|
79
79
|
exitOnHelpFlag
|
|
80
|
-
} from "../chunk-
|
|
80
|
+
} from "../chunk-FBD3QGVJ.js";
|
|
81
81
|
import {
|
|
82
82
|
rejectUnknownFlags
|
|
83
83
|
} from "../chunk-GMXKITVA.js";
|
|
@@ -85,16 +85,16 @@ import {
|
|
|
85
85
|
CANDIDATE_RCS,
|
|
86
86
|
isDisabledExport,
|
|
87
87
|
removeClaudeAlias
|
|
88
|
-
} from "../chunk-
|
|
89
|
-
import "../chunk-
|
|
90
|
-
import "../chunk-
|
|
91
|
-
import "../chunk-
|
|
92
|
-
import "../chunk-
|
|
88
|
+
} from "../chunk-5BHROGRB.js";
|
|
89
|
+
import "../chunk-ZPW4MJOV.js";
|
|
90
|
+
import "../chunk-4QKM44N6.js";
|
|
91
|
+
import "../chunk-W4Q7NFXU.js";
|
|
92
|
+
import "../chunk-3BUAEQCY.js";
|
|
93
93
|
import "../chunk-7QLSKOSU.js";
|
|
94
94
|
import {
|
|
95
95
|
EXIT
|
|
96
96
|
} from "../chunk-KZERVKTD.js";
|
|
97
|
-
import "../chunk-
|
|
97
|
+
import "../chunk-75CA37FZ.js";
|
|
98
98
|
import {
|
|
99
99
|
bridgeAgentKey,
|
|
100
100
|
claudeJson,
|
|
@@ -132,12 +132,12 @@ import {
|
|
|
132
132
|
restoreCodexHookTrust,
|
|
133
133
|
vscodePluginDir,
|
|
134
134
|
vscodePluginMcp
|
|
135
|
-
} from "../chunk-
|
|
135
|
+
} from "../chunk-HJXZJF6O.js";
|
|
136
136
|
import "../chunk-T7E75EKA.js";
|
|
137
|
-
import "../chunk-
|
|
137
|
+
import "../chunk-2QRE6QH2.js";
|
|
138
138
|
import {
|
|
139
139
|
NPX_LATEST_COMMAND
|
|
140
|
-
} from "../chunk-
|
|
140
|
+
} from "../chunk-L6USMDTW.js";
|
|
141
141
|
import {
|
|
142
142
|
CLI_PACKAGE_NAMES,
|
|
143
143
|
HOOK_COMPATIBLE_PROFILES,
|
|
@@ -149,7 +149,7 @@ import {
|
|
|
149
149
|
globalRootFor,
|
|
150
150
|
isValidApiKey,
|
|
151
151
|
redactSecrets
|
|
152
|
-
} from "../chunk-
|
|
152
|
+
} from "../chunk-Q4E56K4X.js";
|
|
153
153
|
|
|
154
154
|
// bin/pushary-clean.ts
|
|
155
155
|
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-F56SB65Y.js";
|
|
9
9
|
import {
|
|
10
10
|
resolveProviderBinary
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-MKJ3RTUS.js";
|
|
12
12
|
import "../chunk-RIVNNBEK.js";
|
|
13
13
|
import {
|
|
14
14
|
SESSION_IDLE_TIMEOUT_MS,
|
|
@@ -16,12 +16,12 @@ import {
|
|
|
16
16
|
idleDeadlinePassed,
|
|
17
17
|
startProcessOwnership,
|
|
18
18
|
withSpawnProcessOwnership
|
|
19
|
-
} from "../chunk-
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-
|
|
19
|
+
} from "../chunk-RDK7FX5F.js";
|
|
20
|
+
import "../chunk-5AXCOTIT.js";
|
|
21
|
+
import "../chunk-7JTVYR5B.js";
|
|
22
22
|
import {
|
|
23
23
|
transcriptsEnabled
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-KK54WQ74.js";
|
|
25
25
|
import {
|
|
26
26
|
spawnClaude
|
|
27
27
|
} from "../chunk-XHKBHWLX.js";
|
|
@@ -31,37 +31,37 @@ import {
|
|
|
31
31
|
isDecisionStopped,
|
|
32
32
|
isWaitForAnswerResponse,
|
|
33
33
|
withdrawQuestion
|
|
34
|
-
} from "../chunk-
|
|
34
|
+
} from "../chunk-WN6WYUCV.js";
|
|
35
35
|
import {
|
|
36
36
|
writeDegraded
|
|
37
|
-
} from "../chunk-
|
|
37
|
+
} from "../chunk-DA4FTGTK.js";
|
|
38
38
|
import "../chunk-POFBE6ZY.js";
|
|
39
|
-
import "../chunk-
|
|
39
|
+
import "../chunk-5BHROGRB.js";
|
|
40
40
|
import {
|
|
41
41
|
callMcpTool
|
|
42
|
-
} from "../chunk-
|
|
43
|
-
import "../chunk-
|
|
44
|
-
import "../chunk-
|
|
42
|
+
} from "../chunk-ZPW4MJOV.js";
|
|
43
|
+
import "../chunk-4QKM44N6.js";
|
|
44
|
+
import "../chunk-W4Q7NFXU.js";
|
|
45
45
|
import {
|
|
46
46
|
getMachineId
|
|
47
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-3BUAEQCY.js";
|
|
48
48
|
import "../chunk-7QLSKOSU.js";
|
|
49
49
|
import "../chunk-KZERVKTD.js";
|
|
50
|
-
import "../chunk-
|
|
51
|
-
import "../chunk-
|
|
50
|
+
import "../chunk-75CA37FZ.js";
|
|
51
|
+
import "../chunk-HJXZJF6O.js";
|
|
52
52
|
import "../chunk-T7E75EKA.js";
|
|
53
53
|
import {
|
|
54
54
|
getApiKey,
|
|
55
55
|
getBaseUrl
|
|
56
|
-
} from "../chunk-
|
|
57
|
-
import "../chunk-
|
|
56
|
+
} from "../chunk-2QRE6QH2.js";
|
|
57
|
+
import "../chunk-L6USMDTW.js";
|
|
58
58
|
import {
|
|
59
59
|
elicitationContent,
|
|
60
60
|
parseAgentQuestion,
|
|
61
61
|
parseAgentQuestionAnswers,
|
|
62
62
|
planElicitationAsk,
|
|
63
63
|
readElicitationFields
|
|
64
|
-
} from "../chunk-
|
|
64
|
+
} from "../chunk-Q4E56K4X.js";
|
|
65
65
|
|
|
66
66
|
// bin/pushary-codex-bridge.ts
|
|
67
67
|
import { existsSync } from "fs";
|
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
takeHookHoldBudget
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-EVFY3VE6.js";
|
|
5
5
|
import {
|
|
6
6
|
defersToNativeMode,
|
|
7
7
|
reportMachineDenial
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-BVCHY4OY.js";
|
|
9
9
|
import {
|
|
10
10
|
triggerAutoUpdate
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-SNJ3BOCP.js";
|
|
12
12
|
import {
|
|
13
13
|
isGatingMoment,
|
|
14
14
|
recordKeylessMoment
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-GQHZIBAZ.js";
|
|
16
16
|
import {
|
|
17
17
|
readHookInput
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-HWQNQVY6.js";
|
|
19
19
|
import {
|
|
20
20
|
announceSubscriptionRequired,
|
|
21
21
|
denyReasonFrom,
|
|
22
22
|
isDeferAnswer
|
|
23
23
|
} from "../chunk-5OP5MQI7.js";
|
|
24
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-VRT3EEZN.js";
|
|
25
25
|
import "../chunk-SGZJ5LYH.js";
|
|
26
|
-
import "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
35
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-NVGDMTX3.js";
|
|
27
|
+
import "../chunk-SPXBXN23.js";
|
|
28
|
+
import "../chunk-SJN22ADZ.js";
|
|
29
|
+
import "../chunk-D7SOOVHX.js";
|
|
30
|
+
import "../chunk-ZC3TF4LR.js";
|
|
31
|
+
import "../chunk-UKNKYTTY.js";
|
|
32
|
+
import "../chunk-Q23MMVTD.js";
|
|
33
|
+
import "../chunk-5AXCOTIT.js";
|
|
34
|
+
import "../chunk-7JTVYR5B.js";
|
|
35
|
+
import "../chunk-KK54WQ74.js";
|
|
36
36
|
import "../chunk-XHKBHWLX.js";
|
|
37
37
|
import "../chunk-6ICPEJY5.js";
|
|
38
38
|
import {
|
|
@@ -77,11 +77,11 @@ import {
|
|
|
77
77
|
toPolicyLookup,
|
|
78
78
|
toPolicyLookups,
|
|
79
79
|
userScope
|
|
80
|
-
} from "../chunk-
|
|
80
|
+
} from "../chunk-CCDVL63C.js";
|
|
81
81
|
import {
|
|
82
82
|
DEFAULT_SESSION
|
|
83
83
|
} from "../chunk-N6IOSZOE.js";
|
|
84
|
-
import "../chunk-
|
|
84
|
+
import "../chunk-DJ4BB264.js";
|
|
85
85
|
import {
|
|
86
86
|
DECISION_STOP_REASON,
|
|
87
87
|
UNVERIFIABLE_APPROVAL_REASON,
|
|
@@ -95,36 +95,36 @@ import {
|
|
|
95
95
|
sendNotification,
|
|
96
96
|
unavailableQuestionUnlessSubscriptionRequired,
|
|
97
97
|
waitForQuestion
|
|
98
|
-
} from "../chunk-
|
|
98
|
+
} from "../chunk-WN6WYUCV.js";
|
|
99
99
|
import {
|
|
100
100
|
exitAfterClientReports
|
|
101
|
-
} from "../chunk-
|
|
101
|
+
} from "../chunk-DA4FTGTK.js";
|
|
102
102
|
import "../chunk-POFBE6ZY.js";
|
|
103
103
|
import "../chunk-GMXKITVA.js";
|
|
104
|
-
import "../chunk-
|
|
104
|
+
import "../chunk-5BHROGRB.js";
|
|
105
105
|
import {
|
|
106
106
|
SubscriptionRequiredError
|
|
107
|
-
} from "../chunk-
|
|
108
|
-
import "../chunk-
|
|
109
|
-
import "../chunk-
|
|
107
|
+
} from "../chunk-ZPW4MJOV.js";
|
|
108
|
+
import "../chunk-4QKM44N6.js";
|
|
109
|
+
import "../chunk-W4Q7NFXU.js";
|
|
110
110
|
import {
|
|
111
111
|
getMachineId
|
|
112
|
-
} from "../chunk-
|
|
112
|
+
} from "../chunk-3BUAEQCY.js";
|
|
113
113
|
import "../chunk-7QLSKOSU.js";
|
|
114
114
|
import {
|
|
115
115
|
EXIT
|
|
116
116
|
} from "../chunk-KZERVKTD.js";
|
|
117
|
-
import "../chunk-
|
|
117
|
+
import "../chunk-75CA37FZ.js";
|
|
118
118
|
import {
|
|
119
119
|
canonicalJson
|
|
120
|
-
} from "../chunk-
|
|
120
|
+
} from "../chunk-HJXZJF6O.js";
|
|
121
121
|
import {
|
|
122
122
|
writeFileAtomic
|
|
123
123
|
} from "../chunk-T7E75EKA.js";
|
|
124
124
|
import {
|
|
125
125
|
getApiKey
|
|
126
|
-
} from "../chunk-
|
|
127
|
-
import "../chunk-
|
|
126
|
+
} from "../chunk-2QRE6QH2.js";
|
|
127
|
+
import "../chunk-L6USMDTW.js";
|
|
128
128
|
import {
|
|
129
129
|
CODEX_RESCUE_TOOL_NAME,
|
|
130
130
|
GATE_BLOCK_REASON_MAX_LENGTH,
|
|
@@ -137,7 +137,7 @@ import {
|
|
|
137
137
|
hookWaitClamped,
|
|
138
138
|
hookWaitDeadline,
|
|
139
139
|
resolveGate
|
|
140
|
-
} from "../chunk-
|
|
140
|
+
} from "../chunk-Q4E56K4X.js";
|
|
141
141
|
|
|
142
142
|
// bin/pushary-codex-hook.ts
|
|
143
143
|
import { basename } from "path";
|
|
@@ -764,7 +764,7 @@ var decidePreToolUse = async (input) => {
|
|
|
764
764
|
};
|
|
765
765
|
var repairCodexHoldsQuietly = async () => {
|
|
766
766
|
try {
|
|
767
|
-
const { repairCodexHolds } = await import("../reapply-
|
|
767
|
+
const { repairCodexHolds } = await import("../reapply-NOB2Q6C4.js");
|
|
768
768
|
repairCodexHolds();
|
|
769
769
|
} catch {
|
|
770
770
|
return;
|