pushary 1.9.90 → 1.9.91

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 (126) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/{api-ORGHXO4N.js → api-SXS2T6QU.js} +10 -10
  3. package/dist/bin/pushary-bell-hook.js +26 -26
  4. package/dist/bin/pushary-bell.js +10 -10
  5. package/dist/bin/pushary-claude.js +27 -27
  6. package/dist/bin/pushary-clean.js +34 -34
  7. package/dist/bin/pushary-codex-bridge.js +21 -21
  8. package/dist/bin/pushary-codex-hook.js +31 -31
  9. package/dist/bin/pushary-codex-session.js +8 -8
  10. package/dist/bin/pushary-codex.js +14 -14
  11. package/dist/bin/pushary-connect.js +27 -27
  12. package/dist/bin/pushary-cowork.js +5 -5
  13. package/dist/bin/pushary-daemon.js +39 -39
  14. package/dist/bin/pushary-disconnect.js +26 -26
  15. package/dist/bin/pushary-display-hook.js +17 -17
  16. package/dist/bin/pushary-doctor.js +45 -48
  17. package/dist/bin/pushary-elicitation-hook.js +26 -26
  18. package/dist/bin/pushary-gemini-bridge.js +15 -15
  19. package/dist/bin/pushary-gemini-hook.js +28 -28
  20. package/dist/bin/pushary-hook.js +30 -30
  21. package/dist/bin/pushary-login.js +20 -20
  22. package/dist/bin/pushary-logout.js +25 -25
  23. package/dist/bin/pushary-mcp.js +11 -11
  24. package/dist/bin/pushary-mode.js +15 -15
  25. package/dist/bin/pushary-notification-hook.js +25 -25
  26. package/dist/bin/pushary-opencode-hook.js +27 -27
  27. package/dist/bin/pushary-permission-denied-hook.js +30 -30
  28. package/dist/bin/pushary-permission-hook.js +30 -30
  29. package/dist/bin/pushary-post-hook.js +25 -25
  30. package/dist/bin/pushary-prompt-hook.js +25 -25
  31. package/dist/bin/pushary-session-end-hook.js +27 -27
  32. package/dist/bin/pushary-session-start-hook.js +35 -35
  33. package/dist/bin/pushary-setup.js +50 -49
  34. package/dist/bin/pushary-stats.js +5 -5
  35. package/dist/bin/pushary-status.js +32 -32
  36. package/dist/bin/pushary-stop-hook.js +25 -25
  37. package/dist/bin/pushary-stopfailure-hook.js +25 -25
  38. package/dist/bin/pushary-suggestions.js +15 -15
  39. package/dist/bin/pushary-transcript-register.js +18 -18
  40. package/dist/bin/pushary-transcripts.js +26 -26
  41. package/dist/bin/pushary-upgrade.js +40 -40
  42. package/dist/bin/pushary-wait.js +15 -15
  43. package/dist/bin/pushary.js +7 -7
  44. package/dist/{chunk-3EVOYLXQ.js → chunk-24JXCTST.js} +5 -5
  45. package/dist/{chunk-XO3UJDJE.js → chunk-27232B7Y.js} +2 -2
  46. package/dist/{chunk-Y5BPNOJI.js → chunk-2GSRRZ6B.js} +1 -1
  47. package/dist/{chunk-CDBGZWPY.js → chunk-2GYHJE4R.js} +3 -3
  48. package/dist/{chunk-FSJYYZ3G.js → chunk-2YFTIQM5.js} +5 -5
  49. package/dist/{chunk-P4OZVK2B.js → chunk-36LCF2YG.js} +4 -4
  50. package/dist/{chunk-53YQO4HL.js → chunk-3R2FRFVO.js} +11 -11
  51. package/dist/{chunk-XBXBX7YF.js → chunk-46MZBPY3.js} +2 -2
  52. package/dist/{chunk-6B4O7XNC.js → chunk-4QQDACWU.js} +6 -6
  53. package/dist/{chunk-APT7KJ5I.js → chunk-5UTJHR7L.js} +6 -6
  54. package/dist/{chunk-E3EJARHF.js → chunk-62KQLGEP.js} +1 -1
  55. package/dist/{chunk-E4XGV5UG.js → chunk-7ECQUETY.js} +1 -1
  56. package/dist/{chunk-7BEQB3X4.js → chunk-7JF57OPF.js} +1 -1
  57. package/dist/{chunk-TOPXBWUN.js → chunk-7M2XBZ5B.js} +2 -2
  58. package/dist/{chunk-VE333PL5.js → chunk-ABAIOLV5.js} +18 -0
  59. package/dist/{chunk-JQUMX7YZ.js → chunk-B3IAV5CZ.js} +2 -2
  60. package/dist/{chunk-XRSE2PAM.js → chunk-B3K3752V.js} +3 -3
  61. package/dist/{chunk-VMUBIBHQ.js → chunk-BANK74ZZ.js} +7 -7
  62. package/dist/{chunk-6P4II3ZL.js → chunk-BFXTO23L.js} +5 -5
  63. package/dist/{chunk-ALT4KW5M.js → chunk-BGJ3SXTZ.js} +5 -5
  64. package/dist/{chunk-KT25MC57.js → chunk-CEFWJUMO.js} +4 -4
  65. package/dist/{chunk-K6QLKUCT.js → chunk-CEUWBQF2.js} +1 -1
  66. package/dist/{chunk-WGBW66IO.js → chunk-CIS6AR32.js} +5 -5
  67. package/dist/{chunk-ALTGRWSO.js → chunk-CPEITTYS.js} +1 -1
  68. package/dist/{chunk-I7UZODYO.js → chunk-D4A277IY.js} +3 -3
  69. package/dist/{chunk-2U6FPMXG.js → chunk-DCILU6SS.js} +3 -3
  70. package/dist/{chunk-URJHH72Z.js → chunk-EJEAHC7H.js} +1 -1
  71. package/dist/{chunk-OODEIR3Z.js → chunk-ESUZQNA4.js} +35 -12
  72. package/dist/{chunk-NWSGMYX7.js → chunk-EX76IRRF.js} +4 -4
  73. package/dist/{chunk-OGR5WSHI.js → chunk-FVLMKRSH.js} +7 -7
  74. package/dist/{chunk-5DTOMJVD.js → chunk-GSV75E67.js} +2 -2
  75. package/dist/{chunk-JJNO3ACZ.js → chunk-GVEIAGZ5.js} +3 -3
  76. package/dist/{chunk-G7MVZHMM.js → chunk-HEFRK3YI.js} +2 -2
  77. package/dist/{chunk-TTXUWHBL.js → chunk-HF5PQTRW.js} +1 -1
  78. package/dist/{chunk-SJCPI4WT.js → chunk-I5M2KWB3.js} +1 -1
  79. package/dist/{chunk-OH67LB2U.js → chunk-IAMH6L23.js} +14 -14
  80. package/dist/{chunk-4V25M4X5.js → chunk-IL67TUP3.js} +2 -2
  81. package/dist/{chunk-2EOTXWFK.js → chunk-INHSF76N.js} +3 -3
  82. package/dist/{chunk-HKGGENVU.js → chunk-JQ37ZJJQ.js} +6 -6
  83. package/dist/{chunk-FAM2TLFC.js → chunk-KDN7AMAQ.js} +1 -1
  84. package/dist/{chunk-2RUJIPNN.js → chunk-KFJAVZQ4.js} +2 -2
  85. package/dist/{chunk-K2NIENKY.js → chunk-KRNY5Z6I.js} +1 -1
  86. package/dist/{chunk-32F3BWRY.js → chunk-KU2FFKWS.js} +1 -1
  87. package/dist/{chunk-NMDWW3EY.js → chunk-L2ZV2R56.js} +3 -3
  88. package/dist/{chunk-7EGNVZLK.js → chunk-LLVX57ZC.js} +2 -2
  89. package/dist/{chunk-AF3OHGKE.js → chunk-NRK3RNWF.js} +1 -1
  90. package/dist/{chunk-QCSPLJL6.js → chunk-OAWIPPYH.js} +3 -3
  91. package/dist/{chunk-HT5WOP2M.js → chunk-OBRDREJD.js} +6 -6
  92. package/dist/{chunk-72UCLJJW.js → chunk-OGRGVEWA.js} +1 -1
  93. package/dist/{chunk-LGQQUQDZ.js → chunk-PETLGHDR.js} +4 -4
  94. package/dist/{chunk-VTF6EYVB.js → chunk-PKM6S4XN.js} +5 -5
  95. package/dist/{chunk-7MN3KPHM.js → chunk-PRH7XNAT.js} +1 -1
  96. package/dist/{chunk-V4ZLZYQ4.js → chunk-PX56WF4C.js} +3 -3
  97. package/dist/{chunk-INNH7EUK.js → chunk-Q2PKD73S.js} +10 -10
  98. package/dist/{chunk-NIZ6ITRH.js → chunk-Q37ESQSL.js} +1 -1
  99. package/dist/{chunk-XIPP777K.js → chunk-QAKTIVCT.js} +3 -3
  100. package/dist/{chunk-ASTOMXHJ.js → chunk-QAXQ33SA.js} +1 -1
  101. package/dist/{chunk-I567L2KG.js → chunk-QFTLJDUE.js} +10 -10
  102. package/dist/{chunk-EFQQLEWW.js → chunk-R6XUBZXX.js} +4 -4
  103. package/dist/{chunk-CNFM6JEV.js → chunk-RD2WTV72.js} +2 -2
  104. package/dist/{chunk-GKDVI6WX.js → chunk-RR2T2R2Z.js} +3 -3
  105. package/dist/{chunk-LJFITB6T.js → chunk-SF3FHCJJ.js} +4 -4
  106. package/dist/{chunk-DADN6GJO.js → chunk-SVE32G6W.js} +4 -4
  107. package/dist/{chunk-QUKDNQ4L.js → chunk-TJMSJDRS.js} +3 -3
  108. package/dist/{chunk-6LJOCQBB.js → chunk-UOBUESLS.js} +1 -1
  109. package/dist/{chunk-OEPP5VUW.js → chunk-XMKJ3UEC.js} +6 -6
  110. package/dist/{chunk-CE2ISNPN.js → chunk-XNX6P2J5.js} +5 -5
  111. package/dist/{chunk-3N4GETIW.js → chunk-YHOMFTLQ.js} +2 -2
  112. package/dist/{chunk-MWXX34K4.js → chunk-ZAXB2CFU.js} +1 -1
  113. package/dist/{chunk-G7GVI5RL.js → chunk-ZH7GIWNY.js} +3 -3
  114. package/dist/{codex-app-cards-switch-UQ7TGFYV.js → codex-app-cards-switch-CCPJNIO3.js} +11 -11
  115. package/dist/{codex-desktop-launch-O5FWONZ7.js → codex-desktop-launch-K435NZMM.js} +1 -1
  116. package/dist/{codex-session-launch-MTKJC2RH.js → codex-session-launch-TFFGMVQQ.js} +18 -18
  117. package/dist/{config-EGBMIS5K.js → config-T354BRNE.js} +3 -3
  118. package/dist/{global-upgrade-QOAUUHZ6.js → global-upgrade-PUHR6IUT.js} +10 -10
  119. package/dist/{identity-Z5TRRQL5.js → identity-SKMA72SN.js} +4 -4
  120. package/dist/{live-capabilities-M4HOY7EM.js → live-capabilities-OBNZ57FR.js} +5 -5
  121. package/dist/{paths-ZOS6Y3PS.js → paths-HXV4TRDG.js} +3 -3
  122. package/dist/{reapply-PYDRWYKU.js → reapply-2HEDTSBK.js} +28 -28
  123. package/dist/src/index.js +29 -29
  124. package/dist/{upgrade-lock-QZOSOFK5.js → upgrade-lock-DMC66XTA.js} +4 -4
  125. package/dist/{usage-4FVOG3QN.js → usage-MBT3U2VX.js} +3 -3
  126. package/package.json +1 -1
