pushary 1.9.59 → 1.9.60
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/cursor-plugin/.cursor-plugin/plugin.json +5 -1
- package/data/cursor-plugin/CHANGELOG.md +4 -0
- package/dist/{api-UVJGNZIF.js → api-ASQA5PZM.js} +11 -11
- package/dist/bin/pushary-bell-hook.js +29 -29
- package/dist/bin/pushary-bell.js +12 -12
- package/dist/bin/pushary-claude.js +31 -30
- package/dist/bin/pushary-clean.js +58 -53
- package/dist/bin/pushary-codex-bridge.js +22 -22
- package/dist/bin/pushary-codex-hook.js +34 -34
- package/dist/bin/pushary-codex-session.js +8 -8
- package/dist/bin/pushary-codex.js +15 -15
- package/dist/bin/pushary-connect.js +29 -29
- package/dist/bin/pushary-cowork.js +7 -7
- package/dist/bin/pushary-daemon.js +39 -39
- package/dist/bin/pushary-disconnect.js +42 -29
- package/dist/bin/pushary-doctor.js +51 -47
- package/dist/bin/pushary-elicitation-hook.js +29 -29
- package/dist/bin/pushary-gemini-bridge.js +15 -15
- package/dist/bin/pushary-gemini-hook.js +31 -31
- package/dist/bin/pushary-hook.js +33 -33
- package/dist/bin/pushary-login.js +22 -19
- package/dist/bin/pushary-logout.js +36 -31
- package/dist/bin/pushary-mcp.js +12 -12
- package/dist/bin/pushary-mode.js +41 -55
- package/dist/bin/pushary-notification-hook.js +28 -28
- package/dist/bin/pushary-opencode-hook.js +30 -30
- package/dist/bin/pushary-permission-denied-hook.js +33 -33
- package/dist/bin/pushary-permission-hook.js +32 -32
- 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 +35 -35
- package/dist/bin/pushary-setup.js +49 -46
- package/dist/bin/pushary-stats.js +5 -5
- package/dist/bin/pushary-status.js +41 -36
- package/dist/bin/pushary-stop-hook.js +28 -28
- package/dist/bin/pushary-stopfailure-hook.js +28 -28
- package/dist/bin/pushary-suggestions.js +33 -39
- package/dist/bin/pushary-transcript-register.js +20 -20
- package/dist/bin/pushary-transcripts.js +33 -20
- package/dist/bin/pushary-upgrade.js +71 -50
- package/dist/bin/pushary-wait.js +36 -42
- package/dist/bin/pushary.js +8 -8
- package/dist/{chunk-PVANKDWM.js → chunk-2AELPDMT.js} +1 -1
- package/dist/{chunk-US3IT6ZC.js → chunk-2QREHU4O.js} +11 -4
- package/dist/{chunk-W47WL6JY.js → chunk-33OOEVPG.js} +1 -1
- package/dist/{chunk-AS4Z6KS4.js → chunk-4MUFZU2G.js} +1 -1
- package/dist/{chunk-JAKBCKEB.js → chunk-4MWRR5IT.js} +8 -7
- package/dist/{chunk-TCH5UCPR.js → chunk-4PZXI7WU.js} +2 -2
- package/dist/{chunk-IBXHVYN2.js → chunk-56JCQQLS.js} +2 -2
- package/dist/{chunk-5BNXJTOZ.js → chunk-5RU35K57.js} +3 -12
- package/dist/{chunk-T65RIQK2.js → chunk-625DZLT5.js} +6 -6
- package/dist/{chunk-5PP4455M.js → chunk-6LOQE4J4.js} +3 -3
- package/dist/{chunk-KQHY6L3X.js → chunk-6MC2XXFD.js} +4 -4
- package/dist/{chunk-KZCYHWDF.js → chunk-6MJWYYAS.js} +62 -49
- package/dist/chunk-7BHI3PZN.js +41 -0
- package/dist/{chunk-D6CXQIXO.js → chunk-7JXJJNQ5.js} +1 -1
- package/dist/{chunk-MSU3VKGJ.js → chunk-7WFRY6OL.js} +2 -2
- package/dist/{chunk-AY32RSUC.js → chunk-ADR3KHOC.js} +2 -2
- package/dist/{chunk-MMLIQDTG.js → chunk-ATKN4BJT.js} +1 -1
- package/dist/{chunk-762CDAJJ.js → chunk-AXJLJJ3M.js} +7 -0
- package/dist/{chunk-4XXZUFWN.js → chunk-BG4Y64FW.js} +1 -1
- package/dist/{chunk-X4ES7QBT.js → chunk-CDQHQAS7.js} +9 -7
- package/dist/{chunk-2WMZDKPM.js → chunk-CEQ2AZH4.js} +13 -13
- package/dist/{chunk-DK35M4TH.js → chunk-CSOROFJY.js} +5 -5
- package/dist/{chunk-2FVP7WRP.js → chunk-DJ7EZIQA.js} +3 -3
- package/dist/{chunk-V3PDUDPB.js → chunk-ELLJPP6O.js} +2 -2
- package/dist/{chunk-BMPZ5HVJ.js → chunk-ERK24P76.js} +11 -1
- package/dist/{chunk-WW24SG27.js → chunk-EZHY65QA.js} +21 -11
- package/dist/{chunk-3NROUNIS.js → chunk-FDWMG6NY.js} +2 -2
- package/dist/{chunk-RQDP2SJY.js → chunk-FUZ5VYWD.js} +1 -1
- package/dist/{chunk-3N2ZTHZZ.js → chunk-GAMVAORR.js} +1 -1
- package/dist/{chunk-4QF2YLYK.js → chunk-HC3FHDKB.js} +6 -6
- package/dist/{chunk-TDOKDCFH.js → chunk-IF26ZGZ7.js} +3 -3
- package/dist/{chunk-KHDD74MK.js → chunk-J4KQL7YZ.js} +5 -5
- package/dist/{chunk-UVZK5LIK.js → chunk-K4MBKXAE.js} +1 -1
- package/dist/{chunk-5O6D4J2K.js → chunk-L3AFVFGQ.js} +2 -2
- package/dist/{chunk-MA37WNVS.js → chunk-METMK3L4.js} +4 -4
- package/dist/{chunk-SIU6OWA6.js → chunk-MUNL23WE.js} +6 -6
- package/dist/{chunk-WWAVHLGS.js → chunk-NKLNU577.js} +5 -5
- package/dist/{chunk-GMXKITVA.js → chunk-NMUI3ZWG.js} +1 -1
- package/dist/{chunk-M46WDK64.js → chunk-O6IUZGWV.js} +1 -1
- package/dist/chunk-PPY5N2E6.js +58 -0
- package/dist/{chunk-KQWN7C5C.js → chunk-PUHP4IBA.js} +4 -4
- package/dist/{chunk-JBCMXSBO.js → chunk-QGSHV3WO.js} +5 -5
- package/dist/{chunk-VAJHDTJX.js → chunk-QLMOU57V.js} +28 -17
- package/dist/{chunk-UFJS4RR7.js → chunk-QUBIEZXC.js} +3 -3
- package/dist/{chunk-EBQTWH5O.js → chunk-RLVJ6TVL.js} +23 -23
- package/dist/{chunk-LAEW5QQD.js → chunk-RPPXQNIA.js} +1 -1
- package/dist/{chunk-YQVKG5MC.js → chunk-S54C6TQC.js} +7 -6
- package/dist/{chunk-5EFNBL6V.js → chunk-SEILUNWB.js} +3 -3
- package/dist/{chunk-L3NVHPBU.js → chunk-SOCJ2N3E.js} +6 -6
- package/dist/{chunk-RAMQBSVZ.js → chunk-SVQWHV65.js} +1 -1
- package/dist/{chunk-EHCIQA5D.js → chunk-U7NR4JVD.js} +4 -4
- package/dist/{chunk-M6MOQBR5.js → chunk-USE5IEEW.js} +1 -1
- package/dist/{chunk-UTJ5465F.js → chunk-V57XLKZL.js} +2 -2
- package/dist/{chunk-BRUHVTFB.js → chunk-VIJIG5YL.js} +2 -2
- package/dist/{chunk-5JWCWALO.js → chunk-W2IVTHIG.js} +9 -9
- package/dist/{chunk-OZIXBN3O.js → chunk-WFSGCFXQ.js} +2 -2
- package/dist/{chunk-KAJDKYUM.js → chunk-WN3RACVD.js} +3 -3
- package/dist/{chunk-MYU5D5VH.js → chunk-WXPVVXBU.js} +4 -4
- package/dist/{chunk-6ONSTCDJ.js → chunk-WXZHQ3TT.js} +5 -5
- package/dist/chunk-X3YKQJCZ.js +36 -0
- package/dist/{chunk-BKVX53QR.js → chunk-XEJOPVCG.js} +1 -1
- package/dist/{chunk-75UYYIFJ.js → chunk-XV6S5PWW.js} +3 -3
- package/dist/{chunk-CPRA7IEK.js → chunk-Y5V4PA2Z.js} +2 -2
- package/dist/{chunk-3RKIJM26.js → chunk-Y5VKZNFN.js} +2 -2
- package/dist/{chunk-DS7X36Z3.js → chunk-YGE6ML3O.js} +4 -4
- package/dist/{chunk-XGP5VSQG.js → chunk-YPD3MTFU.js} +1 -1
- package/dist/{chunk-KW3DED2A.js → chunk-ZGOJLNKS.js} +4 -4
- package/dist/{codex-app-cards-switch-N77RWKCO.js → codex-app-cards-switch-ZO76D2NY.js} +11 -11
- package/dist/{codex-desktop-launch-KIX7OMTL.js → codex-desktop-launch-MJT5E3O3.js} +1 -1
- package/dist/{codex-session-launch-XV7SIIWP.js → codex-session-launch-PTFCVIC7.js} +19 -19
- package/dist/{config-HH4DYYNX.js → config-SXV6XNVU.js} +3 -3
- package/dist/{global-upgrade-YWIVJIUR.js → global-upgrade-ETDP32LO.js} +9 -9
- package/dist/{identity-4J7Y2MW3.js → identity-OOLIOSMR.js} +4 -4
- package/dist/{live-capabilities-LHZBCI5U.js → live-capabilities-2XIFA7YO.js} +4 -4
- package/dist/{paths-ES3V7BWQ.js → paths-IIOQZESZ.js} +3 -3
- package/dist/{reapply-KA5SIYWX.js → reapply-KFAJSKOQ.js} +28 -28
- package/dist/src/index.js +22 -22
- package/dist/{upgrade-lock-TJPKU5HL.js → upgrade-lock-T6ILR644.js} +4 -4
- package/dist/{usage-7ALXBJVJ.js → usage-6TN7FVWS.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-7QLSKOSU.js +0 -19
- package/dist/chunk-EO23EUOK.js +0 -14
|
@@ -6,38 +6,39 @@ import {
|
|
|
6
6
|
} from "./chunk-QW3FRUFB.js";
|
|
7
7
|
import {
|
|
8
8
|
ensureDaemonRunning
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-HC3FHDKB.js";
|
|
10
10
|
import {
|
|
11
11
|
hookOwnerOf
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-CDQHQAS7.js";
|
|
13
13
|
import {
|
|
14
14
|
buildTranscriptRecords,
|
|
15
15
|
decodePublicKey,
|
|
16
16
|
generateSessionKey,
|
|
17
17
|
wrapSessionKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2AELPDMT.js";
|
|
19
19
|
import {
|
|
20
20
|
fetchTranscriptRecipients,
|
|
21
21
|
uploadTranscriptRecords
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-GAMVAORR.js";
|
|
23
23
|
import {
|
|
24
24
|
transcriptEnvironmentPreference,
|
|
25
25
|
transcriptsEnabled
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-7JXJJNQ5.js";
|
|
27
27
|
import {
|
|
28
28
|
readTranscriptPreference
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-WN3RACVD.js";
|
|
30
30
|
import {
|
|
31
|
+
claudeConfigDir,
|
|
31
32
|
codexHome,
|
|
32
33
|
pusharyDir
|
|
33
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-6MJWYYAS.js";
|
|
34
35
|
import {
|
|
35
36
|
writeJsonAtomic
|
|
36
37
|
} from "./chunk-QENTGE75.js";
|
|
37
38
|
import {
|
|
38
39
|
getApiKey,
|
|
39
40
|
getBaseUrl
|
|
40
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-BG4Y64FW.js";
|
|
41
42
|
|
|
42
43
|
// src/transcript-registration.ts
|
|
43
44
|
import { createHash } from "crypto";
|
|
@@ -92,7 +93,6 @@ var transcriptLinesSeenLive = (lines, epochStartedAtMs, startedBeforeEpoch) => l
|
|
|
92
93
|
});
|
|
93
94
|
|
|
94
95
|
// src/transcript-sync.ts
|
|
95
|
-
import { homedir as homedir2 } from "os";
|
|
96
96
|
import { join as join2, resolve } from "path";
|
|
97
97
|
import { closeSync, existsSync as existsSync2, fstatSync, openSync, readFileSync as readFileSync2, readSync, statSync as statSync2 } from "fs";
|
|
98
98
|
|
|
@@ -165,7 +165,7 @@ var sweepStaleSessionKeys = (now = Date.now(), dir = sessionDir()) => {
|
|
|
165
165
|
// src/transcript-sync.ts
|
|
166
166
|
var claudeTranscriptPath = (cwd, sessionId) => {
|
|
167
167
|
const projectId = resolve(cwd).replace(/[^a-zA-Z0-9-]/g, "-");
|
|
168
|
-
const configDir =
|
|
168
|
+
const configDir = claudeConfigDir();
|
|
169
169
|
return join2(configDir, "projects", projectId, `${sessionId}.jsonl`);
|
|
170
170
|
};
|
|
171
171
|
var createSyncState = () => ({
|
|
@@ -446,7 +446,7 @@ var startTranscriptSync = (opts) => {
|
|
|
446
446
|
};
|
|
447
447
|
|
|
448
448
|
// src/transcript-registration.ts
|
|
449
|
-
import { homedir as
|
|
449
|
+
import { homedir as homedir2 } from "os";
|
|
450
450
|
var defaultRegistryDirectory = () => process.env.PUSHARY_TRANSCRIPT_REGISTRY_DIR || join3(pusharyDir(), "transcript-capture");
|
|
451
451
|
var cliRegistry = (apiKey = getApiKey()) => ({ apiKey, baseUrl: getBaseUrl(), directory: defaultRegistryDirectory() });
|
|
452
452
|
var accountFor = (registry) => createHash("sha256").update(`${registry.baseUrl}\0${registry.apiKey}`).digest("hex");
|
|
@@ -466,7 +466,7 @@ var registeredTranscriptEnabled = (apiKey, sessionId) => {
|
|
|
466
466
|
}
|
|
467
467
|
};
|
|
468
468
|
var macOwnsClaudeHooks = (cwd) => [
|
|
469
|
-
join3(
|
|
469
|
+
join3(claudeConfigDir(), "settings.json"),
|
|
470
470
|
join3(cwd, ".claude", "settings.json"),
|
|
471
471
|
join3(cwd, ".claude", "settings.local.json")
|
|
472
472
|
].some((path) => {
|
|
@@ -478,7 +478,7 @@ var macOwnsClaudeHooks = (cwd) => [
|
|
|
478
478
|
});
|
|
479
479
|
var TRANSCRIPT_ROOT_NAME = { claude: "projects", codex: "sessions" };
|
|
480
480
|
var transcriptRoots = (source) => {
|
|
481
|
-
const home =
|
|
481
|
+
const home = homedir2();
|
|
482
482
|
if (source === "codex") return [join3(codexHome(), TRANSCRIPT_ROOT_NAME.codex)];
|
|
483
483
|
const configured = process.env.CLAUDE_CONFIG_DIR;
|
|
484
484
|
return [join3(configured || join3(home, ".claude"), TRANSCRIPT_ROOT_NAME.claude), join3(home, ".claude", TRANSCRIPT_ROOT_NAME.claude)];
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
APPROVAL_SETTINGS_PATH
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YGE6ML3O.js";
|
|
4
4
|
import {
|
|
5
5
|
readMacAppAgentKey
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-U7NR4JVD.js";
|
|
7
7
|
import {
|
|
8
8
|
findExportedKeyLines,
|
|
9
9
|
isAdoptedMacAppKey,
|
|
@@ -13,13 +13,13 @@ import {
|
|
|
13
13
|
readConfigFileKey,
|
|
14
14
|
readKeySource,
|
|
15
15
|
readMacAppKeyPrefix
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-WN3RACVD.js";
|
|
17
17
|
import {
|
|
18
18
|
absoluteUrl
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-METMK3L4.js";
|
|
20
20
|
import {
|
|
21
21
|
isValidApiKey
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
23
23
|
|
|
24
24
|
// src/key-revocation.ts
|
|
25
25
|
var SELF_REVOKE_PATH = "/api/v1/server/keys/self/revoke";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
callMcpTool
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-SEILUNWB.js";
|
|
4
4
|
import {
|
|
5
5
|
NPX_LATEST_COMMAND
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ERK24P76.js";
|
|
7
7
|
import {
|
|
8
8
|
classifyConfirmResponse,
|
|
9
9
|
isAnswerSource
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
11
11
|
|
|
12
12
|
// src/reach.ts
|
|
13
13
|
var reachVerdict = (channels) => {
|
|
@@ -3,11 +3,11 @@ import {
|
|
|
3
3
|
decodePublicKey,
|
|
4
4
|
generateSessionKey,
|
|
5
5
|
wrapSessionKey
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2AELPDMT.js";
|
|
7
7
|
import {
|
|
8
8
|
fetchTranscriptRecipients,
|
|
9
9
|
uploadTranscriptRecords
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-GAMVAORR.js";
|
|
11
11
|
|
|
12
12
|
// src/live-session.ts
|
|
13
13
|
var MAX_TRANSCRIPT_QUEUE = 100;
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
DISCONNECT_AGENT_IDS,
|
|
3
3
|
SETUP_AGENT_CHOICES,
|
|
4
4
|
isApprovalMode
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
6
6
|
|
|
7
7
|
// src/cli/mode-request.ts
|
|
8
8
|
var parseDuration = (value) => {
|
|
@@ -146,6 +146,16 @@ var resolveCommandName = (token) => {
|
|
|
146
146
|
};
|
|
147
147
|
var isInvocationOf = (token, name) => resolveCommandName(token) === name;
|
|
148
148
|
var COMMAND_OPTIONS = {
|
|
149
|
+
login: [
|
|
150
|
+
["--with-token", "Read an API key from stdin"],
|
|
151
|
+
["--no-browser", "Print the sign-in link without opening a browser"],
|
|
152
|
+
["--json", "Emit the result as one object instead of the screen"],
|
|
153
|
+
["--force", "Start a new sign-in instead of reusing the saved key"]
|
|
154
|
+
],
|
|
155
|
+
pair: [
|
|
156
|
+
["--app", "Pair with the Pushary app"],
|
|
157
|
+
["--browser", "Pair through a browser (default)"]
|
|
158
|
+
],
|
|
149
159
|
cowork: [
|
|
150
160
|
["--open", "Also open the setup guide in your browser"],
|
|
151
161
|
["--instructions", "Print standing instructions to paste into Cowork"],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SubscriptionRequiredError,
|
|
3
3
|
callMcpTool
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SEILUNWB.js";
|
|
5
5
|
import {
|
|
6
6
|
CLIENT_REPORT_DISABLE_ENV,
|
|
7
7
|
isDisabledByEnv
|
|
@@ -9,14 +9,14 @@ import {
|
|
|
9
9
|
import {
|
|
10
10
|
installNetworkDefaults,
|
|
11
11
|
isNetworkFailure
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-4MWRR5IT.js";
|
|
13
13
|
import {
|
|
14
14
|
clientReportClaims
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-6MJWYYAS.js";
|
|
16
16
|
import {
|
|
17
17
|
getApiKey,
|
|
18
18
|
getBaseUrl
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-BG4Y64FW.js";
|
|
20
20
|
import {
|
|
21
21
|
ASK_AGENT_NAME_MAX,
|
|
22
22
|
CLIENT_REPORT_PATH,
|
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
GATE_PERMISSION_MODE_MAX_LENGTH,
|
|
25
25
|
degradedLine,
|
|
26
26
|
truncateLine
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
28
28
|
|
|
29
29
|
// src/api.ts
|
|
30
30
|
import { randomUUID } from "crypto";
|
|
@@ -114,6 +114,7 @@ var claimReportWindow = (claimsDir, key, now) => {
|
|
|
114
114
|
|
|
115
115
|
// src/client-report.ts
|
|
116
116
|
var CLIENT_REPORT_TIMEOUT_MS = 1e3;
|
|
117
|
+
var CLIENT_REPORT_MAX_ATTEMPTS = 2;
|
|
117
118
|
var readApiKey = () => {
|
|
118
119
|
try {
|
|
119
120
|
return getApiKey();
|
|
@@ -147,12 +148,21 @@ var createClientErrorReporter = (deps) => {
|
|
|
147
148
|
const apiKey = deps.apiKey();
|
|
148
149
|
const now = deps.now();
|
|
149
150
|
if (!apiKey || !claimReport(reportKey(event), now)) return;
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
151
|
+
const signal = AbortSignal.timeout(CLIENT_REPORT_TIMEOUT_MS);
|
|
152
|
+
for (let attempt = 0; attempt < CLIENT_REPORT_MAX_ATTEMPTS && !signal.aborted; attempt++) {
|
|
153
|
+
try {
|
|
154
|
+
const response = await deps.fetchImpl(`${deps.baseUrl()}${CLIENT_REPORT_PATH}`, {
|
|
155
|
+
method: "POST",
|
|
156
|
+
headers: { "Authorization": `Bearer ${apiKey}`, "Content-Type": "application/json" },
|
|
157
|
+
body: JSON.stringify({ ...event, occurredAt: new Date(now).toISOString() }),
|
|
158
|
+
signal
|
|
159
|
+
});
|
|
160
|
+
await response.body?.cancel();
|
|
161
|
+
if (response.ok || response.status < 500 && response.status !== 429) return;
|
|
162
|
+
} catch {
|
|
163
|
+
if (signal.aborted) return;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
156
166
|
} catch {
|
|
157
167
|
return;
|
|
158
168
|
}
|
|
@@ -4,16 +4,16 @@ import {
|
|
|
4
4
|
} from "./chunk-XHKBHWLX.js";
|
|
5
5
|
import {
|
|
6
6
|
readControlMode
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-WN3RACVD.js";
|
|
8
8
|
import {
|
|
9
9
|
getMachineId
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-O6IUZGWV.js";
|
|
11
11
|
import {
|
|
12
12
|
pusharyDir
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-6MJWYYAS.js";
|
|
14
14
|
import {
|
|
15
15
|
resolveGlobalBinary
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-2QREHU4O.js";
|
|
17
17
|
import {
|
|
18
18
|
readJsonSafe,
|
|
19
19
|
writeFileAtomic,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "./chunk-QENTGE75.js";
|
|
23
23
|
import {
|
|
24
24
|
getApiKey
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-BG4Y64FW.js";
|
|
26
26
|
import {
|
|
27
27
|
CLI_PACKAGE_NAMES,
|
|
28
28
|
cmdShimTarget,
|
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
} from "./chunk-QTOLNRET.js";
|
|
33
33
|
import {
|
|
34
34
|
isRecord
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
36
36
|
|
|
37
37
|
// src/daemon-lifecycle.ts
|
|
38
38
|
import { dirname, join, win32 as win32Path } from "path";
|
|
@@ -5,16 +5,16 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
NOTIFICATION_MATCHED_TYPES,
|
|
7
7
|
POSTTOOLUSE_MIRRORED_TOOLS
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-33OOEVPG.js";
|
|
9
9
|
import {
|
|
10
10
|
isProtectedByScope,
|
|
11
11
|
registerHookEntry
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-6MJWYYAS.js";
|
|
13
13
|
import {
|
|
14
14
|
CLAUDE_PRETOOLUSE_MATCHER,
|
|
15
15
|
HOOK_BUDGETS,
|
|
16
16
|
HOOK_LOCATOR_BINARY
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
18
18
|
|
|
19
19
|
// src/gemini-config.ts
|
|
20
20
|
var GEMINI_HOOK_BINARY = "pushary-gemini-hook";
|
|
@@ -3,24 +3,24 @@ import {
|
|
|
3
3
|
expectedLaunchCapabilities,
|
|
4
4
|
hasSpawnProvider,
|
|
5
5
|
resolveControlPolicy
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6LOQE4J4.js";
|
|
7
7
|
import {
|
|
8
8
|
daemonHasRemoteProof,
|
|
9
9
|
daemonServiceManagerAvailable,
|
|
10
10
|
hasDaemonServiceDefinition,
|
|
11
11
|
readDaemonNeedsLogin,
|
|
12
12
|
readDaemonStatus
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-HC3FHDKB.js";
|
|
14
14
|
import {
|
|
15
15
|
readControlMode,
|
|
16
16
|
readKeySource
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-WN3RACVD.js";
|
|
18
18
|
import {
|
|
19
19
|
getMachineId
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-O6IUZGWV.js";
|
|
21
21
|
import {
|
|
22
22
|
getBaseUrl
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-BG4Y64FW.js";
|
|
24
24
|
import {
|
|
25
25
|
getPackageVersion
|
|
26
26
|
} from "./chunk-QTOLNRET.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
pusharyDir
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6MJWYYAS.js";
|
|
4
4
|
import {
|
|
5
5
|
readJsonSafe,
|
|
6
6
|
writeFileAtomic
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
serializeDeclinedAgents,
|
|
14
14
|
withDeclinedAgent,
|
|
15
15
|
withoutDeclinedAgent
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
17
17
|
|
|
18
18
|
// src/declined-agents-file.ts
|
|
19
19
|
import { join } from "path";
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
pusharyFetch
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4MWRR5IT.js";
|
|
4
4
|
import {
|
|
5
5
|
NetworkError
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-PPY5N2E6.js";
|
|
7
7
|
import {
|
|
8
8
|
EXIT
|
|
9
9
|
} from "./chunk-KZERVKTD.js";
|
|
10
10
|
import {
|
|
11
11
|
getBaseUrl
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-BG4Y64FW.js";
|
|
13
13
|
import {
|
|
14
14
|
isValidApiKey,
|
|
15
15
|
normalizeKeyScope
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
17
17
|
|
|
18
18
|
// src/session.ts
|
|
19
19
|
var samePusharyAccount = (left, right) => left.kind === "ok" && right.kind === "ok" && left.identity.workspaceId !== "" && left.identity.workspaceId === right.identity.workspaceId && left.identity.siteId === right.identity.siteId;
|
|
@@ -4,30 +4,30 @@ import {
|
|
|
4
4
|
postLiveSession,
|
|
5
5
|
postLiveSessionUntilAccepted,
|
|
6
6
|
startLiveSessionHeartbeat
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ELLJPP6O.js";
|
|
8
8
|
import {
|
|
9
9
|
SESSION_IDLE_TIMEOUT_MS,
|
|
10
10
|
describeIdleWindow,
|
|
11
11
|
idleDeadlinePassed,
|
|
12
12
|
startProcessOwnership
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-7WFRY6OL.js";
|
|
14
14
|
import {
|
|
15
15
|
spawnClaude
|
|
16
16
|
} from "./chunk-XHKBHWLX.js";
|
|
17
17
|
import {
|
|
18
18
|
repoKeyFor
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-YPD3MTFU.js";
|
|
20
20
|
import {
|
|
21
21
|
isAskUserResponse,
|
|
22
22
|
isDecisionStopped,
|
|
23
23
|
isWaitForAnswerResponse,
|
|
24
24
|
withdrawQuestion,
|
|
25
25
|
writeDegraded
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-EZHY65QA.js";
|
|
27
27
|
import {
|
|
28
28
|
callMcpTool,
|
|
29
29
|
isRetryable
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-SEILUNWB.js";
|
|
31
31
|
import {
|
|
32
32
|
AGENT_QUESTION_DESCRIPTION_MAX,
|
|
33
33
|
AGENT_QUESTION_HEADER_MAX,
|
|
@@ -48,7 +48,7 @@ import {
|
|
|
48
48
|
parseCodexQuestions,
|
|
49
49
|
planElicitationAsk,
|
|
50
50
|
readElicitationFields
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
52
52
|
|
|
53
53
|
// src/codex-question-owner.ts
|
|
54
54
|
import { createHash } from "crypto";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SETUP_FLAGS
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XV6S5PWW.js";
|
|
4
4
|
import {
|
|
5
5
|
parseFlags
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-NMUI3ZWG.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-PPY5N2E6.js";
|
|
10
10
|
import {
|
|
11
11
|
NPX_LATEST_COMMAND
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-ERK24P76.js";
|
|
13
13
|
import {
|
|
14
14
|
CLAUDE_CONNECTOR_GUIDE,
|
|
15
15
|
CLAUDE_CONNECTOR_STEPS,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
CLAUDE_CONNECTOR_URL,
|
|
18
18
|
COWORK_CONNECTOR_LIMIT,
|
|
19
19
|
COWORK_STANDING_INSTRUCTIONS
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
21
21
|
|
|
22
22
|
// src/cli/cowork.ts
|
|
23
23
|
import { readFileSync } from "fs";
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EXIT
|
|
3
|
+
} from "./chunk-KZERVKTD.js";
|
|
4
|
+
|
|
5
|
+
// src/cli/errors.ts
|
|
6
|
+
var UsageError = class extends Error {
|
|
7
|
+
constructor(hint) {
|
|
8
|
+
super(hint);
|
|
9
|
+
this.hint = hint;
|
|
10
|
+
this.name = "UsageError";
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
var UserError = class extends Error {
|
|
14
|
+
constructor(message, next = [], code = EXIT.FAILED) {
|
|
15
|
+
super(message);
|
|
16
|
+
this.next = next;
|
|
17
|
+
this.code = code;
|
|
18
|
+
this.name = "UserError";
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
var NetworkError = class extends Error {
|
|
22
|
+
constructor(message) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.name = "NetworkError";
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
var AuthError = class extends Error {
|
|
28
|
+
constructor(message) {
|
|
29
|
+
super(message);
|
|
30
|
+
this.name = "AuthError";
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
var InputRequiredError = class extends Error {
|
|
34
|
+
constructor(message, flag) {
|
|
35
|
+
super(message);
|
|
36
|
+
this.flag = flag;
|
|
37
|
+
this.name = "InputRequiredError";
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var exitCodeFor = (err) => {
|
|
41
|
+
if (err instanceof UsageError) return EXIT.USAGE;
|
|
42
|
+
if (err instanceof InputRequiredError) return EXIT.INPUT_REQUIRED;
|
|
43
|
+
if (err instanceof AuthError) return EXIT.UNAUTHENTICATED;
|
|
44
|
+
if (err instanceof NetworkError) return EXIT.UNREACHABLE;
|
|
45
|
+
if (err instanceof UserError) return err.code;
|
|
46
|
+
return EXIT.FAILED;
|
|
47
|
+
};
|
|
48
|
+
var messageFor = (err) => {
|
|
49
|
+
if (err instanceof Error) return err.message;
|
|
50
|
+
return String(err);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export {
|
|
54
|
+
UsageError,
|
|
55
|
+
NetworkError,
|
|
56
|
+
exitCodeFor,
|
|
57
|
+
messageFor
|
|
58
|
+
};
|
|
@@ -3,18 +3,18 @@ import {
|
|
|
3
3
|
addGeminiMcpServer,
|
|
4
4
|
removeGeminiMcpServer,
|
|
5
5
|
supportedClaudeEvents
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-IF26ZGZ7.js";
|
|
7
7
|
import {
|
|
8
8
|
CLAUDE_CODE_AGENT,
|
|
9
9
|
compatibleToolLookup
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-W2IVTHIG.js";
|
|
11
11
|
import {
|
|
12
12
|
guardBinary,
|
|
13
13
|
guardBinaryRefusing,
|
|
14
14
|
holdBudgetOf,
|
|
15
15
|
isProtectedByScope,
|
|
16
16
|
registerHookEntry
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-6MJWYYAS.js";
|
|
18
18
|
import {
|
|
19
19
|
HOOK_COMPATIBLE_PROFILES,
|
|
20
20
|
HOOK_LOCATOR_BINARY,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
pusharyMissingReason,
|
|
27
27
|
refusalOutput,
|
|
28
28
|
withHookHoldBudget
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
30
30
|
|
|
31
31
|
// src/claude-config.ts
|
|
32
32
|
import { join } from "path";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
compatibleConfigFile
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PUHP4IBA.js";
|
|
4
4
|
import {
|
|
5
5
|
hookOwnerOf,
|
|
6
6
|
hookOwnerOfCommands,
|
|
7
7
|
liveBridgeProbe,
|
|
8
8
|
resolveBridgeStub
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CDQHQAS7.js";
|
|
10
10
|
import {
|
|
11
11
|
AGENT_CHOICES
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-XV6S5PWW.js";
|
|
13
13
|
import {
|
|
14
14
|
claudeSettings,
|
|
15
15
|
codexHooksJson,
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
guardedArgv,
|
|
19
19
|
pusharyDir,
|
|
20
20
|
vscodePluginDir
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-6MJWYYAS.js";
|
|
22
22
|
import {
|
|
23
23
|
readJsonSafe
|
|
24
24
|
} from "./chunk-QENTGE75.js";
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
OPENCODE_APPROVAL_EVENT,
|
|
30
30
|
hookCompatibleProfile,
|
|
31
31
|
isRecord
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-AXJLJJ3M.js";
|
|
33
33
|
|
|
34
34
|
// src/opencode-plugin.ts
|
|
35
35
|
var OPENCODE_PLUGIN_MARKER = "pushary-opencode-plugin w1";
|