pushary 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
|
@@ -1,40 +1,41 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
takeHookHoldBudget
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-HCXBAF43.js";
|
|
5
5
|
import {
|
|
6
|
+
askAgentQuestions,
|
|
6
7
|
defersToNativeMode,
|
|
7
8
|
reportMachineDenial
|
|
8
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-CHRRBADC.js";
|
|
9
10
|
import {
|
|
10
11
|
isGatingMoment,
|
|
11
12
|
recordKeylessMoment
|
|
12
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-G3CNMCQS.js";
|
|
13
14
|
import {
|
|
14
15
|
triggerAutoUpdate
|
|
15
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-D5IAEPFA.js";
|
|
16
17
|
import {
|
|
17
18
|
readHookInput
|
|
18
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-WLQENMOW.js";
|
|
19
20
|
import {
|
|
20
21
|
announceSubscriptionRequired,
|
|
21
22
|
isDeferAnswer
|
|
22
|
-
} from "../chunk-
|
|
23
|
-
import "../chunk-
|
|
23
|
+
} from "../chunk-W2TXFM6O.js";
|
|
24
|
+
import "../chunk-PA3OZGIA.js";
|
|
24
25
|
import "../chunk-DWQYCOPI.js";
|
|
25
|
-
import "../chunk-
|
|
26
|
-
import "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
26
|
+
import "../chunk-AJIH4JGB.js";
|
|
27
|
+
import "../chunk-4D54LZGF.js";
|
|
28
|
+
import "../chunk-WR3GKYKD.js";
|
|
29
|
+
import "../chunk-QC7ZNZMZ.js";
|
|
29
30
|
import "../chunk-XHKBHWLX.js";
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
31
|
+
import "../chunk-7GSOIBVM.js";
|
|
32
|
+
import "../chunk-ZFJAZBBF.js";
|
|
33
|
+
import "../chunk-GBNG6QEV.js";
|
|
34
|
+
import "../chunk-FZEQWY7Q.js";
|
|
35
|
+
import "../chunk-JVKY6ILU.js";
|
|
35
36
|
import "../chunk-GMXKITVA.js";
|
|
36
37
|
import "../chunk-6ICPEJY5.js";
|
|
37
|
-
import "../chunk-
|
|
38
|
+
import "../chunk-JWMCGL3P.js";
|
|
38
39
|
import {
|
|
39
40
|
CODEX_AGENT,
|
|
40
41
|
DEFAULT_SESSION,
|
|
@@ -78,8 +79,8 @@ import {
|
|
|
78
79
|
toPolicyLookup,
|
|
79
80
|
toPolicyLookups,
|
|
80
81
|
userScope
|
|
81
|
-
} from "../chunk-
|
|
82
|
-
import "../chunk-
|
|
82
|
+
} from "../chunk-L5WOYQT7.js";
|
|
83
|
+
import "../chunk-IBUAVM6X.js";
|
|
83
84
|
import {
|
|
84
85
|
askUser,
|
|
85
86
|
cancelQuestion,
|
|
@@ -93,31 +94,31 @@ import {
|
|
|
93
94
|
sendNotification,
|
|
94
95
|
unavailableQuestionUnlessSubscriptionRequired,
|
|
95
96
|
waitForQuestion
|
|
96
|
-
} from "../chunk-
|
|
97
|
+
} from "../chunk-7O5U5TED.js";
|
|
97
98
|
import "../chunk-POFBE6ZY.js";
|
|
98
99
|
import {
|
|
99
100
|
SubscriptionRequiredError
|
|
100
|
-
} from "../chunk-
|
|
101
|
-
import "../chunk-
|
|
102
|
-
import "../chunk-
|
|
101
|
+
} from "../chunk-ABDGTGBT.js";
|
|
102
|
+
import "../chunk-OLS4DTFN.js";
|
|
103
|
+
import "../chunk-BMHD2NEH.js";
|
|
103
104
|
import {
|
|
104
105
|
getMachineId
|
|
105
|
-
} from "../chunk-
|
|
106
|
+
} from "../chunk-3HUHP4A4.js";
|
|
106
107
|
import "../chunk-7QLSKOSU.js";
|
|
107
108
|
import {
|
|
108
109
|
EXIT
|
|
109
110
|
} from "../chunk-KZERVKTD.js";
|
|
110
|
-
import "../chunk-
|
|
111
|
+
import "../chunk-MIENLS7P.js";
|
|
111
112
|
import {
|
|
112
113
|
canonicalJson
|
|
113
|
-
} from "../chunk-
|
|
114
|
+
} from "../chunk-4GEHVRV3.js";
|
|
114
115
|
import {
|
|
115
116
|
writeFileAtomic
|
|
116
117
|
} from "../chunk-AQFEP65J.js";
|
|
117
118
|
import {
|
|
118
119
|
getApiKey
|
|
119
|
-
} from "../chunk-
|
|
120
|
-
import "../chunk-
|
|
120
|
+
} from "../chunk-D322CKL2.js";
|
|
121
|
+
import "../chunk-MXEDMQLC.js";
|
|
121
122
|
import {
|
|
122
123
|
CODEX_RESCUE_TOOL_NAME,
|
|
123
124
|
DECISION_STOP_REASON,
|
|
@@ -126,10 +127,11 @@ import {
|
|
|
126
127
|
KILL_REASON,
|
|
127
128
|
SCOPE_BATCH_REASON,
|
|
128
129
|
UNVERIFIABLE_APPROVAL_REASON,
|
|
129
|
-
approvalModeWithoutLocalPrompt,
|
|
130
|
-
codexCallNeedsAPerson,
|
|
131
130
|
codexDeferredPreToolUse,
|
|
132
131
|
codexHasNoPromptOfItsOwn,
|
|
132
|
+
codexPreToolUseDelivery,
|
|
133
|
+
codexQuestionAnswerReason,
|
|
134
|
+
codexQuestionGoesToPushary,
|
|
133
135
|
codexStopRescueOutput,
|
|
134
136
|
codexUnansweredPreToolUse,
|
|
135
137
|
denyReasonFrom,
|
|
@@ -138,10 +140,13 @@ import {
|
|
|
138
140
|
hookHoldWindowMs,
|
|
139
141
|
hookWaitClamped,
|
|
140
142
|
hookWaitDeadline,
|
|
143
|
+
isCodexQuestionTool,
|
|
144
|
+
parseCodexQuestions,
|
|
145
|
+
questionHandedToTheTerminal,
|
|
141
146
|
resolveGate,
|
|
142
147
|
scopeBreachReasonOf,
|
|
143
148
|
unapprovedScopeReason
|
|
144
|
-
} from "../chunk-
|
|
149
|
+
} from "../chunk-QOUW57RT.js";
|
|
145
150
|
|
|
146
151
|
// bin/pushary-codex-hook.ts
|
|
147
152
|
import { basename } from "path";
|
|
@@ -564,7 +569,7 @@ var callKeyFor = (input) => codexCallKey({
|
|
|
564
569
|
var START_MS2 = Date.now();
|
|
565
570
|
var agentNameFor = (input) => `Codex - ${basename(input.cwd ?? process.cwd())}`;
|
|
566
571
|
var describeFor = (input, lookup) => input.tool_name === "apply_patch" ? describeApplyPatch(input.tool_input?.command) ?? describeToolCall(lookup.tool, lookup.input, "hook") : describeToolCall(lookup.tool, lookup.input, "hook");
|
|
567
|
-
var pushQuestion = async (apiKey, input, lookup, waitSeconds, mode, scope) => {
|
|
572
|
+
var pushQuestion = async (apiKey, input, lookup, waitSeconds, mode, noLocalSurface, scope) => {
|
|
568
573
|
const projectName = basename(input.cwd ?? process.cwd());
|
|
569
574
|
const description = describeFor(input, lookup);
|
|
570
575
|
const result = await askUser(apiKey, {
|
|
@@ -582,7 +587,7 @@ var pushQuestion = async (apiKey, input, lookup, waitSeconds, mode, scope) => {
|
|
|
582
587
|
actionBody: deriveActionBody(input.tool_name ?? "", input.tool_input ?? {}),
|
|
583
588
|
repoKey: repoKeyFor(input.cwd),
|
|
584
589
|
scopePath: scope?.path,
|
|
585
|
-
...
|
|
590
|
+
...noLocalSurface ? { localSurfaceAvailable: false } : {},
|
|
586
591
|
sessionToolAware: true,
|
|
587
592
|
permissionMode: input.permission_mode,
|
|
588
593
|
// Codex has always sent this; it is what claimNotify and markApproved already
|
|
@@ -660,7 +665,7 @@ var decidePermissionRequest = async (input) => {
|
|
|
660
665
|
}
|
|
661
666
|
const waitSeconds = toolPolicy.mode === "push_first" ? toolPolicy.pushFirstSeconds : effectiveWaitSeconds(toolPolicy.timeoutAction, toolPolicy.timeoutSeconds, "codex");
|
|
662
667
|
const asked = recorded ? { ...input, tool_use_id: recorded.toolUseId } : input;
|
|
663
|
-
const { answer, localHandoff, clampCut, paused } = await pushQuestion(apiKey, asked, lookup, waitSeconds, toolPolicy.mode);
|
|
668
|
+
const { answer, localHandoff, clampCut, paused } = await pushQuestion(apiKey, asked, lookup, waitSeconds, toolPolicy.mode, codexHasNoPromptOfItsOwn(void 0, input.permission_mode));
|
|
664
669
|
if (isDecisionStopped(answer)) return codexDeny(DECISION_STOP_REASON);
|
|
665
670
|
if (localHandoff) return codexPass();
|
|
666
671
|
if (answer.answered) {
|
|
@@ -690,7 +695,6 @@ var scopeQuestionOf = (verdict) => {
|
|
|
690
695
|
const reason = scopeBreachReasonOf(verdict);
|
|
691
696
|
return reason !== void 0 && verdict.kind === "gate" ? { reason, path: verdict.scopePath } : void 0;
|
|
692
697
|
};
|
|
693
|
-
var codexDeliveryMode = (policyMode, noPromptOfItsOwn) => noPromptOfItsOwn ? approvalModeWithoutLocalPrompt(policyMode) : policyMode;
|
|
694
698
|
var unansweredOutcome = (scope, fallback) => scope ? codexDeny(unapprovedScopeReason(scope.reason)) : fallback;
|
|
695
699
|
var codexDecisionOf = (ending) => ending.kind === "deny" ? codexDeny(ending.reason) : codexPass();
|
|
696
700
|
var deferredPreToolUse = (scope) => unansweredOutcome(scope, codexDecisionOf(codexDeferredPreToolUse()));
|
|
@@ -700,6 +704,25 @@ var unansweredPreToolUse = (toolPolicy, fullWindowServed, paused) => codexDecisi
|
|
|
700
704
|
fullWindowServed,
|
|
701
705
|
paused
|
|
702
706
|
}));
|
|
707
|
+
var keyboardOutcome = (deliveryMode, scope, toolPolicy) => deliveryMode === "push_first" ? codexPass() : unansweredOutcome(scope, unansweredPreToolUse(toolPolicy, false, false));
|
|
708
|
+
var codexQuestionDeadline = () => hookWaitDeadline(START_MS2, effectiveWaitSeconds("wait", 0, "codex"), "codex", Date.now());
|
|
709
|
+
var answerCodexQuestion = async (apiKey, input, verdict, modeState) => {
|
|
710
|
+
if (process.env.PUSHARY_CODEX_BRIDGE === "1") return codexPass();
|
|
711
|
+
if (!codexQuestionGoesToPushary(verdict)) return codexPass();
|
|
712
|
+
if (questionHandedToTheTerminal(input.tool_name ?? "", modeState)) return codexPass();
|
|
713
|
+
const questions = parseCodexQuestions(input.tool_name ?? "", input.tool_input ?? {});
|
|
714
|
+
if (!questions) return codexPass();
|
|
715
|
+
const projectName = basename(input.cwd ?? process.cwd());
|
|
716
|
+
const outcome = await askAgentQuestions(apiKey, {
|
|
717
|
+
toolName: input.tool_name ?? "",
|
|
718
|
+
agentName: agentNameFor(input),
|
|
719
|
+
projectName,
|
|
720
|
+
sessionId: input.session_id,
|
|
721
|
+
toolUseId: input.tool_use_id,
|
|
722
|
+
deadline: codexQuestionDeadline()
|
|
723
|
+
}, questions);
|
|
724
|
+
return outcome.kind === "answered" ? codexDeny(codexQuestionAnswerReason(outcome.answers)) : codexPass();
|
|
725
|
+
};
|
|
703
726
|
var decidePreToolUse = async (input) => {
|
|
704
727
|
if (isPusharyOwnTool(input.tool_name)) return codexPass();
|
|
705
728
|
let apiKey;
|
|
@@ -727,6 +750,7 @@ var decidePreToolUse = async (input) => {
|
|
|
727
750
|
return codexDeny(verdict.kind === "kill" ? KILL_REASON : verdict.reason);
|
|
728
751
|
}
|
|
729
752
|
if (verdict.kind === "allow") return codexPass();
|
|
753
|
+
if (isCodexQuestionTool(input.tool_name)) return await answerCodexQuestion(apiKey, input, verdict, gateInput.modeState);
|
|
730
754
|
const scope = scopeQuestionOf(verdict);
|
|
731
755
|
if (!scope && codexApprovalsReviewer(input) === "auto_review") return codexPass();
|
|
732
756
|
if (!scope && defersToNativeMode(input.permission_mode, input.tool_name ?? "")) return codexPass();
|
|
@@ -735,22 +759,23 @@ var decidePreToolUse = async (input) => {
|
|
|
735
759
|
permissionMode: input.permission_mode,
|
|
736
760
|
deletesFiles: patchDeletesFiles(input.tool_name ?? "", input.tool_input ?? {})
|
|
737
761
|
};
|
|
738
|
-
|
|
762
|
+
const delivery = codexPreToolUseDelivery(gateInput, verdict, callFacts);
|
|
763
|
+
if (delivery.kind === "pass") return codexPass();
|
|
739
764
|
const toolPolicy = verdict.policy;
|
|
740
765
|
const callKey = callKeyFor(input);
|
|
741
766
|
if (scope && gateInput.toolInputs.length > 1) return recordPreToolUse(callKey, codexDeny(SCOPE_BATCH_REASON));
|
|
742
|
-
const deliveryMode =
|
|
743
|
-
if (deliveryMode === "push_only") {
|
|
767
|
+
const deliveryMode = delivery.policy.mode;
|
|
768
|
+
if (deliveryMode === "push_only" || deliveryMode === "push_first") {
|
|
744
769
|
let pushed;
|
|
745
770
|
try {
|
|
746
|
-
pushed = await pushQuestion(apiKey, input, lookup, effectiveWaitSeconds(toolPolicy.timeoutAction, toolPolicy.timeoutSeconds, "codex"),
|
|
771
|
+
pushed = await pushQuestion(apiKey, input, lookup, effectiveWaitSeconds(toolPolicy.timeoutAction, toolPolicy.timeoutSeconds, "codex"), deliveryMode, codexHasNoPromptOfItsOwn(scope?.reason, input.permission_mode), scope);
|
|
747
772
|
} catch (error) {
|
|
748
773
|
if (error instanceof SubscriptionRequiredError) return recordPreToolUse(callKey, codexStepsAside(error, input));
|
|
749
774
|
return recordPreToolUse(callKey, codexDeny(UNVERIFIABLE_APPROVAL_REASON));
|
|
750
775
|
}
|
|
751
776
|
const { answer, localHandoff, clampCut, paused } = pushed;
|
|
752
777
|
if (isDecisionStopped(answer)) return codexDeny(DECISION_STOP_REASON);
|
|
753
|
-
if (localHandoff) return recordPreToolUse(callKey,
|
|
778
|
+
if (localHandoff) return recordPreToolUse(callKey, keyboardOutcome(deliveryMode, scope, toolPolicy));
|
|
754
779
|
if (answer.answered) {
|
|
755
780
|
if (isDeferAnswer(answer.value)) return recordPreToolUse(callKey, deferredPreToolUse(scope));
|
|
756
781
|
if (answer.value === "yes") return recordApproval(callKey, input);
|
|
@@ -770,7 +795,7 @@ var decidePreToolUse = async (input) => {
|
|
|
770
795
|
};
|
|
771
796
|
var repairCodexHoldsQuietly = async () => {
|
|
772
797
|
try {
|
|
773
|
-
const { repairCodexHolds } = await import("../reapply-
|
|
798
|
+
const { repairCodexHolds } = await import("../reapply-WY5LHIR4.js");
|
|
774
799
|
repairCodexHolds();
|
|
775
800
|
} catch {
|
|
776
801
|
return;
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
reportEvent
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-L5WOYQT7.js";
|
|
5
|
+
import "../chunk-IBUAVM6X.js";
|
|
6
6
|
import {
|
|
7
7
|
askUser,
|
|
8
8
|
isDecisionStopped,
|
|
9
9
|
waitForAnswer
|
|
10
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-7O5U5TED.js";
|
|
11
11
|
import "../chunk-POFBE6ZY.js";
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
12
|
+
import "../chunk-ABDGTGBT.js";
|
|
13
|
+
import "../chunk-OLS4DTFN.js";
|
|
14
|
+
import "../chunk-BMHD2NEH.js";
|
|
15
15
|
import {
|
|
16
16
|
getMachineId
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-3HUHP4A4.js";
|
|
18
18
|
import "../chunk-7QLSKOSU.js";
|
|
19
19
|
import "../chunk-KZERVKTD.js";
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-
|
|
20
|
+
import "../chunk-MIENLS7P.js";
|
|
21
|
+
import "../chunk-4GEHVRV3.js";
|
|
22
22
|
import "../chunk-AQFEP65J.js";
|
|
23
23
|
import {
|
|
24
24
|
getApiKey
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-D322CKL2.js";
|
|
26
26
|
import {
|
|
27
27
|
NPX_LATEST_COMMAND
|
|
28
|
-
} from "../chunk-
|
|
29
|
-
import "../chunk-
|
|
28
|
+
} from "../chunk-MXEDMQLC.js";
|
|
29
|
+
import "../chunk-QOUW57RT.js";
|
|
30
30
|
|
|
31
31
|
// bin/pushary-codex.ts
|
|
32
32
|
import { basename } from "path";
|
|
@@ -3,61 +3,61 @@ import {
|
|
|
3
3
|
connectDevice,
|
|
4
4
|
connectExistingApp,
|
|
5
5
|
printConnectInstructions
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-STXWIYAY.js";
|
|
7
7
|
import "../chunk-3EGEA4KH.js";
|
|
8
8
|
import "../chunk-QCGNGEGE.js";
|
|
9
9
|
import {
|
|
10
10
|
printKeyCheck
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-K2CZJBUS.js";
|
|
12
12
|
import {
|
|
13
13
|
CONNECTED_THROUGH_MAC_APP,
|
|
14
14
|
PAIR_FROM_MAC_APP,
|
|
15
15
|
readMacAppConnection
|
|
16
|
-
} from "../chunk-
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-
|
|
16
|
+
} from "../chunk-5KVL4AP5.js";
|
|
17
|
+
import "../chunk-D2G6HWEA.js";
|
|
18
|
+
import "../chunk-J2APHNZL.js";
|
|
19
19
|
import {
|
|
20
20
|
createIo
|
|
21
21
|
} from "../chunk-FO3MDD26.js";
|
|
22
22
|
import {
|
|
23
23
|
exitOnHelpFlag
|
|
24
|
-
} from "../chunk-
|
|
25
|
-
import "../chunk-
|
|
26
|
-
import "../chunk-
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
24
|
+
} from "../chunk-7P43CI6G.js";
|
|
25
|
+
import "../chunk-7GSOIBVM.js";
|
|
26
|
+
import "../chunk-ZFJAZBBF.js";
|
|
27
|
+
import "../chunk-GBNG6QEV.js";
|
|
28
|
+
import "../chunk-FZEQWY7Q.js";
|
|
29
|
+
import "../chunk-JVKY6ILU.js";
|
|
30
30
|
import {
|
|
31
31
|
parseFlags
|
|
32
32
|
} from "../chunk-GMXKITVA.js";
|
|
33
33
|
import "../chunk-6ICPEJY5.js";
|
|
34
34
|
import {
|
|
35
35
|
readKeySource
|
|
36
|
-
} from "../chunk-
|
|
37
|
-
import "../chunk-
|
|
38
|
-
import "../chunk-
|
|
39
|
-
import "../chunk-
|
|
36
|
+
} from "../chunk-JWMCGL3P.js";
|
|
37
|
+
import "../chunk-L5WOYQT7.js";
|
|
38
|
+
import "../chunk-IBUAVM6X.js";
|
|
39
|
+
import "../chunk-7O5U5TED.js";
|
|
40
40
|
import "../chunk-POFBE6ZY.js";
|
|
41
|
-
import "../chunk-
|
|
41
|
+
import "../chunk-ABDGTGBT.js";
|
|
42
42
|
import {
|
|
43
43
|
checkApiKey
|
|
44
|
-
} from "../chunk-
|
|
45
|
-
import "../chunk-
|
|
46
|
-
import "../chunk-
|
|
44
|
+
} from "../chunk-OLS4DTFN.js";
|
|
45
|
+
import "../chunk-BMHD2NEH.js";
|
|
46
|
+
import "../chunk-3HUHP4A4.js";
|
|
47
47
|
import {
|
|
48
48
|
UsageError
|
|
49
49
|
} from "../chunk-7QLSKOSU.js";
|
|
50
50
|
import {
|
|
51
51
|
EXIT
|
|
52
52
|
} from "../chunk-KZERVKTD.js";
|
|
53
|
-
import "../chunk-
|
|
54
|
-
import "../chunk-
|
|
53
|
+
import "../chunk-MIENLS7P.js";
|
|
54
|
+
import "../chunk-4GEHVRV3.js";
|
|
55
55
|
import "../chunk-AQFEP65J.js";
|
|
56
|
-
import "../chunk-
|
|
56
|
+
import "../chunk-D322CKL2.js";
|
|
57
57
|
import {
|
|
58
58
|
isInvocationOf
|
|
59
|
-
} from "../chunk-
|
|
60
|
-
import "../chunk-
|
|
59
|
+
} from "../chunk-MXEDMQLC.js";
|
|
60
|
+
import "../chunk-QOUW57RT.js";
|
|
61
61
|
|
|
62
62
|
// bin/pushary-connect.ts
|
|
63
63
|
exitOnHelpFlag("pair");
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
import {
|
|
3
3
|
coworkOutput,
|
|
4
4
|
parseCoworkOptions
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-CW3IJD2H.js";
|
|
6
6
|
import {
|
|
7
7
|
canOpenBrowser,
|
|
8
8
|
openInBrowser
|
|
9
9
|
} from "../chunk-PUZZELE6.js";
|
|
10
10
|
import {
|
|
11
11
|
exitOnHelpFlag
|
|
12
|
-
} from "../chunk-
|
|
13
|
-
import "../chunk-
|
|
12
|
+
} from "../chunk-7P43CI6G.js";
|
|
13
|
+
import "../chunk-FZEQWY7Q.js";
|
|
14
14
|
import "../chunk-GMXKITVA.js";
|
|
15
15
|
import {
|
|
16
16
|
UsageError
|
|
@@ -18,10 +18,10 @@ import {
|
|
|
18
18
|
import {
|
|
19
19
|
EXIT
|
|
20
20
|
} from "../chunk-KZERVKTD.js";
|
|
21
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-MXEDMQLC.js";
|
|
22
22
|
import {
|
|
23
23
|
CLAUDE_CONNECTOR_GUIDE
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-QOUW57RT.js";
|
|
25
25
|
|
|
26
26
|
// bin/pushary-cowork.ts
|
|
27
27
|
exitOnHelpFlag("cowork");
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
inspectConfiguredManagedProviders
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-TEG2JL5M.js";
|
|
5
|
+
import "../chunk-RULJMNY7.js";
|
|
6
6
|
import {
|
|
7
7
|
HEARTBEAT_INTERVAL_MS,
|
|
8
8
|
sendHeartbeat
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-KBMQYMGG.js";
|
|
10
10
|
import {
|
|
11
11
|
codexBinaryIsBroken,
|
|
12
12
|
detectProviderLiveCapabilities,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
launchableProviders,
|
|
16
16
|
resolveControlPolicy,
|
|
17
17
|
trackProviderInventory
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-MBTNHQCI.js";
|
|
19
19
|
import "../chunk-RIVNNBEK.js";
|
|
20
20
|
import {
|
|
21
21
|
SESSION_REAP_SILENCE_MS,
|
|
@@ -24,13 +24,13 @@ import {
|
|
|
24
24
|
listProcessProofs,
|
|
25
25
|
ownsLiveProcess,
|
|
26
26
|
silentSpawnedProofs
|
|
27
|
-
} from "../chunk-
|
|
27
|
+
} from "../chunk-DDRLK67P.js";
|
|
28
28
|
import {
|
|
29
29
|
readLocalAutoUpdateReport
|
|
30
|
-
} from "../chunk-
|
|
30
|
+
} from "../chunk-D5IAEPFA.js";
|
|
31
31
|
import {
|
|
32
32
|
startRegisteredTranscripts
|
|
33
|
-
} from "../chunk-
|
|
33
|
+
} from "../chunk-PA3OZGIA.js";
|
|
34
34
|
import "../chunk-DWQYCOPI.js";
|
|
35
35
|
import {
|
|
36
36
|
DAEMON_LEASE_RENEW_INTERVAL_MS,
|
|
@@ -48,10 +48,10 @@ import {
|
|
|
48
48
|
requestDaemonHandoff,
|
|
49
49
|
stopDaemonRunning,
|
|
50
50
|
writeDaemonNeedsLogin
|
|
51
|
-
} from "../chunk-
|
|
52
|
-
import "../chunk-
|
|
53
|
-
import "../chunk-
|
|
54
|
-
import "../chunk-
|
|
51
|
+
} from "../chunk-AJIH4JGB.js";
|
|
52
|
+
import "../chunk-4D54LZGF.js";
|
|
53
|
+
import "../chunk-WR3GKYKD.js";
|
|
54
|
+
import "../chunk-QC7ZNZMZ.js";
|
|
55
55
|
import {
|
|
56
56
|
spawnClaude
|
|
57
57
|
} from "../chunk-XHKBHWLX.js";
|
|
@@ -60,46 +60,46 @@ import {
|
|
|
60
60
|
} from "../chunk-QCGNGEGE.js";
|
|
61
61
|
import {
|
|
62
62
|
readSignedOutDiagnosis
|
|
63
|
-
} from "../chunk-
|
|
64
|
-
import "../chunk-
|
|
63
|
+
} from "../chunk-D2G6HWEA.js";
|
|
64
|
+
import "../chunk-J2APHNZL.js";
|
|
65
65
|
import {
|
|
66
66
|
exitOnHelpFlag
|
|
67
|
-
} from "../chunk-
|
|
68
|
-
import "../chunk-
|
|
69
|
-
import "../chunk-
|
|
70
|
-
import "../chunk-
|
|
71
|
-
import "../chunk-
|
|
72
|
-
import "../chunk-
|
|
67
|
+
} from "../chunk-7P43CI6G.js";
|
|
68
|
+
import "../chunk-7GSOIBVM.js";
|
|
69
|
+
import "../chunk-ZFJAZBBF.js";
|
|
70
|
+
import "../chunk-GBNG6QEV.js";
|
|
71
|
+
import "../chunk-FZEQWY7Q.js";
|
|
72
|
+
import "../chunk-JVKY6ILU.js";
|
|
73
73
|
import "../chunk-GMXKITVA.js";
|
|
74
74
|
import "../chunk-6ICPEJY5.js";
|
|
75
75
|
import {
|
|
76
76
|
readControlMode
|
|
77
|
-
} from "../chunk-
|
|
78
|
-
import "../chunk-
|
|
79
|
-
import "../chunk-
|
|
80
|
-
import "../chunk-
|
|
77
|
+
} from "../chunk-JWMCGL3P.js";
|
|
78
|
+
import "../chunk-L5WOYQT7.js";
|
|
79
|
+
import "../chunk-IBUAVM6X.js";
|
|
80
|
+
import "../chunk-7O5U5TED.js";
|
|
81
81
|
import "../chunk-POFBE6ZY.js";
|
|
82
|
-
import "../chunk-
|
|
83
|
-
import "../chunk-
|
|
84
|
-
import "../chunk-
|
|
82
|
+
import "../chunk-ABDGTGBT.js";
|
|
83
|
+
import "../chunk-OLS4DTFN.js";
|
|
84
|
+
import "../chunk-BMHD2NEH.js";
|
|
85
85
|
import {
|
|
86
86
|
getMachineId
|
|
87
|
-
} from "../chunk-
|
|
87
|
+
} from "../chunk-3HUHP4A4.js";
|
|
88
88
|
import "../chunk-7QLSKOSU.js";
|
|
89
89
|
import {
|
|
90
90
|
EXIT
|
|
91
91
|
} from "../chunk-KZERVKTD.js";
|
|
92
|
-
import "../chunk-
|
|
92
|
+
import "../chunk-MIENLS7P.js";
|
|
93
93
|
import {
|
|
94
94
|
resolveBinary
|
|
95
|
-
} from "../chunk-
|
|
95
|
+
} from "../chunk-4GEHVRV3.js";
|
|
96
96
|
import "../chunk-AQFEP65J.js";
|
|
97
97
|
import {
|
|
98
98
|
getApiKey,
|
|
99
99
|
getBaseUrl
|
|
100
|
-
} from "../chunk-
|
|
101
|
-
import "../chunk-
|
|
102
|
-
import "../chunk-
|
|
100
|
+
} from "../chunk-D322CKL2.js";
|
|
101
|
+
import "../chunk-MXEDMQLC.js";
|
|
102
|
+
import "../chunk-QOUW57RT.js";
|
|
103
103
|
|
|
104
104
|
// src/spawn-daemon.ts
|
|
105
105
|
import { execFileSync, spawn } from "child_process";
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
import {
|
|
3
3
|
declinedAgentsFile,
|
|
4
4
|
recordDeclinedAgent
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-RISJLN3O.js";
|
|
6
6
|
import {
|
|
7
7
|
isCursorPluginLeftover,
|
|
8
8
|
isPusharyCursorPluginManifest,
|
|
9
9
|
releaseSoleGate
|
|
10
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-WASCAI2U.js";
|
|
11
11
|
import {
|
|
12
12
|
planFxRemoval,
|
|
13
13
|
removeInstructionBlock
|
|
14
|
-
} from "../chunk-
|
|
15
|
-
import "../chunk-
|
|
14
|
+
} from "../chunk-LZZ3EKKI.js";
|
|
15
|
+
import "../chunk-VITJTFFT.js";
|
|
16
16
|
import {
|
|
17
17
|
OPENCODE_PLUGIN_SIBLING,
|
|
18
18
|
OPENCODE_PLUGIN_SIBLING_CONTENTS,
|
|
@@ -24,10 +24,10 @@ import {
|
|
|
24
24
|
openCodePluginDir,
|
|
25
25
|
openCodePluginFile,
|
|
26
26
|
removeOpenCodeMcpServer
|
|
27
|
-
} from "../chunk-
|
|
27
|
+
} from "../chunk-J2APHNZL.js";
|
|
28
28
|
import {
|
|
29
29
|
exitOnHelpFlag
|
|
30
|
-
} from "../chunk-
|
|
30
|
+
} from "../chunk-7P43CI6G.js";
|
|
31
31
|
import {
|
|
32
32
|
compatibleConfigFile,
|
|
33
33
|
compatibleDocuments,
|
|
@@ -41,29 +41,29 @@ import {
|
|
|
41
41
|
removePusharySettings,
|
|
42
42
|
removePusharyToolPermissions,
|
|
43
43
|
restoreClaudeMcpServer
|
|
44
|
-
} from "../chunk-
|
|
45
|
-
import "../chunk-
|
|
44
|
+
} from "../chunk-7GSOIBVM.js";
|
|
45
|
+
import "../chunk-ZFJAZBBF.js";
|
|
46
46
|
import {
|
|
47
47
|
removeGeminiSettings
|
|
48
|
-
} from "../chunk-
|
|
49
|
-
import "../chunk-
|
|
50
|
-
import "../chunk-
|
|
48
|
+
} from "../chunk-GBNG6QEV.js";
|
|
49
|
+
import "../chunk-FZEQWY7Q.js";
|
|
50
|
+
import "../chunk-JVKY6ILU.js";
|
|
51
51
|
import "../chunk-GMXKITVA.js";
|
|
52
52
|
import "../chunk-6ICPEJY5.js";
|
|
53
|
-
import "../chunk-
|
|
54
|
-
import "../chunk-
|
|
55
|
-
import "../chunk-
|
|
56
|
-
import "../chunk-
|
|
53
|
+
import "../chunk-JWMCGL3P.js";
|
|
54
|
+
import "../chunk-L5WOYQT7.js";
|
|
55
|
+
import "../chunk-IBUAVM6X.js";
|
|
56
|
+
import "../chunk-7O5U5TED.js";
|
|
57
57
|
import "../chunk-POFBE6ZY.js";
|
|
58
|
-
import "../chunk-
|
|
59
|
-
import "../chunk-
|
|
60
|
-
import "../chunk-
|
|
61
|
-
import "../chunk-
|
|
58
|
+
import "../chunk-ABDGTGBT.js";
|
|
59
|
+
import "../chunk-OLS4DTFN.js";
|
|
60
|
+
import "../chunk-BMHD2NEH.js";
|
|
61
|
+
import "../chunk-3HUHP4A4.js";
|
|
62
62
|
import "../chunk-7QLSKOSU.js";
|
|
63
63
|
import {
|
|
64
64
|
EXIT
|
|
65
65
|
} from "../chunk-KZERVKTD.js";
|
|
66
|
-
import "../chunk-
|
|
66
|
+
import "../chunk-MIENLS7P.js";
|
|
67
67
|
import {
|
|
68
68
|
claudeJson,
|
|
69
69
|
claudeMcpReceipt,
|
|
@@ -85,20 +85,20 @@ import {
|
|
|
85
85
|
geminiSettings,
|
|
86
86
|
removeCodexHooks,
|
|
87
87
|
removeCodexSettings
|
|
88
|
-
} from "../chunk-
|
|
88
|
+
} from "../chunk-4GEHVRV3.js";
|
|
89
89
|
import {
|
|
90
90
|
readFileOrMissing
|
|
91
91
|
} from "../chunk-AQFEP65J.js";
|
|
92
|
-
import "../chunk-
|
|
92
|
+
import "../chunk-D322CKL2.js";
|
|
93
93
|
import {
|
|
94
94
|
isInvocationOf
|
|
95
|
-
} from "../chunk-
|
|
95
|
+
} from "../chunk-MXEDMQLC.js";
|
|
96
96
|
import {
|
|
97
97
|
DISCONNECTABLE_AGENTS,
|
|
98
98
|
DISCONNECT_AGENT_IDS,
|
|
99
99
|
hookCompatibleProfileBySource,
|
|
100
100
|
normalizeAgentId
|
|
101
|
-
} from "../chunk-
|
|
101
|
+
} from "../chunk-QOUW57RT.js";
|
|
102
102
|
|
|
103
103
|
// bin/pushary-disconnect.ts
|
|
104
104
|
import { readdirSync, rmSync, writeFileSync } from "fs";
|