@@ -3,24 +3,24 @@ import {
3
3
  expectedLaunchCapabilities,
4
4
  hasSpawnProvider,
5
5
  resolveControlPolicy
6
- } from "./chunk-DADN6GJO.js";
6
+ } from "./chunk-SVE32G6W.js";
7
7
  import {
8
8
  daemonHasRemoteProof,
9
9
  daemonServiceManagerAvailable,
10
10
  hasDaemonServiceDefinition,
11
11
  readDaemonNeedsLogin,
12
12
  readDaemonStatus
13
- } from "./chunk-HT5WOP2M.js";
13
+ } from "./chunk-OBRDREJD.js";
14
14
  import {
15
15
  readControlMode,
16
16
  readKeySource
17
- } from "./chunk-LGQQUQDZ.js";
17
+ } from "./chunk-PETLGHDR.js";
18
18
  import {
19
19
  getMachineId
20
- } from "./chunk-CNFM6JEV.js";
20
+ } from "./chunk-RD2WTV72.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-32F3BWRY.js";
23
+ } from "./chunk-KU2FFKWS.js";
24
24
  import {
25
25
  getPackageVersion
26
26
  } from "./chunk-ZVU6WMMU.js";
@@ -9,7 +9,7 @@ import {
9
9
  isSetupConnectMode,
10
10
  isValidApiKey,
11
11
  normalizeAgentId
12
- } from "./chunk-VE333PL5.js";
12
+ } from "./chunk-ABAIOLV5.js";
13
13
 
