pushary 1.9.133 → 1.9.135

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 (133) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/{api-7CZR7B53.js → api-WEDLFKUE.js} +11 -11
  3. package/dist/bin/pushary-audit.js +3 -3
  4. package/dist/bin/pushary-bell-hook.js +28 -27
  5. package/dist/bin/pushary-bell.js +10 -10
  6. package/dist/bin/pushary-claude.js +47 -33
  7. package/dist/bin/pushary-clean.js +35 -34
  8. package/dist/bin/pushary-codex-bridge.js +23 -22
  9. package/dist/bin/pushary-codex-hook.js +35 -34
  10. package/dist/bin/pushary-codex-session.js +8 -8
  11. package/dist/bin/pushary-codex.js +16 -15
  12. package/dist/bin/pushary-connect.js +29 -28
  13. package/dist/bin/pushary-cowork.js +5 -5
  14. package/dist/bin/pushary-daemon.js +85 -59
  15. package/dist/bin/pushary-disconnect.js +28 -27
  16. package/dist/bin/pushary-display-hook.js +23 -10
  17. package/dist/bin/pushary-doctor.js +50 -42
  18. package/dist/bin/pushary-elicitation-hook.js +28 -27
  19. package/dist/bin/pushary-gemini-bridge.js +20 -17
  20. package/dist/bin/pushary-gemini-hook.js +32 -31
  21. package/dist/bin/pushary-hook.js +34 -33
  22. package/dist/bin/pushary-login.js +21 -21
  23. package/dist/bin/pushary-logout.js +27 -26
  24. package/dist/bin/pushary-mcp.js +12 -12
  25. package/dist/bin/pushary-mode.js +15 -15
  26. package/dist/bin/pushary-notification-hook.js +27 -26
  27. package/dist/bin/pushary-opencode-hook.js +31 -30
  28. package/dist/bin/pushary-permission-denied-hook.js +34 -33
  29. package/dist/bin/pushary-permission-hook.js +34 -33
  30. package/dist/bin/pushary-post-hook.js +27 -26
  31. package/dist/bin/pushary-prompt-hook.js +27 -26
  32. package/dist/bin/pushary-session-end-hook.js +27 -26
  33. package/dist/bin/pushary-session-start-hook.js +36 -35
  34. package/dist/bin/pushary-setup.js +64 -49
  35. package/dist/bin/pushary-stats.js +5 -5
  36. package/dist/bin/pushary-status.js +33 -32
  37. package/dist/bin/pushary-stop-hook.js +27 -26
  38. package/dist/bin/pushary-stopfailure-hook.js +27 -26
  39. package/dist/bin/pushary-suggestions.js +15 -15
  40. package/dist/bin/pushary-transcript-register.js +17 -17
  41. package/dist/bin/pushary-transcripts.js +25 -25
  42. package/dist/bin/pushary-upgrade.js +47 -40
  43. package/dist/bin/pushary-wait.js +15 -15
  44. package/dist/bin/pushary.js +7 -7
  45. package/dist/{chunk-42PVKPHM.js → chunk-2K7MZRPH.js} +1 -1
  46. package/dist/{chunk-XMZVQF2J.js → chunk-35RCY4LB.js} +1 -1
  47. package/dist/{chunk-QVIDOVT6.js → chunk-3KPPXZCO.js} +15 -15
  48. package/dist/{chunk-KWICQAP7.js → chunk-4PPSXQQ6.js} +3 -3
  49. package/dist/{chunk-4EQOCSJW.js → chunk-4VVDRMVE.js} +1 -1
  50. package/dist/{chunk-HOPJEPL4.js → chunk-4XTB74D3.js} +4 -4
  51. package/dist/{chunk-ZXJTTV7I.js → chunk-4YBDKFU2.js} +2 -2
  52. package/dist/{chunk-VO55SJSD.js → chunk-5GQLZ46V.js} +11 -8
  53. package/dist/{chunk-EA5EASYT.js → chunk-64QLX4ZC.js} +1 -1
  54. package/dist/{chunk-I6MI4NWX.js → chunk-65ZWYA5L.js} +10 -10
  55. package/dist/{chunk-N5P2FLOJ.js → chunk-6QZGKKQS.js} +20 -5
  56. package/dist/{chunk-X23GSBOH.js → chunk-6RSAOA2P.js} +3 -3
  57. package/dist/{chunk-V2T5ZDMP.js → chunk-6UARD3WA.js} +3 -3
  58. package/dist/{chunk-RZBV5KTF.js → chunk-7ASHS5VR.js} +5 -5
  59. package/dist/{chunk-HW63OEVM.js → chunk-7DWERNHQ.js} +3 -3
  60. package/dist/{chunk-UDAXXR43.js → chunk-7GEMAKQL.js} +5 -5
  61. package/dist/{chunk-XWUPOTJV.js → chunk-7JXYR4TC.js} +5 -5
  62. package/dist/{chunk-2U4MCUVZ.js → chunk-7KWOR2T2.js} +1 -1
  63. package/dist/{chunk-A44MRVWG.js → chunk-ACI4PZ5N.js} +3 -3
  64. package/dist/{chunk-LBMCQWRX.js → chunk-AEOITMCS.js} +4 -4
  65. package/dist/chunk-AIZYJJGD.js +95 -0
  66. package/dist/{chunk-MF5ZQX7C.js → chunk-AXQFLLOB.js} +4 -4
  67. package/dist/{chunk-SZYKS433.js → chunk-BGXXWLS5.js} +1 -1
  68. package/dist/{chunk-NSBWFX7H.js → chunk-CGROOSWT.js} +5 -5
  69. package/dist/{chunk-RGVQOOGD.js → chunk-DMK3U7GG.js} +1 -1
  70. package/dist/{chunk-GQPXW6BL.js → chunk-E4RMOK4A.js} +1 -1
  71. package/dist/{chunk-EPPH5RMJ.js → chunk-EWJXECUK.js} +4 -4
  72. package/dist/{chunk-T6HX6OTY.js → chunk-FP6ZVMF2.js} +1 -1
  73. package/dist/{chunk-YI6RR4JP.js → chunk-FSLV5FIE.js} +4 -4
  74. package/dist/{chunk-PPUIIP3O.js → chunk-G3YIGTFS.js} +11 -11
  75. package/dist/{chunk-FTH4TSJ2.js → chunk-GLAGHQPB.js} +4 -4
  76. package/dist/{chunk-NYFUU23B.js → chunk-GRCX2FGD.js} +1 -1
  77. package/dist/{chunk-M65LPNIO.js → chunk-H4226UC7.js} +21 -1
  78. package/dist/{chunk-BKH4LQJC.js → chunk-IABPEGAA.js} +2 -2
  79. package/dist/{chunk-MJVDFNP2.js → chunk-IOUCIJ56.js} +1 -1
  80. package/dist/{chunk-KIWFCW7M.js → chunk-JDAX2HVS.js} +2 -2
  81. package/dist/{chunk-FJST6ZXC.js → chunk-KUAS2DGZ.js} +5 -5
  82. package/dist/{chunk-ZJPBTJED.js → chunk-LIXCHEDJ.js} +6 -6
  83. package/dist/{chunk-CVBSETPW.js → chunk-LTY5DSWT.js} +3 -3
  84. package/dist/{chunk-7MIT5C7B.js → chunk-MGTMXF3T.js} +3 -3
  85. package/dist/{chunk-PHKCTMAV.js → chunk-MYMADZRU.js} +2 -2
  86. package/dist/{chunk-QBJVECFY.js → chunk-N2DYYXQI.js} +2 -2
  87. package/dist/{chunk-2YS7YEUW.js → chunk-NBMK6T6R.js} +2 -2
  88. package/dist/{chunk-C4UH6YPD.js → chunk-NWNUS2ET.js} +4 -4
  89. package/dist/{chunk-3PGANQ4K.js → chunk-OEIU6BNH.js} +6 -6
  90. package/dist/{chunk-237FYIVC.js → chunk-ORZ7H3AQ.js} +4 -4
  91. package/dist/{chunk-FT5MTCKU.js → chunk-OUMH4UTT.js} +2 -2
  92. package/dist/{chunk-WZ4SIRMH.js → chunk-Q5GPXYDG.js} +1 -1
  93. package/dist/{chunk-D2KJKAYM.js → chunk-QLIG4PMT.js} +4 -4
  94. package/dist/{chunk-RVGYXUOC.js → chunk-QUMPSMZN.js} +3 -3
  95. package/dist/{chunk-3DCCMO23.js → chunk-RCZ5ZER4.js} +6 -6
  96. package/dist/{chunk-MRHGK3Q3.js → chunk-RGRPDJG3.js} +42 -25
  97. package/dist/{chunk-DS7XMYUB.js → chunk-RLNJNRYP.js} +1 -1
  98. package/dist/{chunk-LR3PIGRS.js → chunk-SFN72Q7W.js} +3 -3
  99. package/dist/{chunk-UJZ5YHSR.js → chunk-SULQKUPJ.js} +2 -2
  100. package/dist/{chunk-6JY44IZI.js → chunk-TKOALSA5.js} +8 -8
  101. package/dist/{chunk-YNV5GURD.js → chunk-U5W3MKPU.js} +5 -5
  102. package/dist/{chunk-PG23ENSN.js → chunk-UCDPJHZT.js} +2 -2
  103. package/dist/{chunk-VME5NXCM.js → chunk-UCGWTMQD.js} +3 -3
  104. package/dist/{chunk-UZUDMZES.js → chunk-UDSJKRRI.js} +2 -2
  105. package/dist/{chunk-25UU4Q4V.js → chunk-UQCVVN7K.js} +1 -1
  106. package/dist/{chunk-JYCAAQUW.js → chunk-UXPRMNH2.js} +1 -1
  107. package/dist/{chunk-3TKTZOKG.js → chunk-V7KBG7XH.js} +3 -3
  108. package/dist/{chunk-RLQDVWZ4.js → chunk-VCMJLNEP.js} +2 -2
  109. package/dist/{chunk-GKZMBU6T.js → chunk-VND6LN6X.js} +2 -2
  110. package/dist/{chunk-VRUEKURE.js → chunk-VXYGYCNR.js} +1 -1
  111. package/dist/{chunk-PFHRW3LR.js → chunk-WNPZGHHU.js} +3 -3
  112. package/dist/{chunk-IZJDVOJV.js → chunk-WPPTHRBO.js} +5 -5
  113. package/dist/{chunk-75FJZR2M.js → chunk-WTLQMJZ3.js} +3 -3
  114. package/dist/{chunk-XHC3UNOK.js → chunk-WVOMK2HW.js} +1 -1
  115. package/dist/{chunk-L5RSLIBQ.js → chunk-X3NYMHLG.js} +6 -6
  116. package/dist/chunk-XB75IJ3G.js +36 -0
  117. package/dist/{chunk-J4UNR655.js → chunk-XRO6NRBO.js} +6 -6
  118. package/dist/{chunk-W4FJR57E.js → chunk-ZJKWDM3S.js} +2 -2
  119. package/dist/{chunk-2KN53MPE.js → chunk-ZNST34QH.js} +5 -5
  120. package/dist/{codex-app-cards-switch-D2SODMQN.js → codex-app-cards-switch-C6DXLVAM.js} +11 -11
  121. package/dist/{codex-card-routing-X2HUY2AV.js → codex-card-routing-ZMMS4RIR.js} +2 -2
  122. package/dist/{codex-desktop-launch-CFKIJZVB.js → codex-desktop-launch-DIUFMA45.js} +1 -1
  123. package/dist/{codex-session-launch-YGH5UUAH.js → codex-session-launch-S4WTGKRY.js} +20 -19
  124. package/dist/{config-5SNDVPS2.js → config-BV5FQ536.js} +3 -3
  125. package/dist/{global-upgrade-U4V7KWH6.js → global-upgrade-JZWB67EU.js} +9 -9
  126. package/dist/{identity-DCRNA3J3.js → identity-G6FQTONT.js} +4 -4
  127. package/dist/{live-capabilities-H7J5ANZ3.js → live-capabilities-YHMOXY5E.js} +4 -4
  128. package/dist/{paths-3DUQGU4V.js → paths-XTEJ5LI2.js} +3 -3
  129. package/dist/{reapply-LNVBPUWL.js → reapply-MVZKPXIQ.js} +29 -28
  130. package/dist/src/index.js +33 -32
  131. package/dist/{upgrade-lock-3T7JLBHT.js → upgrade-lock-YPAQEEJA.js} +4 -4
  132. package/dist/{usage-XLJK7OTL.js → usage-R6PZTIEH.js} +3 -3
  133. package/package.json +1 -1
