pushary 1.9.49 → 1.9.51

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.
Files changed (120) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +0 -1
  3. package/dist/api-PPNFRSJC.js +55 -0
  4. package/dist/bin/pushary-bell-hook.js +28 -25
  5. package/dist/bin/pushary-bell.js +13 -11
  6. package/dist/bin/pushary-claude.js +36 -32
  7. package/dist/bin/pushary-clean.js +68 -42
  8. package/dist/bin/pushary-codex-bridge.js +23 -20
  9. package/dist/bin/pushary-codex-hook.js +35 -31
  10. package/dist/bin/pushary-codex-session.js +17 -616
  11. package/dist/bin/pushary-codex.js +15 -12
  12. package/dist/bin/pushary-connect.js +31 -28
  13. package/dist/bin/pushary-cowork.js +7 -6
  14. package/dist/bin/pushary-daemon.js +55 -52
  15. package/dist/bin/pushary-disconnect.js +29 -26
  16. package/dist/bin/pushary-doctor.js +57 -52
  17. package/dist/bin/pushary-elicitation-hook.js +28 -25
  18. package/dist/bin/pushary-gemini-bridge.js +17 -15
  19. package/dist/bin/pushary-gemini-hook.js +32 -28
  20. package/dist/bin/pushary-hook.js +34 -31
  21. package/dist/bin/pushary-login.js +19 -16
  22. package/dist/bin/pushary-logout.js +30 -27
  23. package/dist/bin/pushary-mcp.js +11 -9
  24. package/dist/bin/pushary-mode.js +16 -14
  25. package/dist/bin/pushary-notification-hook.js +27 -24
  26. package/dist/bin/pushary-opencode-hook.js +31 -27
  27. package/dist/bin/pushary-permission-denied-hook.js +32 -29
  28. package/dist/bin/pushary-permission-hook.js +31 -28
  29. package/dist/bin/pushary-post-hook.js +27 -24
  30. package/dist/bin/pushary-prompt-hook.js +27 -24
  31. package/dist/bin/pushary-session-end-hook.js +27 -24
  32. package/dist/bin/pushary-session-start-hook.js +32 -29
  33. package/dist/bin/pushary-setup.js +145 -82
  34. package/dist/bin/pushary-stats.js +8 -7
  35. package/dist/bin/pushary-status.js +35 -32
  36. package/dist/bin/pushary-stop-hook.js +27 -24
  37. package/dist/bin/pushary-stopfailure-hook.js +27 -24
  38. package/dist/bin/pushary-suggestions.js +16 -14
  39. package/dist/bin/pushary-transcript-register.js +19 -17
  40. package/dist/bin/pushary-transcripts.js +10 -9
  41. package/dist/bin/pushary-upgrade.js +46 -42
  42. package/dist/bin/pushary-wait.js +16 -14
  43. package/dist/bin/pushary.js +10 -8
  44. package/dist/{chunk-IF2UPWD2.js → chunk-26MUPAKS.js} +1 -1
  45. package/dist/{chunk-AWMMABVB.js → chunk-2QPHUCXU.js} +49 -135
  46. package/dist/{chunk-WEY5ZHDB.js → chunk-2YSCVT6Q.js} +5 -5
  47. package/dist/chunk-36NGFHE4.js +72 -0
  48. package/dist/{chunk-25SYEAW4.js → chunk-3ICRY72Q.js} +3 -3
  49. package/dist/{chunk-LZYJMSOY.js → chunk-3OLEGCMU.js} +3 -3
  50. package/dist/{chunk-B7LV6W7U.js → chunk-3RPN7AAT.js} +1 -1
  51. package/dist/{chunk-VCZN7NAB.js → chunk-3YAOJEHG.js} +7 -5
  52. package/dist/{chunk-TGCIFEDE.js → chunk-43NXSBNZ.js} +13 -11
  53. package/dist/{chunk-Y74IJ2IO.js → chunk-4JM2CK2A.js} +4 -4
  54. package/dist/{chunk-KEAIIVW3.js → chunk-4QQEUJL4.js} +2 -2
  55. package/dist/{chunk-XNZB274I.js → chunk-5463UUO2.js} +1 -1
  56. package/dist/{chunk-ZMYLVFXC.js → chunk-5CRQCIHR.js} +14 -9
  57. package/dist/{chunk-KIO2MZQC.js → chunk-6QPRQVQM.js} +5 -3
  58. package/dist/{chunk-4PCJ6DYK.js → chunk-6SWMKF5E.js} +2 -2
  59. package/dist/{chunk-Y7WD72J7.js → chunk-7CLLWDCP.js} +1 -1
  60. package/dist/{chunk-TYTIDEBW.js → chunk-7DBTOPOT.js} +5 -5
  61. package/dist/chunk-7YAVKENV.js +271 -0
  62. package/dist/{chunk-34AQAQKW.js → chunk-AA2K3H7Y.js} +4 -4
  63. package/dist/{chunk-DH4BWFU7.js → chunk-AZHTI5JX.js} +5 -5
  64. package/dist/{chunk-PA54A437.js → chunk-BUXDR6US.js} +1 -1
  65. package/dist/{chunk-VUS6QGND.js → chunk-CQ5JGRML.js} +5 -1
  66. package/dist/{chunk-YVO4HIHX.js → chunk-DT5CACWZ.js} +12 -10
  67. package/dist/{chunk-LLRYP5TR.js → chunk-DT5Y55FI.js} +5 -5
  68. package/dist/{chunk-ZTTCYHOM.js → chunk-DUMZORSL.js} +8 -6
  69. package/dist/{chunk-XTVEW2NG.js → chunk-EGKD4S5H.js} +1 -1
  70. package/dist/{chunk-FPKQGWAF.js → chunk-EJCPHLY2.js} +2 -2
  71. package/dist/{chunk-YTYXFA5M.js → chunk-FI73DGNB.js} +1 -1
  72. package/dist/{chunk-JGNYCRB2.js → chunk-FV34HT35.js} +1 -1
  73. package/dist/{chunk-KK2DIUVV.js → chunk-GCN73COS.js} +1 -1
  74. package/dist/{chunk-SE4JFMLW.js → chunk-GTSI6NG6.js} +8 -6
  75. package/dist/chunk-JBT3ZSJS.js +92 -0
  76. package/dist/chunk-JZDRR7BL.js +427 -0
  77. package/dist/{chunk-KBGKWB5T.js → chunk-K3BIMGP4.js} +4 -2
  78. package/dist/{chunk-LY3OJFBW.js → chunk-KQBXPGXO.js} +2 -1
  79. package/dist/{chunk-OR5F63C2.js → chunk-LF3TLC7B.js} +2 -168
  80. package/dist/{chunk-QYBL4EHD.js → chunk-LXRQLDGW.js} +11 -11
  81. package/dist/{chunk-ZOKMGBPR.js → chunk-MC4VY5LK.js} +16 -5
  82. package/dist/{chunk-OW4DNSQ6.js → chunk-NSY2V7XU.js} +1 -1
  83. package/dist/{chunk-X3RCIOIH.js → chunk-ONCWYACA.js} +1 -1
  84. package/dist/{chunk-EP6S6VY3.js → chunk-PMJEN6CX.js} +6 -6
  85. package/dist/{chunk-K73CBZKW.js → chunk-PTNSIGLB.js} +4 -4
  86. package/dist/chunk-PVDSN6TB.js +729 -0
  87. package/dist/chunk-QTOLNRET.js +169 -0
  88. package/dist/{chunk-APASKZ2I.js → chunk-RLADRNPV.js} +5 -3
  89. package/dist/{chunk-BOVSUH4N.js → chunk-S6RNS4UL.js} +2 -2
  90. package/dist/{chunk-34RXPM5U.js → chunk-SRXBOMSR.js} +3 -3
  91. package/dist/{chunk-HXRH7ZCK.js → chunk-TQ6AGJVH.js} +2 -2
  92. package/dist/{chunk-SALUTWPX.js → chunk-UKX5WIB5.js} +4 -4
  93. package/dist/{chunk-ABMEBN2R.js → chunk-UR7XX2DV.js} +6 -4
  94. package/dist/{chunk-BXK6ZJVJ.js → chunk-UVT6B6XN.js} +2 -2
  95. package/dist/{chunk-5Q2FRMPC.js → chunk-VD2OAF7Q.js} +4 -4
  96. package/dist/{chunk-XH3F66VD.js → chunk-VYBH6D4X.js} +3 -3
  97. package/dist/{chunk-UCF3EZZL.js → chunk-VZRCM362.js} +13 -13
  98. package/dist/{chunk-7RMSB4A2.js → chunk-W26Q2DTD.js} +14 -12
  99. package/dist/{chunk-OWQHE2VV.js → chunk-WVSM3G4C.js} +19 -4
  100. package/dist/{chunk-GDDXGBTM.js → chunk-X5GHIFST.js} +2 -2
  101. package/dist/chunk-XCEN33UP.js +7 -0
  102. package/dist/{chunk-UHVD7BSV.js → chunk-XQHPHJHR.js} +6 -6
  103. package/dist/{chunk-OZLGTMIY.js → chunk-XSUJ2PQY.js} +2 -2
  104. package/dist/{chunk-ZYYQJSIO.js → chunk-YQDZ7ZIL.js} +44 -462
  105. package/dist/{chunk-PXUNPXOX.js → chunk-ZOP3I2GQ.js} +3 -3
  106. package/dist/{chunk-WLT6J3SB.js → chunk-ZXGDBCIH.js} +2 -2
  107. package/dist/codex-app-cards-switch-ZQRT7MXB.js +52 -0
  108. package/dist/codex-desktop-launch-X7UKQ4VR.js +27 -0
  109. package/dist/codex-session-launch-IX33LOQZ.js +331 -0
  110. package/dist/config-HX6ZNOIL.js +14 -0
  111. package/dist/{global-upgrade-AIUSS2YH.js → global-upgrade-DGP2E2NE.js} +8 -6
  112. package/dist/identity-YISWVJ2A.js +15 -0
  113. package/dist/live-capabilities-44KFBOD4.js +53 -0
  114. package/dist/{paths-RO34TYNM.js → paths-VLGX4GJA.js} +4 -2
  115. package/dist/{reapply-KTNPP4XE.js → reapply-35F3WDTB.js} +24 -21
  116. package/dist/src/index.d.ts +3 -3
  117. package/dist/src/index.js +22 -19
  118. package/dist/{upgrade-lock-5UAGXIW7.js → upgrade-lock-LMO3DSSU.js} +5 -3
  119. package/dist/usage-ZC6BKIE3.js +10 -0
  120. package/package.json +1 -1