14
14
  // src/setup/options.ts
15
15
  var AGENT_CHOICES = SETUP_AGENT_CHOICES;
@@ -471,9 +471,9 @@ var installGlobally = (options) => {
471
471
  }
472
472
  const started = (async () => {
473
473
  if (!npmIsOnPath()) throw new NpmMissingError();
474
- const { withUpgradeLock } = await import("./global-upgrade-QOAUUHZ6.js");
475
- const { installWithUpgradeLock, ownsUpgradeLock } = await import("./upgrade-lock-QZOSOFK5.js");
476
- const { autoUpdateLock } = await import("./paths-ZOS6Y3PS.js");
474
+ const { withUpgradeLock } = await import("./global-upgrade-PUHR6IUT.js");
475
+ const { installWithUpgradeLock, ownsUpgradeLock } = await import("./upgrade-lock-DMC66XTA.js");
476
+ const { autoUpdateLock } = await import("./paths-HXV4TRDG.js");
477
477
  let result = "skipped";
478
478
  const install = async () => {
479
479
  const platform = process.platform;
@@ -5,19 +5,19 @@ import {
5
5
  hermesAppWiringRecord,
6
6
  hermesConfigReceipt,
7
7
  hermesSetupReceipt
8
- } from "./chunk-7EGNVZLK.js";
8
+ } from "./chunk-LLVX57ZC.js";
9
9
  import {
10
10
  readJsonSafe,
11
11
  resolvePathBinary,
12
12
  writeJsonAtomic
13
- } from "./chunk-I7UZODYO.js";
13
+ } from "./chunk-D4A277IY.js";
14
14
  import {
15
15
  isNewerVersion,
16
16
  isReleaseVersion
17
17
  } from "./chunk-ZVU6WMMU.js";
18
18
  import {
19
19
  isRecord
20
- } from "./chunk-VE333PL5.js";
20
+ } from "./chunk-ABAIOLV5.js";
21
21
 