@@ -1,40 +1,40 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  takeHookHoldBudget
4
- } from "../chunk-NYFUU23B.js";
4
+ } from "../chunk-GRCX2FGD.js";
5
5
  import {
6
6
  parseCodexHookInput,
7
7
  pushQuestionAndWait,
8
8
  scopeQuestionOf
9
- } from "../chunk-C4UH6YPD.js";
9
+ } from "../chunk-NWNUS2ET.js";
10
10
  import {
11
11
  askAgentQuestions,
12
12
  defersToNativeMode
13
- } from "../chunk-XWUPOTJV.js";
13
+ } from "../chunk-7JXYR4TC.js";
14
14
  import {
15
15
  reportMachineDenial
16
- } from "../chunk-HW63OEVM.js";
16
+ } from "../chunk-7DWERNHQ.js";
17
17
  import {
18
18
  isGatingMoment,
19
19
  recordKeylessMoment
20
- } from "../chunk-2U4MCUVZ.js";
20
+ } from "../chunk-7KWOR2T2.js";
21
21
  import {
22
22
  triggerAutoUpdate
23
- } from "../chunk-UZUDMZES.js";
23
+ } from "../chunk-UDSJKRRI.js";
24
24
  import {
25
25
  readHookInput
26
- } from "../chunk-UDAXXR43.js";
27
- import "../chunk-EPPH5RMJ.js";
26
+ } from "../chunk-7GEMAKQL.js";
27
+ import "../chunk-EWJXECUK.js";
28
28
  import {
29
29
  announceSubscriptionRequired,
30
30
  isDeferAnswer
31
- } from "../chunk-EA5EASYT.js";
32
- import "../chunk-I6MI4NWX.js";
31
+ } from "../chunk-64QLX4ZC.js";
32
+ import "../chunk-65ZWYA5L.js";
33
33
  import "../chunk-VAE5JBR5.js";