@@ -0,0 +1,169 @@
1
+ // src/cli-package-name.ts
2
+ var CANONICAL_PACKAGE = "pushary";
3
+ var LEGACY_PACKAGE = "@pushary/agent-hooks";
4
+ var CLI_PACKAGE_NAMES = [CANONICAL_PACKAGE, LEGACY_PACKAGE];
5
+ var isCliPackageName = (value) => typeof value === "string" && CLI_PACKAGE_NAMES.some((name) => name === value);
6
+ var cliPackagePathSegments = (name) => name.split("/");
7
+
8
+ // src/global-package.ts
9
+ import { posix, win32 } from "path";
10
+ var OWNERSHIP_PROBE_COMMAND = "pushary-hook";
11
+ var pathApiFor = (platform) => platform === "win32" ? win32 : posix;
12
+ var POSIX_GLOBAL_ROOT_SEGMENTS = ["lib", "node_modules"];
13
+ var UPGRADE_ENTRY_SEGMENTS = ["dist", "bin", "pushary-upgrade.js"];
14
+ var globalRootFor = (prefix, platform) => platform === "win32" ? win32.join(prefix, "node_modules") : posix.join(prefix, ...POSIX_GLOBAL_ROOT_SEGMENTS);
15
+ var globalPackageFolder = (root, name, platform) => pathApiFor(platform).join(root, ...cliPackagePathSegments(name));
16
+ var globalUpgradeEntry = (prefix, name, platform) => pathApiFor(platform).join(globalPackageFolder(globalRootFor(prefix, platform), name, platform), ...UPGRADE_ENTRY_SEGMENTS);
17
+ var isInsideFolder = (target, folder, platform) => {
18
+ const pathApi = pathApiFor(platform);
19
+ const relativePath = pathApi.relative(folder, target);
20
+ return relativePath !== "" && !relativePath.startsWith("..") && !pathApi.isAbsolute(relativePath);
21
+ };
22
+ var linkPointsInto = (evidence, targets, name) => evidence.globalRoots.some((root) => {
23
+ const folder = globalPackageFolder(root, name, evidence.platform);
24
+ return targets.some((target) => isInsideFolder(target, folder, evidence.platform));
25
+ });
26
+ var ownerFromInstalled = (installed, whenNone) => {
27
+ const [only, ...others] = installed;
28
+ if (only === void 0) return whenNone;
29
+ if (others.length > 0) return { kind: "unknown", reason: "both_installed" };
30
+ return { kind: "owned", name: only };
31
+ };
32
+ var decideCommandOwner = (evidence) => {
33
+ const { link } = evidence;
34
+ if (link.kind === "resolved") {
35
+ const name = CLI_PACKAGE_NAMES.find((candidate) => linkPointsInto(evidence, link.targets, candidate));
36
+ return name === void 0 ? { kind: "unknown", reason: "foreign_command" } : { kind: "owned", name };
37
+ }
38
+ const whenNone = link.kind === "absent" ? { kind: "none" } : { kind: "unknown", reason: "unreadable_command" };
39
+ return ownerFromInstalled(evidence.installed, whenNone);
40
+ };
41
+ var CMD_SHIM_TARGET = /"%(?:~dp0|dp0%)\\([^"]+?)"\s+%[*]/;
42
+ var cmdShimTarget = (shimDir, contents) => {
43
+ const relativeTarget = CMD_SHIM_TARGET.exec(contents)?.[1];
44
+ return relativeTarget === void 0 ? void 0 : win32.resolve(shimDir, relativeTarget);
45
+ };
46
+ var launchedPackage = (ownName) => ownName ?? LEGACY_PACKAGE;
47
+ var globalInstallTarget = (owner, ownName) => {
48
+ switch (owner.kind) {
49
+ case "owned":
50
+ return owner.name;
51
+ case "none":
52
+ return launchedPackage(ownName);
53
+ case "unknown":
54
+ return LEGACY_PACKAGE;
55
+ }
56
+ };
57
+ var isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
58
+ var declaresOwnershipProbe = (bin) => isRecord(bin) && typeof bin[OWNERSHIP_PROBE_COMMAND] === "string";
59
+ var cliManifestName = (manifest) => {
60
+ if (!isRecord(manifest) || !isCliPackageName(manifest.name) || !declaresOwnershipProbe(manifest.bin)) return void 0;
61
+ return manifest.name;
62
+ };
63
+ var classifyGlobalFolder = (name, read) => {
64
+ if (read.kind === "unreadable") return { kind: "unseen" };
65
+ const { manifest } = read;
66
+ if (!isRecord(manifest) || cliManifestName(manifest) !== name) return { kind: "foreign" };
67
+ return { kind: "ours", installed: { name, version: typeof manifest.version === "string" ? manifest.version : void 0 } };
68
+ };
69
+ var classifyGlobalInstall = (installed, owner) => {
70
+ const [only, ...others] = installed;
71
+ if (only === void 0) return { kind: "absent" };
72
+ if (others.length === 0) return { kind: "single", installed: only };
73
+ return { kind: "both", installed, owner };
74
+ };
75
+ var isUninstallable = (evidence) => evidence.listing !== "absent" && evidence.folder !== "foreign";
76
+ var globalPackagesToUninstall = (evidence) => evidence.filter(isUninstallable).map((entry) => entry.name);
77
+ var commandsPackage = (install) => {
78
+ if (install.kind === "single") return install.installed;
79
+ if (install.kind !== "both" || install.owner.kind !== "owned") return void 0;
80
+ const ownerName = install.owner.name;
81
+ return install.installed.find((installed) => installed.name === ownerName);
82
+ };
83
+
84
+ // src/cli/version.ts
85
+ import { readFileSync } from "fs";
86
+ import { dirname, join, parse } from "path";
87
+ import { fileURLToPath } from "url";
88
+ var UNKNOWN_VERSION = "0.0.0";
89
+ var cliManifestNameAt = (manifestPath) => {
90
+ try {
91
+ return cliManifestName(JSON.parse(readFileSync(manifestPath, "utf-8")));
92
+ } catch {
93
+ return void 0;
94
+ }
95
+ };
96
+ var findOwnPackage = (start) => {
97
+ const { root } = parse(start);
98
+ let dir = start;
99
+ while (true) {
100
+ const name = cliManifestNameAt(join(dir, "package.json"));
101
+ if (name !== void 0) return { root: dir, name };
102
+ if (dir === root) return void 0;
103
+ const parent = dirname(dir);
104
+ if (parent === dir) return void 0;
105
+ dir = parent;
106
+ }
107
+ };
108
+ var runningPackage = () => {
109
+ try {
110
+ return findOwnPackage(dirname(fileURLToPath(import.meta.url)));
111
+ } catch {
112
+ return void 0;
113
+ }
114
+ };
115
+ var getPackageVersion = () => {
116
+ const root = ownPackageRoot();
117
+ return (root === void 0 ? void 0 : packageVersionAt(root)) ?? UNKNOWN_VERSION;
118
+ };
119
+ var ownPackageRoot = () => runningPackage()?.root;
120
+ var ownPackageName = () => runningPackage()?.name;
121
+ var packageVersionAt = (packageRoot) => {
122
+ try {
123
+ const manifest = JSON.parse(readFileSync(join(packageRoot, "package.json"), "utf-8"));
124
+ const version = manifest && typeof manifest === "object" && "version" in manifest ? manifest.version : void 0;
125
+ return typeof version === "string" ? version : void 0;
126
+ } catch {
127
+ return void 0;
128
+ }
129
+ };
130
+ var isNewerVersion = (candidate, current) => {
131
+ const a = candidate.split(".").map((part) => parseInt(part, 10) || 0);
132
+ const b = current.split(".").map((part) => parseInt(part, 10) || 0);
133
+ for (let i = 0; i < 3; i++) {
134
+ if ((a[i] ?? 0) > (b[i] ?? 0)) return true;
135
+ if ((a[i] ?? 0) < (b[i] ?? 0)) return false;
136
+ }
137
+ return false;
138
+ };
139
+ var RELEASE_VERSION = /^\d+\.\d+\.\d+$/;
140
+ var isReleaseVersion = (value) => RELEASE_VERSION.test(value);
141
+ var majorOf = (version) => parseInt(version.split(".")[0] ?? "", 10) || 0;
142
+ var isSameMajorVersion = (candidate, current) => majorOf(candidate) === majorOf(current);
143
+
144
+ export {
145
+ CANONICAL_PACKAGE,
146
+ LEGACY_PACKAGE,
147
+ CLI_PACKAGE_NAMES,
148
+ cliPackagePathSegments,
149
+ OWNERSHIP_PROBE_COMMAND,
150
+ POSIX_GLOBAL_ROOT_SEGMENTS,
151
+ globalRootFor,
152
+ globalPackageFolder,
153
+ globalUpgradeEntry,
154
+ decideCommandOwner,
155
+ cmdShimTarget,
156
+ launchedPackage,
157
+ globalInstallTarget,
158
+ classifyGlobalFolder,
159
+ classifyGlobalInstall,
160
+ globalPackagesToUninstall,
161
+ commandsPackage,
162
+ getPackageVersion,
163
+ ownPackageRoot,
164
+ ownPackageName,
165
+ packageVersionAt,
166
+ isNewerVersion,
167
+ isReleaseVersion,
168
+ isSameMajorVersion
169
+ };
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-POFBE6ZY.js";
4
4
  import {
5
5
  autoUpdateState
6
- } from "./chunk-ZYYQJSIO.js";
6
+ } from "./chunk-YQDZ7ZIL.js";
7
7
  import {
8
8
  readJsonSafe,
9
9
  writeJsonAtomic
@@ -13,9 +13,11 @@ import {
13
13
  POSIX_GLOBAL_ROOT_SEGMENTS,
14
14
  cliPackagePathSegments,
15
15
  globalUpgradeEntry,
16
- isAutoUpdateResult,
17
16
  ownPackageRoot
18
- } from "./chunk-OR5F63C2.js";
17
+ } from "./chunk-QTOLNRET.js";
18
+ import {
19
+ isAutoUpdateResult
20
+ } from "./chunk-LF3TLC7B.js";
19
21
 