22
22
  // src/hermes/plugin-payload.ts
23
23
  import { createHash } from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  DEFAULT_SESSION
3
- } from "./chunk-INNH7EUK.js";
3
+ } from "./chunk-Q2PKD73S.js";
4
4
 
5
5
  // src/answer.ts
6
6
  var isDeferAnswer = (value) => value === "defer";
@@ -1,24 +1,26 @@
1
1
  import {
2
2
  APPROVAL_RULES_PATH,
3
3
  canChangeApprovalSettings
4
- } from "./chunk-5DTOMJVD.js";
4
+ } from "./chunk-GSV75E67.js";
5
5
  import {
6
6
  callMcpTool
7
- } from "./chunk-NWSGMYX7.js";
7
+ } from "./chunk-EX76IRRF.js";
8
8
  import {
9
9
  absoluteUrl
10
- } from "./chunk-JJNO3ACZ.js";
10
+ } from "./chunk-GVEIAGZ5.js";
11
11
  import {
12
12
  getBaseUrl
13
- } from "./chunk-32F3BWRY.js";
13
+ } from "./chunk-KU2FFKWS.js";
14
14
  import {
15
15
  NPX_LATEST_COMMAND
16
- } from "./chunk-E4XGV5UG.js";
16
+ } from "./chunk-7ECQUETY.js";
17
17
  import {
18
+ AGENT_STOP_DEFAULT_SECONDS,
18
19
  APPROVAL_MODE_META,
20
+ SETUP_VERIFICATION_SENDER,
19
21
  classifyConfirmResponse,
20
22
  isAnswerSource
21
- } from "./chunk-VE333PL5.js";
23
+ } from "./chunk-ABAIOLV5.js";
22
24
 
23
25
  // src/reach.ts