34
34
  import "../chunk-G66WIAST.js";
35
- import "../chunk-RZBV5KTF.js";
36
- import "../chunk-3DCCMO23.js";
37
- import "../chunk-237FYIVC.js";
35
+ import "../chunk-7ASHS5VR.js";
36
+ import "../chunk-RCZ5ZER4.js";
37
+ import "../chunk-ORZ7H3AQ.js";
38
38
  import {
39
39
  CODEX_AGENT,
40
40
  DEFAULT_SESSION,
@@ -66,7 +66,7 @@ import {
66
66
  toPolicyLookup,
67
67
  toPolicyLookups,
68
68
  userScope
69
- } from "../chunk-MRHGK3Q3.js";
69
+ } from "../chunk-RGRPDJG3.js";
70
70
  import {
71
71
  codexReviewerDenialsSince,
72
72
  deriveActionBody,
@@ -79,18 +79,18 @@ import {
79
79
  scanCodexGuardianReviews,
80
80
  scopePathFor,
81
81
  sessionIdentityOf
82
- } from "../chunk-JYCAAQUW.js";
83
- import "../chunk-XHC3UNOK.js";
84
- import "../chunk-MJVDFNP2.js";
82
+ } from "../chunk-UXPRMNH2.js";
83
+ import "../chunk-WVOMK2HW.js";
84
+ import "../chunk-IOUCIJ56.js";
85
85
  import "../chunk-YPY4YCIZ.js";
86
- import "../chunk-KWICQAP7.js";
86
+ import "../chunk-4PPSXQQ6.js";
87
87
  import "../chunk-XMSDA5WA.js";
88
- import "../chunk-25UU4Q4V.js";
88
+ import "../chunk-UQCVVN7K.js";
89
89
  import "../chunk-H6CL3T2S.js";
90
90
  import {
91
91
  repoKeyFor,
92
92
  repositoryScopeFor
93
- } from "../chunk-RGVQOOGD.js";
93
+ } from "../chunk-DMK3U7GG.js";
94
94
  import {
95
95
  cancelQuestion,
96
96
  claimBlockedAction,
@@ -100,26 +100,27 @@ import {
100
100
  pollForAnswer,
101
101
  requestGate,
102
102
  sendNotification
103
- } from "../chunk-J4UNR655.js";
103
+ } from "../chunk-XRO6NRBO.js";
104
+ import "../chunk-XB75IJ3G.js";
104
105
  import "../chunk-POFBE6ZY.js";