20
22
  // src/auto-update.ts
21
23
  import { spawn } from "child_process";
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-KZERVKTD.js";
4
4
  import {
5
5
  renderCommandHelp
6
- } from "./chunk-ZOKMGBPR.js";
6
+ } from "./chunk-MC4VY5LK.js";
7
7
  import {
8
8
  getPackageVersion
9
- } from "./chunk-OR5F63C2.js";
9
+ } from "./chunk-QTOLNRET.js";
10
10
 
11
11
  // src/cli/usage.ts
12
12
  var exitOnHelpFlag = (command) => {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pusharyFetch
3
- } from "./chunk-ABMEBN2R.js";
3
+ } from "./chunk-UR7XX2DV.js";
4
4
  import {
5
5
  NetworkError
6
6
  } from "./chunk-7QLSKOSU.js";
@@ -9,11 +9,11 @@ import {
9
9
  } from "./chunk-KZERVKTD.js";
10
10
  import {
11
11
  getBaseUrl
12
- } from "./chunk-VUS6QGND.js";
12
+ } from "./chunk-CQ5JGRML.js";
13
13
  import {
14
14
  isValidApiKey,
15
15
  normalizeKeyScope
16
- } from "./chunk-OR5F63C2.js";
16
+ } from "./chunk-LF3TLC7B.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;
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  CODEX_HOOK_STATUS
3
- } from "./chunk-KIO2MZQC.js";
3
+ } from "./chunk-6QPRQVQM.js";
4
4
  import {
5
5
  NPX_LATEST_COMMAND
6
- } from "./chunk-ZOKMGBPR.js";
6
+ } from "./chunk-MC4VY5LK.js";
7
7
 
