@pushary/agent-hooks 1.3.0 → 1.3.1
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 +7 -0
- package/data/SKILL.md +3 -3
- package/data/cursor-plugin/skills/pushary/SKILL.md +2 -2
- package/data/vscode-plugin/skills/pushary/SKILL.md +2 -2
- package/dist/bin/pushary-bell-hook.js +20 -20
- package/dist/bin/pushary-bell.js +7 -7
- package/dist/bin/pushary-claude.js +20 -20
- package/dist/bin/pushary-clean.js +21 -21
- package/dist/bin/pushary-codex-bridge.js +11 -11
- package/dist/bin/pushary-codex-hook.js +24 -24
- package/dist/bin/pushary-codex.js +7 -7
- package/dist/bin/pushary-connect.js +7 -7
- package/dist/bin/pushary-cowork.js +3 -3
- package/dist/bin/pushary-daemon.js +24 -24
- package/dist/bin/pushary-disconnect.js +11 -11
- package/dist/bin/pushary-doctor.js +35 -22
- package/dist/bin/pushary-elicitation-hook.js +19 -19
- package/dist/bin/pushary-gemini-bridge.js +10 -10
- package/dist/bin/pushary-gemini-hook.js +21 -21
- package/dist/bin/pushary-hook.js +30 -40
- package/dist/bin/pushary-login.js +8 -8
- package/dist/bin/pushary-logout.js +5 -5
- package/dist/bin/pushary-mode.js +3 -3
- package/dist/bin/pushary-notification-hook.js +22 -22
- package/dist/bin/pushary-opencode-hook.js +21 -21
- package/dist/bin/pushary-permission-denied-hook.js +26 -26
- package/dist/bin/pushary-permission-hook.js +30 -29
- package/dist/bin/pushary-post-hook.js +22 -22
- package/dist/bin/pushary-prompt-hook.js +22 -22
- package/dist/bin/pushary-session-end-hook.js +22 -22
- package/dist/bin/pushary-session-start-hook.js +24 -24
- package/dist/bin/pushary-setup.js +27 -27
- package/dist/bin/pushary-stats.js +2 -2
- package/dist/bin/pushary-status.js +11 -11
- package/dist/bin/pushary-stop-hook.js +22 -22
- package/dist/bin/pushary-stopfailure-hook.js +22 -22
- package/dist/bin/pushary-transcript-register.js +18 -18
- package/dist/bin/pushary-transcripts.js +6 -6
- package/dist/bin/pushary-upgrade.js +15 -15
- package/dist/bin/pushary-wait.js +3 -3
- package/dist/{chunk-RHLUJE4H.js → chunk-34NNTYK6.js} +1 -1
- package/dist/{chunk-EJZCV5G4.js → chunk-35RPUNYU.js} +1 -1
- package/dist/{chunk-K7UIAE7I.js → chunk-465UENKO.js} +2 -2
- package/dist/{chunk-XBO42HKH.js → chunk-5SALHATY.js} +2 -2
- package/dist/{chunk-WPJS3OZH.js → chunk-5UWDYOZX.js} +20 -1
- package/dist/{chunk-POAFXBNH.js → chunk-5WLH2ENB.js} +1 -1
- package/dist/{chunk-KPNGPRYU.js → chunk-5XKMOZO6.js} +4 -4
- package/dist/{chunk-KS4P6F3R.js → chunk-6HH4IH4K.js} +4 -4
- package/dist/{chunk-XBJW4MV5.js → chunk-AFKOWCMQ.js} +1 -1
- package/dist/{chunk-FGVNU7XD.js → chunk-AFOTOA24.js} +1 -1
- package/dist/{chunk-B3S4SF3D.js → chunk-CDSL3LLO.js} +1 -1
- package/dist/{chunk-N43EQPJK.js → chunk-CKLWJ6EL.js} +10 -2
- package/dist/{chunk-2PLEJ7SY.js → chunk-EAGMQMRM.js} +1 -1
- package/dist/{chunk-BYGEZI7B.js → chunk-FGNABUPN.js} +1 -1
- package/dist/{chunk-A5ZWYQFV.js → chunk-HCTSTMDD.js} +4 -4
- package/dist/{chunk-X3KIGNIP.js → chunk-I2OLM3DM.js} +30 -21
- package/dist/{chunk-EYMMU5HC.js → chunk-JZA2JOGO.js} +1 -1
- package/dist/{chunk-OE6U2AXM.js → chunk-KHGIM2BN.js} +3 -3
- package/dist/{chunk-JYEGOYQC.js → chunk-KLZJEMSE.js} +1 -1
- package/dist/{chunk-BNDHXPTQ.js → chunk-LWT34GSY.js} +20 -13
- package/dist/{chunk-BL4SQNO6.js → chunk-NDSOOJDX.js} +1 -1
- package/dist/{chunk-YF4JDCU4.js → chunk-OMP3KDDU.js} +1 -1
- package/dist/{chunk-EU6JH7KU.js → chunk-P232YODQ.js} +8 -8
- package/dist/{chunk-K4TAUYUJ.js → chunk-PEV6ULSM.js} +3 -3
- package/dist/{chunk-4V24U44H.js → chunk-PHXU4NOP.js} +2 -2
- package/dist/{chunk-3AIFWTVB.js → chunk-QDYJQLXT.js} +2 -2
- package/dist/{chunk-DVO4SZMJ.js → chunk-QOCWB4Q6.js} +3 -3
- package/dist/{chunk-EKQAKSGI.js → chunk-R5CU7ED6.js} +1 -1
- package/dist/{chunk-XEXOHUJ6.js → chunk-REIZ5GXG.js} +4 -4
- package/dist/{chunk-UVXNYYHG.js → chunk-RERJ2ZDV.js} +6 -6
- package/dist/{chunk-ZHL62DRA.js → chunk-SGZE2JBF.js} +3 -3
- package/dist/{chunk-YKLCWWEI.js → chunk-SGZJ5LYH.js} +1 -1
- package/dist/{chunk-4LL6LG5X.js → chunk-T7E75EKA.js} +4 -3
- package/dist/{chunk-RVDHN2TJ.js → chunk-TGG4FWWB.js} +2 -2
- package/dist/{chunk-DON24PNT.js → chunk-TW7KA27C.js} +1 -1
- package/dist/{chunk-WXXDHGTZ.js → chunk-WOBHHXW5.js} +4 -4
- package/dist/{chunk-MU275U5A.js → chunk-XOUQUZ43.js} +2 -2
- package/dist/{chunk-IAEVVUXO.js → chunk-XP2KRTZD.js} +1 -1
- package/dist/{chunk-E7WBNGJS.js → chunk-XVE52YFZ.js} +1 -1
- package/dist/{chunk-A2URMNFM.js → chunk-YXWM4TNX.js} +1 -1
- package/dist/{reapply-FUCAKR6Z.js → reapply-ADFRVH5N.js} +9 -9
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.js +13 -13
- package/package.json +1 -1
- /package/dist/{chunk-KBITFQST.js → chunk-P32LPT2L.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.3.1
|
|
4
|
+
|
|
5
|
+
- Keep human-review policies effective inside shell chains, and refuse automatic approval of quoted command substitutions.
|
|
6
|
+
- Check kill switches and standing denials before rejecting unreadable tool targets. Check every file in a patch; ask the agent to split a batch that crosses scope.
|
|
7
|
+
- Preserve symlinked agent configuration files during atomic updates.
|
|
8
|
+
- The installed skill recognizes file-edit capabilities across agents, including Codex patches.
|
|
9
|
+
|
|
3
10
|
## 1.2.0
|
|
4
11
|
|
|
5
12
|
Nothing to run. These are the gate's own rules, tightened where they were guessing.
|
package/data/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pushary
|
|
3
|
-
version: 0.11.
|
|
3
|
+
version: 0.11.1
|
|
4
4
|
description: Push notifications and human-in-the-loop for AI agents. Use this whenever a running agent needs a human and nobody is at the terminal, such as before an irreversible or destructive action, before spending money, deploying, force-pushing or deleting, when blocked on a decision outside your authority, when running unattended and you hit a genuine ambiguity, when another skill's workflow says to confirm with the user, and when a long task finishes or fails with nobody watching. Also use it when the user says things like keep going and ping me on my phone if you need anything, notify me when my agent needs me, approve from my phone, ask me questions while I am away from the terminal, run this overnight, keep working while I am in a meeting, I am stepping away, do not wait for me, or wants a long task to run unattended. Send alerts when tasks finish or fail, ask questions (yes/no, multiple choice, or free text) via push, and get answers from their connected devices. Use these tools proactively - do not wait for the user to ask for notifications. Every question and answer is recorded, so an unattended run stays reviewable afterwards. Works with Claude Code, Codex, Cursor, VS Code, Windsurf, Hermes, Lovable, or any MCP client; no Claude Max subscription required. Pushary is a hosted service, $9.99/mo after a 3-day card-first trial.
|
|
5
5
|
metadata:
|
|
6
6
|
hermes:
|
|
@@ -448,7 +448,7 @@ Propose the boundary of this run and block until the user agrees to it. Call it
|
|
|
448
448
|
|
|
449
449
|
The user sees three things: the paths you will change, the paths you promise to leave alone, and your definition of done. The user agrees to all three in one tap.
|
|
450
450
|
|
|
451
|
-
**Before you call this,
|
|
451
|
+
**Before you call this, identify the file-editing capabilities you will use.** Native names differ: Codex uses `apply_patch`, VS Code also uses patch and replacement tools, and other agents expose `Edit`, `Write` or `MultiEdit`. These can carry enforceable paths. Use shape 3 only when this run has no file boundary to enforce. Read the returned `enforces` and `hookSeen` fields to confirm what is actually checked; tool names alone do not prove enforcement.
|
|
452
452
|
|
|
453
453
|
**A boundary makes a question. It never makes an approval.** After the user agrees, a rule that already asked still asks. A scope can only turn an automatic approval into a question.
|
|
454
454
|
|
|
@@ -456,7 +456,7 @@ The user sees three things: the paths you will change, the paths you promise to
|
|
|
456
456
|
|
|
457
457
|
The gate reads one thing from the contract: the path of a file you are about to change. It compares that path with `allowedPaths` and `offLimitsPaths`.
|
|
458
458
|
|
|
459
|
-
- **Enforced.** `Edit`, `Write
|
|
459
|
+
- **Enforced.** `Edit`, `Write`, `MultiEdit` and supported aliases, including Codex `apply_patch` and VS Code patch/replacement tools. A file outside the agreed paths stops being auto-approvable and becomes a new question. Approving it widens the scope by that exact path.
|
|
460
460
|
- **Not enforced.** Shell commands. `Read`. Web requests. Every MCP tool. These carry no file path, so the gate has no path to judge and reads them as inside the scope. The permission policy still governs them.
|
|
461
461
|
- **`doneWhen` and `promises` are not enforced.** The user reads them. No code checks them.
|
|
462
462
|
|
|
@@ -441,7 +441,7 @@ Propose the boundary of this run and block until the user agrees to it. Call it
|
|
|
441
441
|
|
|
442
442
|
The user sees three things: the paths you will change, the paths you promise to leave alone, and your definition of done. The user agrees to all three in one tap.
|
|
443
443
|
|
|
444
|
-
**Before you call this,
|
|
444
|
+
**Before you call this, identify the file-editing capabilities you will use.** Native names differ: Codex uses `apply_patch`, VS Code also uses patch and replacement tools, and other agents expose `Edit`, `Write` or `MultiEdit`. These can carry enforceable paths. Use shape 3 only when this run has no file boundary to enforce. Read the returned `enforces` and `hookSeen` fields to confirm what is actually checked; tool names alone do not prove enforcement.
|
|
445
445
|
|
|
446
446
|
**A boundary makes a question. It never makes an approval.** After the user agrees, a rule that already asked still asks. A scope can only turn an automatic approval into a question.
|
|
447
447
|
|
|
@@ -449,7 +449,7 @@ The user sees three things: the paths you will change, the paths you promise to
|
|
|
449
449
|
|
|
450
450
|
The gate reads one thing from the contract: the path of a file you are about to change. It compares that path with `allowedPaths` and `offLimitsPaths`.
|
|
451
451
|
|
|
452
|
-
- **Enforced.** `Edit`, `Write
|
|
452
|
+
- **Enforced.** `Edit`, `Write`, `MultiEdit` and supported aliases, including Codex `apply_patch` and VS Code patch/replacement tools. A file outside the agreed paths stops being auto-approvable and becomes a new question. Approving it widens the scope by that exact path.
|
|
453
453
|
- **Not enforced.** Shell commands. `Read`. Web requests. Every MCP tool. These carry no file path, so the gate has no path to judge and reads them as inside the scope. The permission policy still governs them.
|
|
454
454
|
- **`doneWhen` and `promises` are not enforced.** The user reads them. No code checks them.
|
|
455
455
|
|
|
@@ -441,7 +441,7 @@ Propose the boundary of this run and block until the user agrees to it. Call it
|
|
|
441
441
|
|
|
442
442
|
The user sees three things: the paths you will change, the paths you promise to leave alone, and your definition of done. The user agrees to all three in one tap.
|
|
443
443
|
|
|
444
|
-
**Before you call this,
|
|
444
|
+
**Before you call this, identify the file-editing capabilities you will use.** Native names differ: Codex uses `apply_patch`, VS Code also uses patch and replacement tools, and other agents expose `Edit`, `Write` or `MultiEdit`. These can carry enforceable paths. Use shape 3 only when this run has no file boundary to enforce. Read the returned `enforces` and `hookSeen` fields to confirm what is actually checked; tool names alone do not prove enforcement.
|
|
445
445
|
|
|
446
446
|
**A boundary makes a question. It never makes an approval.** After the user agrees, a rule that already asked still asks. A scope can only turn an automatic approval into a question.
|
|
447
447
|
|
|
@@ -449,7 +449,7 @@ The user sees three things: the paths you will change, the paths you promise to
|
|
|
449
449
|
|
|
450
450
|
The gate reads one thing from the contract: the path of a file you are about to change. It compares that path with `allowedPaths` and `offLimitsPaths`.
|
|
451
451
|
|
|
452
|
-
- **Enforced.** `Edit`, `Write
|
|
452
|
+
- **Enforced.** `Edit`, `Write`, `MultiEdit` and supported aliases, including Codex `apply_patch` and VS Code patch/replacement tools. A file outside the agreed paths stops being auto-approvable and becomes a new question. Approving it widens the scope by that exact path.
|
|
453
453
|
- **Not enforced.** Shell commands. `Read`. Web requests. Every MCP tool. These carry no file path, so the gate has no path to judge and reads them as inside the scope. The permission policy still governs them.
|
|
454
454
|
- **`doneWhen` and `promises` are not enforced.** The user reads them. No code checks them.
|
|
455
455
|
|
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
handleBell
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-35RPUNYU.js";
|
|
5
5
|
import {
|
|
6
6
|
readHookInput
|
|
7
|
-
} from "../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-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-CKLWJ6EL.js";
|
|
8
|
+
import "../chunk-P232YODQ.js";
|
|
9
|
+
import "../chunk-SGZJ5LYH.js";
|
|
10
|
+
import "../chunk-REIZ5GXG.js";
|
|
11
|
+
import "../chunk-FGNABUPN.js";
|
|
12
|
+
import "../chunk-KLZJEMSE.js";
|
|
13
|
+
import "../chunk-QOCWB4Q6.js";
|
|
14
|
+
import "../chunk-6HH4IH4K.js";
|
|
15
|
+
import "../chunk-KHGIM2BN.js";
|
|
16
|
+
import "../chunk-EAGMQMRM.js";
|
|
17
|
+
import "../chunk-CDSL3LLO.js";
|
|
18
18
|
import "../chunk-EQRS3SGM.js";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-YXWM4TNX.js";
|
|
20
20
|
import "../chunk-XHKBHWLX.js";
|
|
21
|
-
import "../chunk-
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-XP2KRTZD.js";
|
|
22
|
+
import "../chunk-465UENKO.js";
|
|
23
|
+
import "../chunk-34NNTYK6.js";
|
|
24
24
|
import "../chunk-GMXKITVA.js";
|
|
25
25
|
import "../chunk-DINDL2CF.js";
|
|
26
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-5SALHATY.js";
|
|
27
27
|
import "../chunk-7QLSKOSU.js";
|
|
28
28
|
import "../chunk-KZERVKTD.js";
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
29
|
+
import "../chunk-5WLH2ENB.js";
|
|
30
|
+
import "../chunk-T7E75EKA.js";
|
|
31
31
|
import "../chunk-2UMNXADU.js";
|
|
32
|
-
import "../chunk-
|
|
32
|
+
import "../chunk-5UWDYOZX.js";
|
|
33
33
|
|
|
34
34
|
// bin/pushary-bell-hook.ts
|
|
35
35
|
var main = async () => {
|
package/dist/bin/pushary-bell.js
CHANGED
|
@@ -5,15 +5,15 @@ import {
|
|
|
5
5
|
liveAgentCount,
|
|
6
6
|
ring,
|
|
7
7
|
upgradeThreshold
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-35RPUNYU.js";
|
|
9
9
|
import {
|
|
10
10
|
addBellHooks,
|
|
11
11
|
bellInstalled,
|
|
12
12
|
removeBellHooks
|
|
13
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-EAGMQMRM.js";
|
|
14
14
|
import {
|
|
15
15
|
claudeSettings
|
|
16
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-34NNTYK6.js";
|
|
17
17
|
import {
|
|
18
18
|
createIo
|
|
19
19
|
} from "../chunk-5RUIFDTP.js";
|
|
@@ -25,18 +25,18 @@ import {
|
|
|
25
25
|
parseFlags
|
|
26
26
|
} from "../chunk-GMXKITVA.js";
|
|
27
27
|
import "../chunk-DINDL2CF.js";
|
|
28
|
-
import "../chunk-
|
|
28
|
+
import "../chunk-5SALHATY.js";
|
|
29
29
|
import "../chunk-7QLSKOSU.js";
|
|
30
30
|
import {
|
|
31
31
|
EXIT
|
|
32
32
|
} from "../chunk-KZERVKTD.js";
|
|
33
|
-
import "../chunk-
|
|
33
|
+
import "../chunk-5WLH2ENB.js";
|
|
34
34
|
import {
|
|
35
35
|
readJsonSafe,
|
|
36
36
|
writeJsonAtomic
|
|
37
|
-
} from "../chunk-
|
|
37
|
+
} from "../chunk-T7E75EKA.js";
|
|
38
38
|
import "../chunk-2UMNXADU.js";
|
|
39
|
-
import "../chunk-
|
|
39
|
+
import "../chunk-5UWDYOZX.js";
|
|
40
40
|
|
|
41
41
|
// bin/pushary-bell.ts
|
|
42
42
|
exitOnHelpFlag("bell");
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
describeIdleWindow,
|
|
9
9
|
startProcessOwnership,
|
|
10
10
|
withSpawnProcessOwnership
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-XOUQUZ43.js";
|
|
12
12
|
import {
|
|
13
13
|
isDeferAnswer
|
|
14
14
|
} from "../chunk-YHG74UFF.js";
|
|
@@ -17,24 +17,24 @@ import {
|
|
|
17
17
|
loadSessionKey,
|
|
18
18
|
registerTranscript,
|
|
19
19
|
registeredTranscriptEnabled
|
|
20
|
-
} from "../chunk-
|
|
21
|
-
import "../chunk-
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
20
|
+
} from "../chunk-P232YODQ.js";
|
|
21
|
+
import "../chunk-SGZJ5LYH.js";
|
|
22
|
+
import "../chunk-REIZ5GXG.js";
|
|
23
|
+
import "../chunk-FGNABUPN.js";
|
|
24
|
+
import "../chunk-KLZJEMSE.js";
|
|
25
|
+
import "../chunk-QOCWB4Q6.js";
|
|
26
26
|
import {
|
|
27
27
|
ensureDaemonRunning
|
|
28
|
-
} from "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
28
|
+
} from "../chunk-6HH4IH4K.js";
|
|
29
|
+
import "../chunk-KHGIM2BN.js";
|
|
30
|
+
import "../chunk-EAGMQMRM.js";
|
|
31
31
|
import {
|
|
32
32
|
encryptRecord
|
|
33
|
-
} from "../chunk-
|
|
33
|
+
} from "../chunk-CDSL3LLO.js";
|
|
34
34
|
import "../chunk-EQRS3SGM.js";
|
|
35
35
|
import {
|
|
36
36
|
transcriptsEnabled
|
|
37
|
-
} from "../chunk-
|
|
37
|
+
} from "../chunk-YXWM4TNX.js";
|
|
38
38
|
import {
|
|
39
39
|
needsShell,
|
|
40
40
|
spawnClaude
|
|
@@ -56,8 +56,8 @@ import {
|
|
|
56
56
|
reportEvent,
|
|
57
57
|
savePendingCommand,
|
|
58
58
|
scopePathFor
|
|
59
|
-
} from "../chunk-
|
|
60
|
-
import "../chunk-
|
|
59
|
+
} from "../chunk-WOBHHXW5.js";
|
|
60
|
+
import "../chunk-XP2KRTZD.js";
|
|
61
61
|
import {
|
|
62
62
|
DECISION_STOP_REASON,
|
|
63
63
|
askUser,
|
|
@@ -70,17 +70,17 @@ import {
|
|
|
70
70
|
} from "../chunk-LGXUGYUH.js";
|
|
71
71
|
import {
|
|
72
72
|
getMachineId
|
|
73
|
-
} from "../chunk-
|
|
74
|
-
import "../chunk-
|
|
73
|
+
} from "../chunk-465UENKO.js";
|
|
74
|
+
import "../chunk-34NNTYK6.js";
|
|
75
75
|
import "../chunk-GMXKITVA.js";
|
|
76
76
|
import "../chunk-DINDL2CF.js";
|
|
77
|
-
import "../chunk-
|
|
77
|
+
import "../chunk-5SALHATY.js";
|
|
78
78
|
import "../chunk-EYRGBYZG.js";
|
|
79
79
|
import "../chunk-SAF6HGAA.js";
|
|
80
80
|
import "../chunk-7QLSKOSU.js";
|
|
81
81
|
import "../chunk-KZERVKTD.js";
|
|
82
|
-
import "../chunk-
|
|
83
|
-
import "../chunk-
|
|
82
|
+
import "../chunk-5WLH2ENB.js";
|
|
83
|
+
import "../chunk-T7E75EKA.js";
|
|
84
84
|
import {
|
|
85
85
|
getApiKey,
|
|
86
86
|
getBaseUrl
|
|
@@ -89,7 +89,7 @@ import {
|
|
|
89
89
|
KILL_REASON,
|
|
90
90
|
redactSecrets,
|
|
91
91
|
resolveGate
|
|
92
|
-
} from "../chunk-
|
|
92
|
+
} from "../chunk-5UWDYOZX.js";
|
|
93
93
|
|
|
94
94
|
// src/wrapper/localPassthrough.ts
|
|
95
95
|
var SIGNAL_NUMBERS = {
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
createGuards,
|
|
6
6
|
resolveHermesPython,
|
|
7
7
|
runHermesPythonScript
|
|
8
|
-
} from "../chunk-
|
|
9
|
-
import "../chunk-
|
|
8
|
+
} from "../chunk-AFOTOA24.js";
|
|
9
|
+
import "../chunk-P32LPT2L.js";
|
|
10
10
|
import {
|
|
11
11
|
removeInstructionBlock,
|
|
12
12
|
shortenHome,
|
|
13
13
|
unregisterPluginLocation,
|
|
14
14
|
vscodeSettingsTargets
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-PEV6ULSM.js";
|
|
16
16
|
import {
|
|
17
17
|
OPENCODE_PLUGIN_SIBLING,
|
|
18
18
|
OPENCODE_PLUGIN_SIBLING_CONTENTS,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
openCodePluginDir,
|
|
23
23
|
openCodePluginFile,
|
|
24
24
|
removeOpenCodeMcpServer
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-XVE52YFZ.js";
|
|
26
26
|
import {
|
|
27
27
|
compatibleConfigFile,
|
|
28
28
|
compatibleInstructionsFile,
|
|
@@ -30,37 +30,37 @@ import {
|
|
|
30
30
|
compatiblePermissionRuleFile,
|
|
31
31
|
removeCompatibleHooks,
|
|
32
32
|
removeCompatibleMcpServer
|
|
33
|
-
} from "../chunk-
|
|
33
|
+
} from "../chunk-LWT34GSY.js";
|
|
34
34
|
import {
|
|
35
35
|
isClaudeMcpSnapshot,
|
|
36
36
|
removeClaudeMcpServers,
|
|
37
37
|
removePusharySettings,
|
|
38
38
|
removePusharyToolPermissions,
|
|
39
39
|
restoreClaudeMcpServer
|
|
40
|
-
} from "../chunk-
|
|
40
|
+
} from "../chunk-SGZE2JBF.js";
|
|
41
41
|
import {
|
|
42
42
|
hookOwnerOf,
|
|
43
43
|
isHookTakeoverReceipt,
|
|
44
44
|
restoreHookTakeover,
|
|
45
45
|
restoreMcpServer
|
|
46
|
-
} from "../chunk-
|
|
47
|
-
import "../chunk-
|
|
48
|
-
import "../chunk-
|
|
46
|
+
} from "../chunk-REIZ5GXG.js";
|
|
47
|
+
import "../chunk-FGNABUPN.js";
|
|
48
|
+
import "../chunk-KLZJEMSE.js";
|
|
49
49
|
import {
|
|
50
50
|
pusharyHookExecutable
|
|
51
|
-
} from "../chunk-
|
|
51
|
+
} from "../chunk-QOCWB4Q6.js";
|
|
52
52
|
import {
|
|
53
53
|
disableDaemonService
|
|
54
|
-
} from "../chunk-
|
|
54
|
+
} from "../chunk-6HH4IH4K.js";
|
|
55
55
|
import {
|
|
56
56
|
removeGeminiSettings
|
|
57
|
-
} from "../chunk-
|
|
58
|
-
import "../chunk-
|
|
57
|
+
} from "../chunk-KHGIM2BN.js";
|
|
58
|
+
import "../chunk-EAGMQMRM.js";
|
|
59
59
|
import "../chunk-XHKBHWLX.js";
|
|
60
|
-
import "../chunk-
|
|
61
|
-
import "../chunk-
|
|
60
|
+
import "../chunk-WOBHHXW5.js";
|
|
61
|
+
import "../chunk-XP2KRTZD.js";
|
|
62
62
|
import "../chunk-LGXUGYUH.js";
|
|
63
|
-
import "../chunk-
|
|
63
|
+
import "../chunk-465UENKO.js";
|
|
64
64
|
import {
|
|
65
65
|
bridgeAgentKey,
|
|
66
66
|
claudeJson,
|
|
@@ -89,7 +89,7 @@ import {
|
|
|
89
89
|
restoreCodexHookTrust,
|
|
90
90
|
vscodePluginDir,
|
|
91
91
|
vscodePluginMcp
|
|
92
|
-
} from "../chunk-
|
|
92
|
+
} from "../chunk-34NNTYK6.js";
|
|
93
93
|
import {
|
|
94
94
|
exitOnHelpFlag
|
|
95
95
|
} from "../chunk-GOQHN2UH.js";
|
|
@@ -100,22 +100,22 @@ import {
|
|
|
100
100
|
import "../chunk-DINDL2CF.js";
|
|
101
101
|
import {
|
|
102
102
|
removeClaudeAlias
|
|
103
|
-
} from "../chunk-
|
|
103
|
+
} from "../chunk-5SALHATY.js";
|
|
104
104
|
import "../chunk-EYRGBYZG.js";
|
|
105
105
|
import "../chunk-SAF6HGAA.js";
|
|
106
106
|
import "../chunk-7QLSKOSU.js";
|
|
107
107
|
import {
|
|
108
108
|
EXIT
|
|
109
109
|
} from "../chunk-KZERVKTD.js";
|
|
110
|
-
import "../chunk-
|
|
111
|
-
import "../chunk-
|
|
110
|
+
import "../chunk-5WLH2ENB.js";
|
|
111
|
+
import "../chunk-T7E75EKA.js";
|
|
112
112
|
import "../chunk-2UMNXADU.js";
|
|
113
113
|
import {
|
|
114
114
|
CURSOR_GATE_EVENTS,
|
|
115
115
|
HOOK_COMPATIBLE_PROFILES,
|
|
116
116
|
HOOK_LOCATOR_BINARY,
|
|
117
117
|
isValidApiKey
|
|
118
|
-
} from "../chunk-
|
|
118
|
+
} from "../chunk-5UWDYOZX.js";
|
|
119
119
|
|
|
120
120
|
// bin/pushary-clean.ts
|
|
121
121
|
import { existsSync, readFileSync, copyFileSync, readdirSync } from "fs";
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "../chunk-
|
|
2
|
+
import "../chunk-PHXU4NOP.js";
|
|
3
3
|
import {
|
|
4
4
|
LiveTranscriptRelay,
|
|
5
5
|
liveSessionSleep,
|
|
6
6
|
postLiveSession,
|
|
7
7
|
postLiveSessionUntilAccepted,
|
|
8
8
|
startLiveSessionHeartbeat
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-R5CU7ED6.js";
|
|
10
10
|
import {
|
|
11
11
|
SESSION_IDLE_TIMEOUT_MS,
|
|
12
12
|
describeIdleWindow,
|
|
13
13
|
idleDeadlinePassed,
|
|
14
14
|
startProcessOwnership,
|
|
15
15
|
withSpawnProcessOwnership
|
|
16
|
-
} from "../chunk-
|
|
17
|
-
import "../chunk-
|
|
16
|
+
} from "../chunk-XOUQUZ43.js";
|
|
17
|
+
import "../chunk-CDSL3LLO.js";
|
|
18
18
|
import "../chunk-EQRS3SGM.js";
|
|
19
19
|
import {
|
|
20
20
|
transcriptsEnabled
|
|
21
|
-
} from "../chunk-
|
|
21
|
+
} from "../chunk-YXWM4TNX.js";
|
|
22
22
|
import {
|
|
23
23
|
spawnClaude
|
|
24
24
|
} from "../chunk-XHKBHWLX.js";
|
|
@@ -28,19 +28,19 @@ import {
|
|
|
28
28
|
} from "../chunk-LGXUGYUH.js";
|
|
29
29
|
import {
|
|
30
30
|
getMachineId
|
|
31
|
-
} from "../chunk-
|
|
31
|
+
} from "../chunk-465UENKO.js";
|
|
32
32
|
import {
|
|
33
33
|
resolveBinary
|
|
34
|
-
} from "../chunk-
|
|
35
|
-
import "../chunk-
|
|
34
|
+
} from "../chunk-34NNTYK6.js";
|
|
35
|
+
import "../chunk-5SALHATY.js";
|
|
36
36
|
import {
|
|
37
37
|
callMcpTool
|
|
38
38
|
} from "../chunk-EYRGBYZG.js";
|
|
39
39
|
import "../chunk-SAF6HGAA.js";
|
|
40
40
|
import "../chunk-7QLSKOSU.js";
|
|
41
41
|
import "../chunk-KZERVKTD.js";
|
|
42
|
-
import "../chunk-
|
|
43
|
-
import "../chunk-
|
|
42
|
+
import "../chunk-5WLH2ENB.js";
|
|
43
|
+
import "../chunk-T7E75EKA.js";
|
|
44
44
|
import {
|
|
45
45
|
getApiKey,
|
|
46
46
|
getBaseUrl
|
|
@@ -48,7 +48,7 @@ import {
|
|
|
48
48
|
import {
|
|
49
49
|
parseAgentQuestion,
|
|
50
50
|
parseAgentQuestionAnswers
|
|
51
|
-
} from "../chunk-
|
|
51
|
+
} from "../chunk-5UWDYOZX.js";
|
|
52
52
|
|
|
53
53
|
// bin/pushary-codex-bridge.ts
|
|
54
54
|
import { existsSync } from "fs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
takeHookHoldBudget
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-JZA2JOGO.js";
|
|
5
5
|
import {
|
|
6
6
|
blockedActionFingerprint,
|
|
7
7
|
codexCallKey,
|
|
@@ -12,30 +12,30 @@ import {
|
|
|
12
12
|
recordBlockedActionHint,
|
|
13
13
|
recordCodexCallDecision,
|
|
14
14
|
userScope
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-HCTSTMDD.js";
|
|
16
16
|
import {
|
|
17
17
|
isGatingMoment,
|
|
18
18
|
recordKeylessMoment
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-OMP3KDDU.js";
|
|
20
20
|
import {
|
|
21
21
|
readHookInput
|
|
22
|
-
} from "../chunk-
|
|
22
|
+
} from "../chunk-CKLWJ6EL.js";
|
|
23
23
|
import {
|
|
24
24
|
denyReasonFrom,
|
|
25
25
|
isDeferAnswer
|
|
26
26
|
} from "../chunk-YHG74UFF.js";
|
|
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-
|
|
36
|
-
import "../chunk-
|
|
27
|
+
import "../chunk-P232YODQ.js";
|
|
28
|
+
import "../chunk-SGZJ5LYH.js";
|
|
29
|
+
import "../chunk-REIZ5GXG.js";
|
|
30
|
+
import "../chunk-FGNABUPN.js";
|
|
31
|
+
import "../chunk-KLZJEMSE.js";
|
|
32
|
+
import "../chunk-QOCWB4Q6.js";
|
|
33
|
+
import "../chunk-6HH4IH4K.js";
|
|
34
|
+
import "../chunk-KHGIM2BN.js";
|
|
35
|
+
import "../chunk-EAGMQMRM.js";
|
|
36
|
+
import "../chunk-CDSL3LLO.js";
|
|
37
37
|
import "../chunk-EQRS3SGM.js";
|
|
38
|
-
import "../chunk-
|
|
38
|
+
import "../chunk-YXWM4TNX.js";
|
|
39
39
|
import "../chunk-XHKBHWLX.js";
|
|
40
40
|
import {
|
|
41
41
|
CODEX_AGENT,
|
|
@@ -72,8 +72,8 @@ import {
|
|
|
72
72
|
toCodexWire,
|
|
73
73
|
toPolicyLookup,
|
|
74
74
|
toPolicyLookups
|
|
75
|
-
} from "../chunk-
|
|
76
|
-
import "../chunk-
|
|
75
|
+
} from "../chunk-WOBHHXW5.js";
|
|
76
|
+
import "../chunk-XP2KRTZD.js";
|
|
77
77
|
import {
|
|
78
78
|
DECISION_STOP_REASON,
|
|
79
79
|
askUser,
|
|
@@ -88,21 +88,21 @@ import {
|
|
|
88
88
|
} from "../chunk-LGXUGYUH.js";
|
|
89
89
|
import {
|
|
90
90
|
getMachineId
|
|
91
|
-
} from "../chunk-
|
|
91
|
+
} from "../chunk-465UENKO.js";
|
|
92
92
|
import {
|
|
93
93
|
canonicalJson
|
|
94
|
-
} from "../chunk-
|
|
94
|
+
} from "../chunk-34NNTYK6.js";
|
|
95
95
|
import "../chunk-GMXKITVA.js";
|
|
96
96
|
import "../chunk-DINDL2CF.js";
|
|
97
|
-
import "../chunk-
|
|
97
|
+
import "../chunk-5SALHATY.js";
|
|
98
98
|
import "../chunk-EYRGBYZG.js";
|
|
99
99
|
import "../chunk-SAF6HGAA.js";
|
|
100
100
|
import "../chunk-7QLSKOSU.js";
|
|
101
101
|
import "../chunk-KZERVKTD.js";
|
|
102
|
-
import "../chunk-
|
|
102
|
+
import "../chunk-5WLH2ENB.js";
|
|
103
103
|
import {
|
|
104
104
|
writeFileAtomic
|
|
105
|
-
} from "../chunk-
|
|
105
|
+
} from "../chunk-T7E75EKA.js";
|
|
106
106
|
import {
|
|
107
107
|
getApiKey
|
|
108
108
|
} from "../chunk-2UMNXADU.js";
|
|
@@ -118,7 +118,7 @@ import {
|
|
|
118
118
|
hookWaitClamped,
|
|
119
119
|
hookWaitDeadline,
|
|
120
120
|
resolveGate
|
|
121
|
-
} from "../chunk-
|
|
121
|
+
} from "../chunk-5UWDYOZX.js";
|
|
122
122
|
|
|
123
123
|
// bin/pushary-codex-hook.ts
|
|
124
124
|
import { basename } from "path";
|
|
@@ -734,7 +734,7 @@ var decidePreToolUse = async (input) => {
|
|
|
734
734
|
};
|
|
735
735
|
var repairCodexHoldsQuietly = async () => {
|
|
736
736
|
try {
|
|
737
|
-
const { repairCodexHolds } = await import("../reapply-
|
|
737
|
+
const { repairCodexHolds } = await import("../reapply-ADFRVH5N.js");
|
|
738
738
|
repairCodexHolds();
|
|
739
739
|
} catch {
|
|
740
740
|
return;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
reportEvent
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-WOBHHXW5.js";
|
|
5
|
+
import "../chunk-XP2KRTZD.js";
|
|
6
6
|
import {
|
|
7
7
|
askUser,
|
|
8
8
|
isDecisionStopped,
|
|
@@ -10,18 +10,18 @@ import {
|
|
|
10
10
|
} from "../chunk-LGXUGYUH.js";
|
|
11
11
|
import {
|
|
12
12
|
getMachineId
|
|
13
|
-
} from "../chunk-
|
|
14
|
-
import "../chunk-
|
|
13
|
+
} from "../chunk-465UENKO.js";
|
|
14
|
+
import "../chunk-34NNTYK6.js";
|
|
15
15
|
import "../chunk-EYRGBYZG.js";
|
|
16
16
|
import "../chunk-SAF6HGAA.js";
|
|
17
17
|
import "../chunk-7QLSKOSU.js";
|
|
18
18
|
import "../chunk-KZERVKTD.js";
|
|
19
|
-
import "../chunk-
|
|
20
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-5WLH2ENB.js";
|
|
20
|
+
import "../chunk-T7E75EKA.js";
|
|
21
21
|
import {
|
|
22
22
|
getApiKey
|
|
23
23
|
} from "../chunk-2UMNXADU.js";
|
|
24
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-5UWDYOZX.js";
|
|
25
25
|
|
|
26
26
|
// bin/pushary-codex.ts
|
|
27
27
|
import { basename } from "path";
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
printKeyCheck
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-NDSOOJDX.js";
|
|
5
5
|
import {
|
|
6
6
|
connectDevice,
|
|
7
7
|
connectExistingApp,
|
|
8
8
|
printConnectInstructions
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-TGG4FWWB.js";
|
|
10
10
|
import "../chunk-3EGEA4KH.js";
|
|
11
11
|
import {
|
|
12
12
|
checkApiKey
|
|
13
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-TW7KA27C.js";
|
|
14
14
|
import "../chunk-QCGNGEGE.js";
|
|
15
15
|
import {
|
|
16
16
|
createIo
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
import "../chunk-DINDL2CF.js";
|
|
26
26
|
import {
|
|
27
27
|
readKeySource
|
|
28
|
-
} from "../chunk-
|
|
28
|
+
} from "../chunk-5SALHATY.js";
|
|
29
29
|
import "../chunk-EYRGBYZG.js";
|
|
30
30
|
import "../chunk-SAF6HGAA.js";
|
|
31
31
|
import {
|
|
@@ -34,10 +34,10 @@ import {
|
|
|
34
34
|
import {
|
|
35
35
|
EXIT
|
|
36
36
|
} from "../chunk-KZERVKTD.js";
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
37
|
+
import "../chunk-5WLH2ENB.js";
|
|
38
|
+
import "../chunk-T7E75EKA.js";
|
|
39
39
|
import "../chunk-2UMNXADU.js";
|
|
40
|
-
import "../chunk-
|
|
40
|
+
import "../chunk-5UWDYOZX.js";
|
|
41
41
|
|
|
42
42
|
// bin/pushary-connect.ts
|
|
43
43
|
exitOnHelpFlag("connect");
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import {
|
|
3
3
|
coworkOutput,
|
|
4
4
|
parseCoworkOptions
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-QDYJQLXT.js";
|
|
6
6
|
import {
|
|
7
7
|
canOpenBrowser,
|
|
8
8
|
openInBrowser
|
|
9
9
|
} from "../chunk-PUZZELE6.js";
|
|
10
|
-
import "../chunk-
|
|
10
|
+
import "../chunk-FGNABUPN.js";
|
|
11
11
|
import {
|
|
12
12
|
exitOnHelpFlag
|
|
13
13
|
} from "../chunk-GOQHN2UH.js";
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "../chunk-KZERVKTD.js";
|
|
23
23
|
import {
|
|
24
24
|
CLAUDE_CONNECTOR_GUIDE
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-5UWDYOZX.js";
|
|
26
26
|
|
|
27
27
|
// bin/pushary-cowork.ts
|
|
28
28
|
exitOnHelpFlag("cowork");
|