105
106
  import {
106
107
  SubscriptionRequiredError
107
- } from "../chunk-2KN53MPE.js";
108
- import "../chunk-42PVKPHM.js";
109
- import "../chunk-LR3PIGRS.js";
110
- import "../chunk-V2T5ZDMP.js";
108
+ } from "../chunk-ZNST34QH.js";
109
+ import "../chunk-2K7MZRPH.js";
110
+ import "../chunk-SFN72Q7W.js";
111
+ import "../chunk-6UARD3WA.js";
111
112
  import {
112
113
  getMachineId
113
- } from "../chunk-DS7XMYUB.js";
114
- import "../chunk-CVBSETPW.js";
115
- import "../chunk-BKH4LQJC.js";
114
+ } from "../chunk-RLNJNRYP.js";
115
+ import "../chunk-LTY5DSWT.js";
116
+ import "../chunk-IABPEGAA.js";
116
117
  import {
117
118
  canonicalJson
118
- } from "../chunk-W4FJR57E.js";
119
- import "../chunk-A44MRVWG.js";
119
+ } from "../chunk-ZJKWDM3S.js";
120
+ import "../chunk-ACI4PZ5N.js";
120
121
  import {
121
122
  getApiKey
122
- } from "../chunk-T6HX6OTY.js";
123
+ } from "../chunk-FP6ZVMF2.js";
123
124
  import "../chunk-YU2EUD7O.js";
124
125
  import {
125
126
  writeFileAtomic
@@ -127,7 +128,7 @@ import {
127
128
  import {
128
129
  EXIT
129
130
  } from "../chunk-BG4HHB7E.js";
130
- import "../chunk-SZYKS433.js";
131
+ import "../chunk-BGXXWLS5.js";
131
132
  import "../chunk-WIIMW5YO.js";
132
133
  import {
133
134
  CODEX_RESCUE_STOP_RESERVE_SECONDS,
@@ -156,7 +157,7 @@ import {
156
157
  refusesWhenUnanswered,
157
158
  resolveGate,
158
159
  unapprovedScopeReason
159
- } from "../chunk-M65LPNIO.js";
160
+ } from "../chunk-H4226UC7.js";
160
161
  import "../chunk-MLKGABMK.js";
161
162
 
162
163
  // bin/pushary-codex-hook.ts
@@ -806,7 +807,7 @@ var decidePreToolUse = async (input) => {
806
807
  };
807
808
  var repairCodexHoldsQuietly = async () => {
808
809
  try {
809
- const { repairCodexHolds } = await import("../reapply-LNVBPUWL.js");
810
+ const { repairCodexHolds } = await import("../reapply-MVZKPXIQ.js");
810
811
  repairCodexHolds();
811
812
  } catch {
812
813
  return;
@@ -8,8 +8,8 @@ import "../chunk-MLKGABMK.js";
8
8
  var args = process.argv.slice(2);
9
9
  if (args[0] === "codex") args.shift();
10
10
  var appBehindTheProxy = args[0] === "--desktop-proxy" && args[2] === "--" ? args[1] : void 0;
11
- if (args[0] !== "--desktop-proxy") (await import("../usage-XLJK7OTL.js")).exitOnHelpFlag("codex");
12
- var loadWhatReadsTheAccount = () => Promise.all([import("../config-5SNDVPS2.js"), import("../identity-DCRNA3J3.js")]);
11
+ if (args[0] !== "--desktop-proxy") (await import("../usage-R6PZTIEH.js")).exitOnHelpFlag("codex");
12
+ var loadWhatReadsTheAccount = () => Promise.all([import("../config-BV5FQ536.js"), import("../identity-G6FQTONT.js")]);
13
13
  var loadedWhenThePassThroughStarted = appBehindTheProxy === void 0 ? null : loadWhatReadsTheAccount().catch(() => null);
14
14
  var desktopAccount = async () => {
15
15
  try {
@@ -19,7 +19,7 @@ var desktopAccount = async () => {
19
19
  return null;
20
20
  }
21
21
  };
22
- var desktopLaunch = await import("../codex-desktop-launch-CFKIJZVB.js").catch(() => null);
22
+ var desktopLaunch = await import("../codex-desktop-launch-DIUFMA45.js").catch(() => null);
23
23
  if (desktopLaunch === null && appBehindTheProxy !== void 0) {
24
24
  process.exitCode = await letCodexRunWithoutPushary(appBehindTheProxy, args.slice(3));
25
25
  } else {
@@ -27,15 +27,15 @@ if (desktopLaunch === null && appBehindTheProxy !== void 0) {
27
27
  const stop = () => abort.abort();
28
28
  if (!args[0]?.startsWith("--desktop")) for (const signal of ["SIGINT", "SIGTERM", "SIGHUP"]) process.on(signal, stop);
29
29
  try {
30
- const { codexDesktopCommand } = desktopLaunch ?? await import("../codex-desktop-launch-CFKIJZVB.js");
30
+ const { codexDesktopCommand } = desktopLaunch ?? await import("../codex-desktop-launch-DIUFMA45.js");
31
31
  const desktop = await codexDesktopCommand(args, [process.execPath, ...process.execArgv, process.argv[1], "codex"], desktopAccount);
32
32
  if (desktop !== null) process.exitCode = desktop;
33
33
  else {
34
34
  const [{ getApiKey, getBaseUrl }, { getMachineId }, { resolveProviderBinary }, { codexSessionDirectory, launchCodexSession }] = await Promise.all([
35
- import("../config-5SNDVPS2.js"),
36
- import("../identity-DCRNA3J3.js"),
37
- import("../live-capabilities-H7J5ANZ3.js"),
38
- import("../codex-session-launch-YGH5UUAH.js")
35
+ import("../config-BV5FQ536.js"),
36
+ import("../identity-G6FQTONT.js"),
37
+ import("../live-capabilities-YHMOXY5E.js"),
38
+ import("../codex-session-launch-S4WTGKRY.js")
39
39
  ]);
40
40
  const binary = resolveProviderBinary("codex");
41
41
  if (!binary) throw new Error("Install Codex first, then run pushary codex");
@@ -1,36 +1,37 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reportEvent
4
- } from "../chunk-MRHGK3Q3.js";
5
- import "../chunk-JYCAAQUW.js";
6
- import "../chunk-RGVQOOGD.js";
4
+ } from "../chunk-RGRPDJG3.js";
5
+ import "../chunk-UXPRMNH2.js";
6
+ import "../chunk-DMK3U7GG.js";
7
7
  import {
8
8
  askUser,
9
9
  isDecisionStopped,
10
10
  waitForAnswer
11
- } from "../chunk-J4UNR655.js";
11
+ } from "../chunk-XRO6NRBO.js";
12
+ import "../chunk-XB75IJ3G.js";
12
13
  import "../chunk-POFBE6ZY.js";
13
- import "../chunk-2KN53MPE.js";
14
- import "../chunk-42PVKPHM.js";
15
- import "../chunk-LR3PIGRS.js";
16
- import "../chunk-V2T5ZDMP.js";
14
+ import "../chunk-ZNST34QH.js";
15
+ import "../chunk-2K7MZRPH.js";
16
+ import "../chunk-SFN72Q7W.js";
17
+ import "../chunk-6UARD3WA.js";
17
18
  import {
18
19
  getMachineId
19
- } from "../chunk-DS7XMYUB.js";
20
- import "../chunk-BKH4LQJC.js";
21
- import "../chunk-W4FJR57E.js";
22
- import "../chunk-A44MRVWG.js";
20
+ } from "../chunk-RLNJNRYP.js";
21
+ import "../chunk-IABPEGAA.js";
22
+ import "../chunk-ZJKWDM3S.js";
23
+ import "../chunk-ACI4PZ5N.js";
23
24
  import {
24
25
  getApiKey
25
- } from "../chunk-T6HX6OTY.js";
26
+ } from "../chunk-FP6ZVMF2.js";
26
27
  import "../chunk-YU2EUD7O.js";
27
28
  import "../chunk-TODDEIYG.js";
28
29
  import "../chunk-BG4HHB7E.js";
29
30
  import {
30
31
  NPX_LATEST_COMMAND
31
- } from "../chunk-SZYKS433.js";
32
+ } from "../chunk-BGXXWLS5.js";
32
33
  import "../chunk-WIIMW5YO.js";
33
- import "../chunk-M65LPNIO.js";
34
+ import "../chunk-H4226UC7.js";
34
35
  import "../chunk-MLKGABMK.js";
35
36
 
36
37
  // bin/pushary-codex.ts
@@ -1,55 +1,56 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  printKeyCheck
4
- } from "../chunk-ZJPBTJED.js";
4
+ } from "../chunk-LIXCHEDJ.js";
5
5
  import {
6
6
  connectDevice,
7
7
  connectExistingApp,
8
8
  printConnectInstructions
9
- } from "../chunk-LBMCQWRX.js";
9
+ } from "../chunk-AEOITMCS.js";
10
10
  import "../chunk-3EGEA4KH.js";