8
8
  // src/setup/codex-trust.ts
9
9
  var CODEX_TRUST_TELEMETRY = {
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  registerTranscript
3
- } from "./chunk-UCF3EZZL.js";
3
+ } from "./chunk-VZRCM362.js";
4
4
  import {
5
5
  namedEvent
6
- } from "./chunk-Y74IJ2IO.js";
6
+ } from "./chunk-4JM2CK2A.js";
7
7
  import {
8
8
  writeDegraded
9
- } from "./chunk-AWMMABVB.js";
9
+ } from "./chunk-2QPHUCXU.js";
10
10
  import {
11
11
  claudeShapedHookInput,
12
12
  hookCompatibleProfileBySource,
13
13
  isGrokHookPayload,
14
14
  isGrokSessionEndStop
15
- } from "./chunk-OR5F63C2.js";
15
+ } from "./chunk-LF3TLC7B.js";
16
16
 
17
17
  // src/tool-hook-input.ts
18
18
  var OPTIONAL_TEXT_FIELDS = ["hook_event_name", "session_id", "cwd", "transcript_path", "tool_use_id", "permission_mode"];
@@ -1,16 +1,18 @@
1
1
  import {
2
2
  readExistingMachineId
3
- } from "./chunk-LY3OJFBW.js";
3
+ } from "./chunk-KQBXPGXO.js";
4
4
  import {
5
5
  NetworkError
6
6
  } from "./chunk-7QLSKOSU.js";