24
26
  var reachVerdict = (channels) => {
@@ -91,7 +93,7 @@ var describeJustPairedRepair = (verdict) => {
91
93
 
92
94
  // src/setup/verify.ts
93
95
  var plural2 = (count, one) => `${count} ${one}${count === 1 ? "" : "s"}`;
94
- var SETUP_AGENT_NAME = "Pushary setup";
96
+ var SETUP_AGENT_NAME = SETUP_VERIFICATION_SENDER.agentName;
95
97
  var ownAppPlatforms = (channels) => channels.yours?.appPlatforms ?? channels.appPlatforms;
96
98
  var describeRecipients = (push, channels) => {
97
99
  const parts = [];
@@ -122,11 +124,7 @@ var classifyDelivery = (channels, push) => {
122
124
  return { kind: "delivered", recipients: push.total, deviceLabel: describeRecipients(push, channels) };
123
125
  };
124
126
  var sendTestNotification = async (apiKey) => {
125
- const result = await callMcpTool(apiKey, "send_notification", {
126
- title: "Pushary is connected",
127
- body: "This setup notification reached you. Agent hooks still need a real-agent check.",
128
- agentName: SETUP_AGENT_NAME
129
- }, { timeoutMs: 2e4 });
127
+ const result = await callMcpTool(apiKey, "send_notification", { ...SETUP_VERIFICATION_SENDER }, { timeoutMs: 2e4 });
130
128
  const toCount = (value) => typeof value === "number" && Number.isFinite(value) ? value : 0;
131
129
  const app = toCount(result.delivery?.mobile?.recipients);
132
130
  const web = toCount(result.delivery?.web?.recipients);
@@ -259,6 +257,8 @@ var verifyRoundTrip = async (apiKey, agentName = SETUP_AGENT_NAME, deps = {}) =>
259
257
  }
260
258
  let answerObserved = false;
261
259
  try {
260
+ if (asked.status === "stopped") return { kind: "stopped" };
261
+ if (asked.status === "terminal") return { kind: "terminal" };
262
262
  if (asked.noDevices || asked.warning) return { kind: "no-recipients" };
263
263
  if (asked.mode === "notify_only" || asked.status === "notified") return { kind: "notify-only" };
264
264
  if (!asked.correlationId) return { kind: "error", detail: "no correlationId returned" };
@@ -317,6 +317,8 @@ var unansweredNextStep = (appPlatforms) => {
317
317
  };
318
318
  var PHONE_APPROVAL_MODES = ["push_only", "push_first"];
319
319
  var NOTIFY_ONLY_SENT = `Sent. This site is set to ${APPROVAL_MODE_META.notify_only.label}, so questions never wait for an answer.`;
320
+ var IN_AGENT_NOT_SENT = `Not sent to your phone. Questions are answered in the agent right now, because approvals are set to ${APPROVAL_MODE_META.terminal_only.label} or are muted.`;
321
+ var AGENT_STOP_MINUTES = Math.round(AGENT_STOP_DEFAULT_SECONDS / 60);
320
322
  var phoneApprovalModeLabels = PHONE_APPROVAL_MODES.map((mode) => APPROVAL_MODE_META[mode].label).join(" or ");
321
323
  var phoneApprovalModeCommands = PHONE_APPROVAL_MODES.map((mode) => `pushary mode ${mode}`).join(" or ");
322
324
  var answerFromYourPhoneSteps = (baseUrl, keyScope) => {
@@ -355,6 +357,21 @@ var describeRoundTripOutcome = (outcome, { appPlatforms = [], baseUrl = getBaseU
355
357
  "Or pushary pair --app if you already have the Pushary app."
356
358
  ]
357
359
  };
360
+ case "stopped":
361
+ return {
362
+ ok: false,
363
+ message: "Agents are stopped, so no test question was sent.",
364
+ next: [
365
+ `Stop all agents is on for this workspace. Pushary denies approval requests and sends no questions until it lifts, ${AGENT_STOP_MINUTES} minutes after it was last pressed.`,
366
+ "Run pushary doctor --roundtrip after that."
367
+ ]
368
+ };
369
+ case "terminal":
370
+ return {
371
+ ok: true,
372
+ message: IN_AGENT_NOT_SENT,
373
+ next: [...answerFromYourPhoneSteps(baseUrl, keyScope)]
374
+ };
358
375
  case "error":
359
376
  return {
360
377
  ok: false,
@@ -367,6 +384,11 @@ var describeRoundTrip = (outcome, context = {}) => {
367
384
  const report = describeRoundTripOutcome(outcome, context);
368
385
  return { ...report, next: [...report.next, "Agent hook activation remains unverified. Restart your agent and check one real approval."] };
369
386
  };
387
+ var roundTripWasAnswered = (outcome) => {
388
+ if (outcome?.kind === "answered") return true;
389
+ if (outcome?.kind === "unanswered") return false;
390
+ return null;
391
+ };
370
392
  var roundTripEvidence = (outcome) => ({
371
393
  kind: outcome?.kind ?? "skipped",
372
394
  ...outcome?.kind === "answered" ? {
@@ -393,5 +415,6 @@ export {
393
415
  describeAnswerTestPrompt,
394
416
  describeRoundTripOutcome,
395
417
  describeRoundTrip,
418
+ roundTripWasAnswered,
396
419
  roundTripEvidence
397
420
  };
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  keyCheckFromResponse
3
- } from "./chunk-JJNO3ACZ.js";
3
+ } from "./chunk-GVEIAGZ5.js";
4
4
  import {
5
5
  installNetworkDefaults
6
- } from "./chunk-QCSPLJL6.js";
6
+ } from "./chunk-OAWIPPYH.js";
7
7
  import {
8
8
  getBaseUrl
9
- } from "./chunk-32F3BWRY.js";
9
+ } from "./chunk-KU2FFKWS.js";
10
10
  import {
11
11
  isRecord,
12
12
  isToolErrorResult,
13
13
  toolFailureCodeOfResult
14
- } from "./chunk-VE333PL5.js";
14
+ } from "./chunk-ABAIOLV5.js";
15
15
 
16
16
  // src/retry.ts
17
17
  var isRetryable = (err) => {
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  announceSubscriptionRequired,
3
3
  isDeferAnswer
4
- } from "./chunk-URJHH72Z.js";
4
+ } from "./chunk-EJEAHC7H.js";
5
5
  import {
6
6
  AUTO_DECISION_WINDOW_MS,
7
7
  DEFAULT_SESSION,
8
8
  claimThrottle,
9
9
  releaseThrottle,
10
10
  reportEvent
11
- } from "./chunk-INNH7EUK.js";
11
+ } from "./chunk-Q2PKD73S.js";
12
12
  import {
13
13
  deriveToolTarget,
14
14
  permissionDeniedAction
15
- } from "./chunk-FAM2TLFC.js";
15
+ } from "./chunk-KDN7AMAQ.js";
16
16
  import {
17
17
  askUser,
18
18
  isDecisionStopped,
19
19
  isQuestionLimitRefusal,
20
20
  waitForQuestion
21
- } from "./chunk-FSJYYZ3G.js";
21
+ } from "./chunk-2YFTIQM5.js";
22
22
  import {
23
23
  SubscriptionRequiredError
24
- } from "./chunk-NWSGMYX7.js";
24
+ } from "./chunk-EX76IRRF.js";
25
25
  import {
26
26
  getMachineId
27
- } from "./chunk-CNFM6JEV.js";
27
+ } from "./chunk-RD2WTV72.js";
28
28
  import {
29
29
  ASK_CONTEXT_MAX,
30
30
  agentQuestionContext,
@@ -36,7 +36,7 @@ import {
36
36
  questionsShownAsASet,
37
37
  shouldDeferToNativeMode,
38
38
  wireVerdictFor
39
- } from "./chunk-VE333PL5.js";
39
+ } from "./chunk-ABAIOLV5.js";
40
40
 