11
- import "../chunk-L5RSLIBQ.js";
12
- import "../chunk-2YS7YEUW.js";
11
+ import "../chunk-X3NYMHLG.js";
12
+ import "../chunk-NBMK6T6R.js";
13
13
  import {
14
14
  CONNECTED_THROUGH_MAC_APP,
15
15
  PAIR_FROM_MAC_APP,
16
16
  readMacAppConnection
17
- } from "../chunk-FTH4TSJ2.js";
18
- import "../chunk-GKZMBU6T.js";
17
+ } from "../chunk-GLAGHQPB.js";
18
+ import "../chunk-VND6LN6X.js";
19
19
  import "../chunk-QCGNGEGE.js";
20
- import "../chunk-NSBWFX7H.js";
20
+ import "../chunk-CGROOSWT.js";
21
21
  import {
22
22
  createIo
23
23
  } from "../chunk-FO3MDD26.js";
24
24
  import {
25
25
  exitOnHelpFlag
26
- } from "../chunk-4EQOCSJW.js";
27
- import "../chunk-RZBV5KTF.js";
28
- import "../chunk-237FYIVC.js";
29
- import "../chunk-MRHGK3Q3.js";
30
- import "../chunk-JYCAAQUW.js";
31
- import "../chunk-XHC3UNOK.js";
32
- import "../chunk-MJVDFNP2.js";
26
+ } from "../chunk-4VVDRMVE.js";
27
+ import "../chunk-7ASHS5VR.js";
28
+ import "../chunk-ORZ7H3AQ.js";
29
+ import "../chunk-RGRPDJG3.js";
30
+ import "../chunk-UXPRMNH2.js";
31
+ import "../chunk-WVOMK2HW.js";
32
+ import "../chunk-IOUCIJ56.js";
33
33
  import {
34
34
  parseFlags
35
35
  } from "../chunk-YPY4YCIZ.js";
36
- import "../chunk-RGVQOOGD.js";
37
- import "../chunk-J4UNR655.js";
36
+ import "../chunk-DMK3U7GG.js";
37
+ import "../chunk-XRO6NRBO.js";
38
+ import "../chunk-XB75IJ3G.js";
38
39
  import "../chunk-POFBE6ZY.js";