7
7
  import {
8
8
  getBaseUrl
9
- } from "./chunk-VUS6QGND.js";
9
+ } from "./chunk-CQ5JGRML.js";
10
10
  import {
11
- clientContextHeaders,
12
11
  getPackageVersion
13
- } from "./chunk-OR5F63C2.js";
12
+ } from "./chunk-QTOLNRET.js";
13
+ import {
14
+ clientContextHeaders
15
+ } from "./chunk-LF3TLC7B.js";
14
16
 
15
17
  // src/cli/net.ts
16
18
  import { createRequire } from "module";
@@ -3,11 +3,11 @@ import {
3
3
  decodePublicKey,
4
4
  generateSessionKey,
5
5
  wrapSessionKey
6
- } from "./chunk-XNZB274I.js";
6
+ } from "./chunk-5463UUO2.js";
7
7
  import {
8
8
  fetchTranscriptRecipients,
9
9
  uploadTranscriptRecords
10
- } from "./chunk-KK2DIUVV.js";
10
+ } from "./chunk-GCN73COS.js";
11
11
 
12
12
  // src/live-session.ts
13
13
  var MAX_TRANSCRIPT_QUEUE = 100;
@@ -2,25 +2,25 @@ import {
2
2
  SIGNED_OUT_ON_MAC_MESSAGE,
3
3
  describeSignedOutKey,
4
4
  readSignedOutDiagnosis
5
- } from "./chunk-4PCJ6DYK.js";
5
+ } from "./chunk-6SWMKF5E.js";
6
6
  import {
7
7
  createIo
8
8
  } from "./chunk-FO3MDD26.js";