41
41
  // src/machine-decision-audit.ts
42
42
  import { basename } from "path";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  absoluteUrl
3
- } from "./chunk-JJNO3ACZ.js";
3
+ } from "./chunk-GVEIAGZ5.js";
4
4
  import {
5
5
  KEY_SCOPE
6
- } from "./chunk-VE333PL5.js";
6
+ } from "./chunk-ABAIOLV5.js";
7
7
 
8
8
  // src/cli/approval-settings-pages.ts
9
9
  var API_KEYS_PATH = "/dashboard/agent/settings";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  pusharyFetch
3
- } from "./chunk-QCSPLJL6.js";
3
+ } from "./chunk-OAWIPPYH.js";
4
4
  import {
5
5
  getBaseUrl
6
- } from "./chunk-32F3BWRY.js";
6
+ } from "./chunk-KU2FFKWS.js";
7
7
  import {
8
8
  NetworkError
9
9
  } from "./chunk-PPY5N2E6.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  isValidApiKey,
15
15
  normalizeKeyScope
16
- } from "./chunk-VE333PL5.js";
16
+ } from "./chunk-ABAIOLV5.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
  configFilePath
3
- } from "./chunk-32F3BWRY.js";
3
+ } from "./chunk-KU2FFKWS.js";
4
4
  import {
5
5
  normalizeInstallSource
6
- } from "./chunk-VE333PL5.js";
6
+ } from "./chunk-ABAIOLV5.js";
7
7
 
8
8
  // src/install-source.ts
9
9
  import { readFileSync } from "fs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readOwnerOnlyJson,
3
3
  transcriptReadPositionSchema
4
- } from "./chunk-7MN3KPHM.js";
4
+ } from "./chunk-PRH7XNAT.js";
5
5
  import {
6
6
  external_exports
7
7
  } from "./chunk-XMSDA5WA.js";
@@ -2,7 +2,7 @@ import {
2
2
  isApprovalMode,
3
3
  isRecord,
4
4
  isTimeoutAction
5
- } from "./chunk-VE333PL5.js";
5
+ } from "./chunk-ABAIOLV5.js";
6
6
 
7
7
  // src/cli/settings-response.ts
8
8
  var isFiniteNumber = (value) => typeof value === "number" && Number.isFinite(value);
@@ -4,24 +4,24 @@ import {
4
4
  outcomeOfFailedAsk,
5
5
  reportMachineDenial,
6
6
  storedWaitDeadline
7
- } from "./chunk-OGR5WSHI.js";
7
+ } from "./chunk-FVLMKRSH.js";
8
8
  import {
9
9
  isGatingMoment,
10
10
  recordKeylessMoment
11
- } from "./chunk-MWXX34K4.js";
11
+ } from "./chunk-ZAXB2CFU.js";
12
12
  import {
13
13
  isAdmitted,
14
14
  readAdmissionRules
15
- } from "./chunk-VMUBIBHQ.js";
15
+ } from "./chunk-BANK74ZZ.js";
16
16
  import {
17
17
  isDeferAnswer,
18
18
  oncePerSession
19
- } from "./chunk-URJHH72Z.js";
19
+ } from "./chunk-EJEAHC7H.js";
20
20
  import {
21
21
  activeHookSource,
22
22
  activeIdentity,
23
23
  namedSource
24
- } from "./chunk-ALT4KW5M.js";
24
+ } from "./chunk-BGJ3SXTZ.js";
25
25
  import {
26
26
  DEFAULT_SESSION,
27
27
  approvalAwaitingRetry,
@@ -37,7 +37,7 @@ import {
37
37
  recordBlockedActionHint,
38
38
  reportEvent,
39
39
  settleQuestionsForToolUse
40
- } from "./chunk-INNH7EUK.js";
40
+ } from "./chunk-Q2PKD73S.js";
41
41
  import {
42
42
  UNNAMED_ACTION,
43
43
  deriveAction,
@@ -47,10 +47,10 @@ import {
47
47
  describeToolCall,
48
48
  permissionDeniedAction,
49
49
  scopePathFor
50
- } from "./chunk-FAM2TLFC.js";
50
+ } from "./chunk-KDN7AMAQ.js";
51
51
  import {
52
52
  repoKeyFor
53
- } from "./chunk-K6QLKUCT.js";
53
+ } from "./chunk-CEUWBQF2.js";
54
54
  import {
55
55
  askUser,
56
56
  cancelQuestion,
@@ -67,20 +67,20 @@ import {
67
67
  waitForQuestion,
68
68
  waitsForThePhone,
69
69
  withdrawQuestion
70
- } from "./chunk-FSJYYZ3G.js";
70
+ } from "./chunk-2YFTIQM5.js";
71
71
  import {
72
72
  getMachineId
73
- } from "./chunk-CNFM6JEV.js";
73
+ } from "./chunk-RD2WTV72.js";
74
74
  import {
75
75
  claudeConfigDir
76
- } from "./chunk-7EGNVZLK.js";
76
+ } from "./chunk-LLVX57ZC.js";
77
77
  import {
78
78
  getApiKey,
79
79
  getBaseUrl
80
- } from "./chunk-32F3BWRY.js";
80
+ } from "./chunk-KU2FFKWS.js";
81
81
  import {
82
82
  NPX_LATEST_COMMAND
83
- } from "./chunk-E4XGV5UG.js";
83
+ } from "./chunk-7ECQUETY.js";
84
84
  import {
85
85
  AGENT_QUESTION_STRATEGY,
86
86
  AGENT_QUESTION_TOOL,
@@ -135,7 +135,7 @@ import {
135
135
  terminalStaysLiveForTheCall,
136
136
  timeoutActionWithoutLocalPrompt,
137
137
  unansweredRefusalReason
138
- } from "./chunk-VE333PL5.js";
138
+ } from "./chunk-ABAIOLV5.js";
139
139
 