39
- import "../chunk-2KN53MPE.js";
40
- import "../chunk-42PVKPHM.js";
40
+ import "../chunk-ZNST34QH.js";
41
+ import "../chunk-2K7MZRPH.js";
41
42
  import {
42
43
  checkApiKey
43
- } from "../chunk-LR3PIGRS.js";
44
- import "../chunk-V2T5ZDMP.js";
45
- import "../chunk-DS7XMYUB.js";
44
+ } from "../chunk-SFN72Q7W.js";
45
+ import "../chunk-6UARD3WA.js";
46
+ import "../chunk-RLNJNRYP.js";
46
47
  import {
47
48
  readKeySource
48
- } from "../chunk-CVBSETPW.js";
49
- import "../chunk-BKH4LQJC.js";
50
- import "../chunk-W4FJR57E.js";
51
- import "../chunk-A44MRVWG.js";
52
- import "../chunk-T6HX6OTY.js";
49
+ } from "../chunk-LTY5DSWT.js";
50
+ import "../chunk-IABPEGAA.js";
51
+ import "../chunk-ZJKWDM3S.js";
52
+ import "../chunk-ACI4PZ5N.js";
53
+ import "../chunk-FP6ZVMF2.js";
53
54
  import {
54
55
  UsageError
55
56
  } from "../chunk-YU2EUD7O.js";
@@ -59,9 +60,9 @@ import {
59
60
  } from "../chunk-BG4HHB7E.js";
60
61
  import {
61
62
  isInvocationOf
62
- } from "../chunk-SZYKS433.js";
63
+ } from "../chunk-BGXXWLS5.js";
63
64
  import "../chunk-WIIMW5YO.js";
64
- import "../chunk-M65LPNIO.js";
65
+ import "../chunk-H4226UC7.js";
65
66
  import "../chunk-MLKGABMK.js";
66
67
 
67
68
  // bin/pushary-connect.ts
@@ -2,15 +2,15 @@
2
2
  import {
3
3
  coworkOutput,
4
4
  parseCoworkOptions
5
- } from "../chunk-75FJZR2M.js";
5
+ } from "../chunk-WTLQMJZ3.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-4EQOCSJW.js";
13
- import "../chunk-XHC3UNOK.js";
12
+ } from "../chunk-4VVDRMVE.js";
13
+ import "../chunk-WVOMK2HW.js";
14
14
  import "../chunk-YPY4YCIZ.js";
15
15
  import {
16
16
  UsageError
@@ -18,11 +18,11 @@ import {
18
18
  import {
19
19
  EXIT
20
20
  } from "../chunk-BG4HHB7E.js";
21
- import "../chunk-SZYKS433.js";
21
+ import "../chunk-BGXXWLS5.js";
22
22
  import "../chunk-WIIMW5YO.js";
23
23
  import {
24
24
  CLAUDE_CONNECTOR_GUIDE
25
- } from "../chunk-M65LPNIO.js";
25
+ } from "../chunk-H4226UC7.js";
26
26
  import "../chunk-MLKGABMK.js";
27
27
 
28
28
  // bin/pushary-cowork.ts
@@ -1,36 +1,40 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  inspectConfiguredManagedProviders
4
- } from "../chunk-PPUIIP3O.js";
4
+ } from "../chunk-G3YIGTFS.js";
5
5
  import {
6
6
  readHookWiring,
7
7
  readHookWiringSafely
8
- } from "../chunk-6JY44IZI.js";
9
- import "../chunk-FT5MTCKU.js";
10
- import "../chunk-PG23ENSN.js";
8
+ } from "../chunk-TKOALSA5.js";
9
+ import "../chunk-OUMH4UTT.js";
10
+ import "../chunk-UCDPJHZT.js";
11
+ import {
12
+ keepLinuxDaemonAfterLogout,
13
+ lingerReportOf
14
+ } from "../chunk-AIZYJJGD.js";
11
15
  import {
12
16
  HEARTBEAT_INTERVAL_MS,
13
17
  sendHeartbeat
14
- } from "../chunk-FJST6ZXC.js";
15
- import "../chunk-RLQDVWZ4.js";
18
+ } from "../chunk-KUAS2DGZ.js";
19
+ import "../chunk-VCMJLNEP.js";
16
20
  import {
17
21
  readSignedOutDiagnosis
18
- } from "../chunk-2YS7YEUW.js";
22
+ } from "../chunk-NBMK6T6R.js";
19
23
  import {
20
24
  HERMES_INSTALL_MARKER_FILE,
21
25
  defaultHermesHome,
22
26
  parseHermesInstallMarker
23
- } from "../chunk-7MIT5C7B.js";
27
+ } from "../chunk-MGTMXF3T.js";
24
28
  import {
25
29
  writeHuman
26
30
  } from "../chunk-QCGNGEGE.js";
27
- import "../chunk-IZJDVOJV.js";
28
- import "../chunk-3TKTZOKG.js";
29
- import "../chunk-PFHRW3LR.js";
30
- import "../chunk-NSBWFX7H.js";
31
+ import "../chunk-WPPTHRBO.js";
32
+ import "../chunk-V7KBG7XH.js";
33
+ import "../chunk-WNPZGHHU.js";
34
+ import "../chunk-CGROOSWT.js";
31
35
  import {
32
36
  exitOnHelpFlag
33
- } from "../chunk-4EQOCSJW.js";
37
+ } from "../chunk-4VVDRMVE.js";
34
38
  import {
35
39
  codexBinaryIsBroken,
36
40
  detectProviderLiveCapabilities,
@@ -39,8 +43,8 @@ import {
39
43
  launchableProviders,
40
44
  resolveControlPolicy,
41
45
  trackProviderInventory
42
- } from "../chunk-X23GSBOH.js";
43
- import "../chunk-UJZ5YHSR.js";
46
+ } from "../chunk-6RSAOA2P.js";
47
+ import "../chunk-SULQKUPJ.js";
44
48
  import {
45
49
  SESSION_REAP_SILENCE_MS,
46
50
  describeIdleWindow,
@@ -48,18 +52,18 @@ import {
48
52
  listProcessProofs,
49
53
  ownsLiveProcess,
50
54
  silentSpawnedProofs
51
- } from "../chunk-ZXJTTV7I.js";
55
+ } from "../chunk-4YBDKFU2.js";
52
56
  import "../chunk-CYTPQDQY.js";