9
9
  import {
10
10
  readKeySource
11
- } from "./chunk-XH3F66VD.js";
11
+ } from "./chunk-VYBH6D4X.js";
12
12
  import {
13
13
  absoluteUrl,
14
14
  checkApiKey,
15
15
  describeKeyCheck,
16
16
  keyCheckFromResponse
17
- } from "./chunk-34RXPM5U.js";
17
+ } from "./chunk-SRXBOMSR.js";
18
18
  import {
19
19
  EXIT
20
20
  } from "./chunk-KZERVKTD.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-VUS6QGND.js";
23
+ } from "./chunk-CQ5JGRML.js";
24
24
 
25
25
  // src/cli/report-key.ts
26
26
  var { dim, yellow } = createIo();
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveInstallSourceFor
3
- } from "./chunk-KEAIIVW3.js";
3
+ } from "./chunk-4QQEUJL4.js";
4
4
  import {
5
5
  backupFile,
6
6
  readJsonSafe,
@@ -9,11 +9,11 @@ import {
9
9
  } from "./chunk-AQFEP65J.js";
10
10
  import {
11
11
  configFilePath
12
- } from "./chunk-VUS6QGND.js";
12
+ } from "./chunk-CQ5JGRML.js";
13
13
  import {
14
14
  API_KEY_PREFIX_PATTERN,
15
15
  isRecord
16
- } from "./chunk-OR5F63C2.js";
16
+ } from "./chunk-LF3TLC7B.js";
17
17
 
18
18
  // src/shell-alias.ts
19
19
  import { homedir } from "os";
@@ -6,38 +6,38 @@ import {
6
6
  } from "./chunk-DWQYCOPI.js";
7
7
  import {
8
8
  ensureDaemonRunning
9
- } from "./chunk-ZMYLVFXC.js";
9
+ } from "./chunk-5CRQCIHR.js";
10
10
  import {
11
11
  hookOwnerOf
12
- } from "./chunk-WEY5ZHDB.js";
13
- import {
14
- transcriptEnvironmentPreference,
15
- transcriptsEnabled
16
- } from "./chunk-JGNYCRB2.js";
17
- import {
18
- readTranscriptPreference
19
- } from "./chunk-XH3F66VD.js";
12
+ } from "./chunk-2YSCVT6Q.js";
20
13
  import {
21
14
  buildTranscriptRecords,
22
15
  decodePublicKey,
23
16
  generateSessionKey,
24
17
  wrapSessionKey
25
- } from "./chunk-XNZB274I.js";
18
+ } from "./chunk-5463UUO2.js";
26
19
  import {
27
20
  fetchTranscriptRecipients,
28
21
  uploadTranscriptRecords
29
- } from "./chunk-KK2DIUVV.js";
22
+ } from "./chunk-GCN73COS.js";
23
+ import {
24
+ transcriptEnvironmentPreference,
25
+ transcriptsEnabled
26
+ } from "./chunk-FV34HT35.js";
27
+ import {
28
+ readTranscriptPreference
29
+ } from "./chunk-VYBH6D4X.js";
30
30
  import {
31
31
  codexHome,
32
32
  pusharyDir
33
- } from "./chunk-ZYYQJSIO.js";
33
+ } from "./chunk-YQDZ7ZIL.js";
34
34
  import {
35
35
  writeJsonAtomic
36
36
  } from "./chunk-AQFEP65J.js";