140
140
  // src/terminal-answer-watch.ts
141
141
  import { closeSync, openSync, readSync, statSync } from "fs";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  autoUpdateLock
3
- } from "./chunk-7EGNVZLK.js";
3
+ } from "./chunk-LLVX57ZC.js";
4
4
  import {
5
5
  installPackageGlobally,
6
6
  npmErrorMessage,
7
7
  writeJsonAtomic
8
- } from "./chunk-I7UZODYO.js";
8
+ } from "./chunk-D4A277IY.js";
9
9
 
10
10
  // src/upgrade-lock.ts
11
11
  import { fork } from "child_process";
@@ -3,13 +3,13 @@ import {
3
3
  NpmMissingError,
4
4
  NpmPermissionError,
5
5
  writeFileAtomic
6
- } from "./chunk-I7UZODYO.js";
6
+ } from "./chunk-D4A277IY.js";
7
7
  import {
8
8
  NPX_LATEST_COMMAND
9
- } from "./chunk-E4XGV5UG.js";
9
+ } from "./chunk-7ECQUETY.js";
10
10
  import {
11
11
  readSetupAgentFailures
12
- } from "./chunk-VE333PL5.js";
12
+ } from "./chunk-ABAIOLV5.js";
13
13
 
14
14
  // src/setup/config-write.ts
15
15
  var AgentConfigWriteError = class extends Error {
@@ -2,31 +2,31 @@ import {
2
2
  SIGNED_OUT_ON_MAC_MESSAGE,
3
3
  describeSignedOutKey,
4
4
  readSignedOutDiagnosis
5
- } from "./chunk-XBXBX7YF.js";
5
+ } from "./chunk-46MZBPY3.js";
6
6
  import {
7
7
  APPROVAL_RULES_PATH
8
- } from "./chunk-5DTOMJVD.js";
8
+ } from "./chunk-GSV75E67.js";
9
9
  import {
10
10
  createIo
11
11
  } from "./chunk-FO3MDD26.js";
12
12
  import {
13
13
  readKeySource
14
- } from "./chunk-LGQQUQDZ.js";
14
+ } from "./chunk-PETLGHDR.js";
15
15
  import {
16
16
  absoluteUrl,
17
17
  checkApiKey,
18
18
  describeKeyCheck,
19
19
  keyCheckFromResponse
20
- } from "./chunk-JJNO3ACZ.js";
20
+ } from "./chunk-GVEIAGZ5.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-32F3BWRY.js";
23
+ } from "./chunk-KU2FFKWS.js";
24
24
  import {
25
25
  EXIT
26
26
  } from "./chunk-KZERVKTD.js";
27
27
  import {
28
28
  KEY_SCOPE
29
- } from "./chunk-VE333PL5.js";
29
+ } from "./chunk-ABAIOLV5.js";
30
30
 
31
31
  // src/cli/report-key.ts
32
32
  var { dim, yellow } = createIo();
@@ -21,7 +21,7 @@ import {
21
21
  reportableSessionId,
22
22
  toToolLookup,
23
23
  truncateLine
24
- } from "./chunk-VE333PL5.js";
24
+ } from "./chunk-ABAIOLV5.js";
25
25
 
26
26
  // ../hook-mapping/src/describe.ts
27
27
  import { isAbsolute, relative, resolve } from "path";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  findNativeClaudeInstall