53
57
  import {
54
58
  readLocalAutoUpdateReport
55
- } from "../chunk-UZUDMZES.js";
56
- import "../chunk-EPPH5RMJ.js";
59
+ } from "../chunk-UDSJKRRI.js";
60
+ import "../chunk-EWJXECUK.js";
57
61
  import {
58
62
  startRegisteredTranscripts
59
- } from "../chunk-I6MI4NWX.js";
63
+ } from "../chunk-65ZWYA5L.js";
60
64
  import "../chunk-VAE5JBR5.js";
61
65
  import "../chunk-G66WIAST.js";
62
- import "../chunk-RZBV5KTF.js";
66
+ import "../chunk-7ASHS5VR.js";
63
67
  import {
64
68
  DAEMON_LEASE_RENEW_INTERVAL_MS,
65
69
  DAEMON_YIELD_CHECK_INTERVAL_MS,
@@ -77,49 +81,54 @@ import {
77
81
  requestDaemonHandoff,
78
82
  stopDaemonRunning,
79
83
  writeDaemonNeedsLogin
80
- } from "../chunk-3DCCMO23.js";
84
+ } from "../chunk-RCZ5ZER4.js";
81
85
  import {
82
86
  hookOwnerOf
83
- } from "../chunk-237FYIVC.js";
87
+ } from "../chunk-ORZ7H3AQ.js";
84
88
  import {
89
+ markPendingCommandRefused,
85
90
  pendingCommandReceipts,
86
91
  removePendingCommand
87
- } from "../chunk-MRHGK3Q3.js";
88
- import "../chunk-JYCAAQUW.js";
89
- import "../chunk-XHC3UNOK.js";
90
- import "../chunk-MJVDFNP2.js";
92
+ } from "../chunk-RGRPDJG3.js";
93
+ import "../chunk-UXPRMNH2.js";
94
+ import "../chunk-WVOMK2HW.js";
95
+ import "../chunk-IOUCIJ56.js";
91
96
  import "../chunk-YPY4YCIZ.js";
92
- import "../chunk-KWICQAP7.js";
97
+ import "../chunk-4PPSXQQ6.js";
93
98
  import "../chunk-XMSDA5WA.js";
94
- import "../chunk-25UU4Q4V.js";
99
+ import "../chunk-UQCVVN7K.js";
95
100
  import {
96
101
  spawnClaude
97
102
  } from "../chunk-H6CL3T2S.js";
98
- import "../chunk-RGVQOOGD.js";
99
- import "../chunk-J4UNR655.js";
103
+ import "../chunk-DMK3U7GG.js";
104
+ import "../chunk-XRO6NRBO.js";
105
+ import {
106
+ readCommandAck,
107
+ refusedReceiptMessage
108
+ } from "../chunk-XB75IJ3G.js";
100
109
  import "../chunk-POFBE6ZY.js";
101
- import "../chunk-2KN53MPE.js";
102
- import "../chunk-42PVKPHM.js";
103
- import "../chunk-LR3PIGRS.js";
104
- import "../chunk-V2T5ZDMP.js";
110
+ import "../chunk-ZNST34QH.js";
111
+ import "../chunk-2K7MZRPH.js";
112
+ import "../chunk-SFN72Q7W.js";
113
+ import "../chunk-6UARD3WA.js";
105
114
  import {
106
115
  getMachineId
107
- } from "../chunk-DS7XMYUB.js";
116
+ } from "../chunk-RLNJNRYP.js";
108
117
  import {
109
118
  readControlMode
110
- } from "../chunk-CVBSETPW.js";
111
- import "../chunk-BKH4LQJC.js";
119
+ } from "../chunk-LTY5DSWT.js";
120
+ import "../chunk-IABPEGAA.js";
112
121
  import {
113
122
  claudeConfigDir,
114
123
  codexHome
115
- } from "../chunk-W4FJR57E.js";
124
+ } from "../chunk-ZJKWDM3S.js";
116
125
  import {
117
126
  resolveBinary
118
- } from "../chunk-A44MRVWG.js";
127
+ } from "../chunk-ACI4PZ5N.js";
119
128
  import {
120
129
  getApiKey,
121
130
  getBaseUrl
122
- } from "../chunk-T6HX6OTY.js";
131
+ } from "../chunk-FP6ZVMF2.js";
123
132
  import "../chunk-YU2EUD7O.js";