37
37
  import {
38
38
  getApiKey,
39
39
  getBaseUrl
40
- } from "./chunk-VUS6QGND.js";
40
+ } from "./chunk-CQ5JGRML.js";
41
41
 
42
42
  // src/transcript-registration.ts
43
43
  import { createHash } from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ensureCodexTrustsPusharyHooks
3
- } from "./chunk-KIO2MZQC.js";
3
+ } from "./chunk-6QPRQVQM.js";
4
4
  import {
5
5
  OPENCODE_HOOK_BINARY,
6
6
  agentHookOwner,
@@ -9,7 +9,10 @@ import {
9
9
  openCodeHookArgv,
10
10
  openCodePluginDir,
11
11
  openCodeWired
12
- } from "./chunk-LLRYP5TR.js";
12
+ } from "./chunk-DT5Y55FI.js";
13
+ import {
14
+ detectClaudeVersion
15
+ } from "./chunk-RIVNNBEK.js";
13
16
  import {
14
17
  addClaudeMcpServer,
15
18
  addCompatibleHooks,
@@ -17,7 +20,7 @@ import {
17
20
  addPusharyToolPermissions,
18
21
  compatibleConfigFile,
19
22
  hasCompatibleHooks
20
- } from "./chunk-Y74IJ2IO.js";
23
+ } from "./chunk-4JM2CK2A.js";
21
24
  import {
22
25
  claudeUnprovenHolds,
23
26
  claudeWired,
@@ -25,7 +28,7 @@ import {
25
28
  codexWired,
26
29
  geminiWired,
27
30
  planHooks
28
- } from "./chunk-WEY5ZHDB.js";
31
+ } from "./chunk-2YSCVT6Q.js";
29
32
  import {
30
33
  CLAUDE_HOOK_BINARY,
31
34
  CLAUDE_HOOK_EVENTS,
@@ -36,10 +39,7 @@ import {
36
39
  needsReregistration,
37
40
  registrationSignatures,
38
41
  supportedClaudeEvents
39
- } from "./chunk-25SYEAW4.js";
40
- import {
41
- detectClaudeVersion
42
- } from "./chunk-RIVNNBEK.js";
42
+ } from "./chunk-3ICRY72Q.js";
43
43
  import {
44
44
  formatVersion
45
45
  } from "./chunk-6ICPEJY5.js";
@@ -60,10 +60,12 @@ import {
60
60
  namesOurBinary,
61
61
  registeredCommands,
62
62
  registrationHolderOf,
63
- resolveGlobalBinDir,
64
- resolveGlobalBinary,
65
63
  vscodePluginMcp
66
- } from "./chunk-ZYYQJSIO.js";
64
+ } from "./chunk-YQDZ7ZIL.js";
65
+ import {
66
+ resolveGlobalBinDir,
67
+ resolveGlobalBinary
68
+ } from "./chunk-JZDRR7BL.js";
67
69
  import {
68
70
  readJsonSafe,
69
71
  writeFileAtomic,
@@ -73,7 +75,7 @@ import {
73
75
  HOOK_COMPATIBLE_PROFILES,
74
76
  isCompatibleAgentType,
75
77
  isRecord
76
- } from "./chunk-OR5F63C2.js";
78
+ } from "./chunk-LF3TLC7B.js";
77
79
 
78
80
  // src/reapply.ts
79
81
  import { dirname, join } from "path";
@@ -10,10 +10,14 @@ import {
10
10
  resolvePackageVersionFromBinary,
11
11
  resolvePathBinary,
12
12
  resolvePathBinaryAsync
13
- } from "./chunk-ZYYQJSIO.js";
13
+ } from "./chunk-JZDRR7BL.js";
14
14
  import {
15
15
  MANAGED_PROVIDERS
16
- } from "./chunk-OR5F63C2.js";
16
+ } from "./chunk-LF3TLC7B.js";
17
+
18
+ // src/setup/codex-install-probe.ts
19
+ import { existsSync, readdirSync, statSync } from "fs";
20
+ import { dirname, join } from "path";
17
21
 
18
22
  // src/setup/codex-install.ts
19
23
  var NATIVE_BINARY_MIN_BYTES = 20 * 1024 * 1024;
@@ -51,8 +55,6 @@ var checkCodexInstall = (probe) => {
51
55
  };
52
56
 
53
57
  // src/setup/codex-install-probe.ts