3
- } from "./chunk-K2NIENKY.js";
3
+ } from "./chunk-KRNY5Z6I.js";
4
4
  import {
5
5
  isFile
6
- } from "./chunk-I7UZODYO.js";
6
+ } from "./chunk-D4A277IY.js";
7
7
 
8
8
  // src/wrapper/claudeBinary.ts
9
9
  import { homedir } from "os";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isFile
3
- } from "./chunk-I7UZODYO.js";
3
+ } from "./chunk-D4A277IY.js";
4
4
 
5
5
  // src/claude-native-install.ts
6
6
  import { accessSync, constants } from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  NPX_LATEST_COMMAND
3
- } from "./chunk-E4XGV5UG.js";
3
+ } from "./chunk-7ECQUETY.js";
4
4
 
5
5
  // src/config.ts
6
6
  import { readFileSync } from "fs";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-7EGNVZLK.js";
3
+ } from "./chunk-LLVX57ZC.js";
4
4
  import {
5
5
  readJsonSafe
6
- } from "./chunk-I7UZODYO.js";
6
+ } from "./chunk-D4A277IY.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-VE333PL5.js";
9
+ } from "./chunk-ABAIOLV5.js";
10
10
 
11
11
  // src/process-ownership.ts
12
12
  import { createHash, randomUUID } from "crypto";
@@ -4,7 +4,7 @@ import {
4
4
  quoteIfNeeded,
5
5
  shellDoubleQuoted,
6
6
  writeFileAtomic
7
- } from "./chunk-I7UZODYO.js";
7
+ } from "./chunk-D4A277IY.js";
8
8
  import {
9
9
  cmdShimScriptOf
10
10
  } from "./chunk-ZVU6WMMU.js";
@@ -15,7 +15,7 @@ import {
15
15
  HOOK_LOCATOR_BINARY,
16
16
  PRETOOLUSE_GATED_TOOLS,
17
17
  withHookHoldBudget
18
- } from "./chunk-VE333PL5.js";
18
+ } from "./chunk-ABAIOLV5.js";
19
19
 
20
20
  // src/setup/paths.ts
21
21
  import { createHash as createHash2 } from "crypto";
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-KZERVKTD.js";
8
8
  import {
9
9
  redactSecretsFromContent
10
- } from "./chunk-VE333PL5.js";
10
+ } from "./chunk-ABAIOLV5.js";
11
11
 
12
12
  // src/cli/json.ts
13
13
  var writeStdoutFully = (text) => new Promise((resolve, reject) => {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  readExistingMachineId
3
- } from "./chunk-CNFM6JEV.js";
3
+ } from "./chunk-RD2WTV72.js";
4
4
  import {
5
5
  getBaseUrl
6
- } from "./chunk-32F3BWRY.js";
6
+ } from "./chunk-KU2FFKWS.js";
7
7
  import {
8
8
  NetworkError
9
9
  } from "./chunk-PPY5N2E6.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  clientContextHeaders,
15
15
  redactSecretsFromContent
16
- } from "./chunk-VE333PL5.js";
16
+ } from "./chunk-ABAIOLV5.js";
17
17
 
18
18
  // src/cli/net.ts
19
19
  import { createRequire } from "module";
@@ -4,23 +4,23 @@ import {
4
4
  } from "./chunk-XHKBHWLX.js";
5
5
  import {
6
6
  readControlMode
7
- } from "./chunk-LGQQUQDZ.js";
7
+ } from "./chunk-PETLGHDR.js";
8
8
  import {
9
9
  getMachineId
10
- } from "./chunk-CNFM6JEV.js";
10
+ } from "./chunk-RD2WTV72.js";
11
11
  import {
12
12
  pusharyDir
13
- } from "./chunk-7EGNVZLK.js";
13
+ } from "./chunk-LLVX57ZC.js";
14
14
  import {
15
15
  readJsonSafe,
16
16
  resolveGlobalBinary,
17
17
  writeFileAtomic,
18
18
  writeJsonAtomic,
19
19
  writeJsonAtomicDurable
20
- } from "./chunk-I7UZODYO.js";
20
+ } from "./chunk-D4A277IY.js";
21
21
  import {
22
22
  getApiKey
23
- } from "./chunk-32F3BWRY.js";
23
+ } from "./chunk-KU2FFKWS.js";
24
24
  import {
25
25
  CLI_PACKAGE_NAMES,
26
26
  cmdShimScriptOf,
@@ -30,7 +30,7 @@ import {
30
30
  } from "./chunk-ZVU6WMMU.js";
31
31
  import {
32
32
  isRecord
33
- } from "./chunk-VE333PL5.js";
33
+ } from "./chunk-ABAIOLV5.js";
34
34
 
35
35
  // src/daemon-lifecycle.ts
36
36
  import { dirname, join, win32 as win32Path } from "path";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readTranscriptPreference
3
- } from "./chunk-LGQQUQDZ.js";
3
+ } from "./chunk-PETLGHDR.js";
4
4
 
5
5
  // src/transcript-setting.ts
6
6
  var transcriptEnvironmentPreference = () => {