124
133
  import {
125
134
  writeJsonAtomicDurable
@@ -127,7 +136,7 @@ import {
127
136
  import {
128
137
  EXIT
129
138
  } from "../chunk-BG4HHB7E.js";
130
- import "../chunk-SZYKS433.js";
139
+ import "../chunk-BGXXWLS5.js";
131
140
  import "../chunk-WIIMW5YO.js";
132
141
  import {
133
142
  CLAUDE_INBOX,
@@ -157,7 +166,7 @@ import {
157
166
  parseHermesAdmission,
158
167
  parseHermesReplayCursor,
159
168
  qualifyHermesReceiptMode
160
- } from "../chunk-M65LPNIO.js";
169
+ } from "../chunk-H4226UC7.js";
161
170
  import "../chunk-MLKGABMK.js";
162
171
 
163
172
  // src/native-host-receiver.ts
@@ -806,23 +815,25 @@ var startNativeInputReceiver = (apiKey, machineId, options) => {
806
815
  const abort = new AbortController();
807
816
  const busy = /* @__PURE__ */ new Set();
808
817
  const settling = /* @__PURE__ */ new Set();
818
+ const refusalsReported = /* @__PURE__ */ new Set();
809
819
  const heartbeats = /* @__PURE__ */ new Map();
810
820
  const settlements = /* @__PURE__ */ new Map();
811
821
  let scanning = false;
812
822
  let cursor = 0;
823
+ const request = (path, body) => fetch(`${baseUrl}${path}`, {
824
+ method: "POST",
825
+ headers: {
826
+ "Content-Type": "application/json",
827
+ Authorization: `Bearer ${apiKey}`
828
+ },
829
+ body: JSON.stringify(body),
830
+ signal: AbortSignal.any([
831
+ abort.signal,
832
+ AbortSignal.timeout(CLAUDE_INBOX_RECEIVER.requestTimeoutMs)
833
+ ])
834
+ });
813
835
  const post = async (path, body) => {
814
- const response = await fetch(`${baseUrl}${path}`, {
815
- method: "POST",
816
- headers: {
817
- "Content-Type": "application/json",
818
- Authorization: `Bearer ${apiKey}`
819
- },
820
- body: JSON.stringify(body),
821
- signal: AbortSignal.any([
822
- abort.signal,
823
- AbortSignal.timeout(CLAUDE_INBOX_RECEIVER.requestTimeoutMs)
824
- ])
825
- });
836
+ const response = await request(path, body);
826
837
  if (!response.ok) throw new Error(`native inbox HTTP ${response.status}`);
827
838
  return response.json();
828
839
  };
@@ -831,17 +842,23 @@ var startNativeInputReceiver = (apiKey, machineId, options) => {
831
842
  if (!pending || settling.has(commandId) || settling.size >= CLAUDE_INBOX_RECEIVER.maxConcurrent) return false;
832
843
  settling.add(commandId);
833
844
  try {
834
- const receipt = await post("/api/agent/command/ack", {
845
+ const response = await request("/api/agent/command/ack", {
835
846
  ...pending,
836
847
  commandId,
837
848
  machineId
838
849
  });
839
- if (!isCommandAcknowledgementReceipt(receipt))
850
+ const ack = await readCommandAck(response);
851
+ if (ack.outcome === "retry") throw new Error(`native inbox HTTP ${response.status}`);
852
+ if (ack.outcome === "settled" && !isCommandAcknowledgementReceipt(await response.json()))
840
853
  throw new Error("native acknowledgement missing receipt");
841
854
  const current = settlements.get(commandId);
842
855
  if (current?.state !== pending.state || current.failureCode !== pending.failureCode || current.sessionId !== pending.sessionId) return false;
843
856
  if (pending.state === "delivered") client.confirmSettlement(pending.sessionId, commandId);
844
857
  settlements.delete(commandId);
858
+ if (ack.outcome === "refused" && !refusalsReported.has(commandId)) {
859
+ refusalsReported.add(commandId);
860
+ options.report?.(refusedReceiptMessage(commandId, ack.status));
861
+ }
845
862
  return true;
846
863
  } catch (error) {
847
864
  if (!abort.signal.aborted)
@@ -989,7 +1006,7 @@ var startNativeHostReceivers = (apiKey, machineId, report) => {
989
1006
  };
990
1007
 
991
1008
  // src/hook-command-receipts.ts
992
- var reconcileCommandReceipts = async (apiKey, machineId, agentType, baseUrl, signal) => {
1009
+ var reconcileCommandReceipts = async (apiKey, machineId, agentType, baseUrl, signal, report) => {
993
1010
  const namespace = `${apiKey}:${machineId}:${agentType}`;
994
1011
  for (const { sessionId, command } of pendingCommandReceipts(namespace)) {
995
1012
  signal?.throwIfAborted();
@@ -1012,7 +1029,12 @@ var reconcileCommandReceipts = async (apiKey, machineId, agentType, baseUrl, sig
1012
1029
  ...signal ? [signal] : []
1013
1030
  ])
1014
1031
  });
1015
- if (response.ok) removePendingCommand(sessionId, command.id, namespace);
1032
+ const ack = await readCommandAck(response);
1033
+ if (ack.outcome === "settled") removePendingCommand(sessionId, command.id, namespace);
1034
+ if (ack.outcome === "refused") {
1035
+ markPendingCommandRefused(sessionId, command.id, namespace);
1036
+ report?.(refusedReceiptMessage(command.id, ack.status));
1037
+ }
1016
1038
  }
1017
1039
  };
1018
1040
 
@@ -1413,7 +1435,8 @@ var startClaudeInboxReceiver = (apiKey, machineId, options = {}) => {
1413
1435
  machineId,
1414
1436
  "claude_code",
1415
1437
  baseUrl,
1416
- abort.signal
1438
+ abort.signal,
1439
+ options.report
1417
1440
  );
1418
1441
  const sessions = client.sessions().filter(options.ownsSession ?? ownsSession).slice(0, CLAUDE_INBOX_MAX_SESSIONS);
1419
1442
  if (!sessions.length) {
@@ -2305,6 +2328,9 @@ var main = async () => {
2305
2328
  return EXIT.UNREACHABLE;
2306
2329
  }
2307
2330
  process.stdout.write("[pushary] daemon service installed and online\n");
2331
+ const linger = lingerReportOf(keepLinuxDaemonAfterLogout());
2332
+ if (linger) (linger.tone === "warning" ? process.stderr : process.stdout).write(`[pushary] ${linger.text}
2333
+ `);
2308
2334
  return EXIT.OK;
2309
2335
  }
2310
2336
  if (action === "start") {