54
- import { existsSync, readdirSync, statSync } from "fs";
55
- import { dirname, join } from "path";
56
58
  var listDir = (path) => {
57
59
  try {
58
60
  return readdirSync(path);
@@ -123,6 +125,7 @@ var missingControlPrerequisite = (input) => {
123
125
  if (!input.managerAvailable) return "service-manager";
124
126
  return null;
125
127
  };
128
+ var phoneStartIsRequired = (input) => input.mode === "on" || input.policy === "legacy" || input.lifecycleFailed;
126
129
  var preferGlobalProviderBinary = (platform) => platform === "win32";
127
130
  var resolveProviderBinary = (provider, platform = process.platform) => preferGlobalProviderBinary(platform) ? resolveGlobalBinary(provider) ?? resolvePathBinary(provider, platform) : resolvePathBinary(provider, platform) ?? resolveGlobalBinary(provider);
128
131
  var codexBinaryIsBroken = (binary) => codexInstallHealthAt(binary).kind === "binary-missing";
@@ -191,14 +194,26 @@ var trackProviderInventory = async (providers, onChange) => {
191
194
  export {
192
195
  checkCodexInstall,
193
196
  nodeCodexInstallProbe,
197
+ CLAUDE_BRIDGE_CAPABILITY,
198
+ CLAUDE_RESUME_CAPABILITY,
199
+ CODEX_BRIDGE_CAPABILITY,
200
+ CODEX_RESUME_CAPABILITY,
201
+ GEMINI_BRIDGE_CAPABILITY,
202
+ GEMINI_RESUME_CAPABILITY,
203
+ geminiLiveCapabilities,
204
+ providerLiveCapabilities,
194
205
  launchableProviders,
195
206
  hasSpawnProvider,
196
207
  resolveControlPolicy,
197
208
  missingControlPrerequisite,
209
+ phoneStartIsRequired,
198
210
  resolveProviderBinary,
199
211
  codexBinaryIsBroken,
200
212
  detectProviderLiveCapabilities,
213
+ detectLaunchableProviderCapabilities,
214
+ SPAWN_CAPABILITY,
201
215
  launchAdvertisement,
202
216
  expectedLaunchCapabilities,
217
+ discoverProviderInventory,
203
218
  trackProviderInventory
204
219
  };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  parseSseMessages
3
- } from "./chunk-LZYJMSOY.js";
3
+ } from "./chunk-3OLEGCMU.js";
4
4
  import {
5
5
  NPX_LATEST_COMMAND
6
- } from "./chunk-ZOKMGBPR.js";
6
+ } from "./chunk-MC4VY5LK.js";
7
7
 
8
8
  // src/mcp-stdio-bridge.ts
9
9
  var MCP_BRIDGE_BINARY = "pushary-mcp";
@@ -0,0 +1,7 @@
1
+ // src/process-group.ts
2
+ var GROUP_HAS_NOTHING_LEFT_TO_SIGNAL = /* @__PURE__ */ new Set(["ESRCH", "EPERM"]);
3
+ var processGroupHasNothingLeftToSignal = (error) => error !== null && typeof error === "object" && "code" in error && typeof error.code === "string" && GROUP_HAS_NOTHING_LEFT_TO_SIGNAL.has(error.code);
4
+
5
+ export {
6
+ processGroupHasNothingLeftToSignal
7
+ };
@@ -12,21 +12,21 @@ import {
12
12
  terminalColumns,
13
13
  useColor
14
14
  } from "./chunk-FO3MDD26.js";
15
- import {
16
- reportedInstallSource
17
- } from "./chunk-KEAIIVW3.js";
18
15
  import {
19
16
  callMcpTool
20
- } from "./chunk-LZYJMSOY.js";
17
+ } from "./chunk-3OLEGCMU.js";
18
+ import {
19
+ reportedInstallSource
20
+ } from "./chunk-4QQEUJL4.js";
21
21
  import {
22
22
  NPX_LATEST_COMMAND
23
- } from "./chunk-ZOKMGBPR.js";
23
+ } from "./chunk-MC4VY5LK.js";
24
24
  import {
25
25
  NO_PAIRING_COMPUTER,
26
26
  PAIR_TTL_SECONDS,
27
27
  classifyConfirmResponse,
28
28
  isAnswerSource
29
- } from "./chunk-OR5F63C2.js";
29
+ } from "./chunk-LF3TLC7B.js";
30
30
 
31
31
  // src/reach.ts
32
32
  var reachVerdict = (channels) => {
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-AQFEP65J.js";
5
5
  import {
6
6
  configFilePath
7
- } from "./chunk-VUS6QGND.js";
7
+ } from "./chunk-CQ5JGRML.js";
8
8
  import {
9
9
  readSetupOutcomeProperties
10
- } from "./chunk-OR5F63C2.js";
10
+ } from "./chunk-LF3TLC7B.js";
11
11
 
12
12
  // src/hooks-spec.ts
13
13
  var CURSOR_GATE_SCRIPT = "pushary-gate.mjs";