pushary 1.9.112 → 1.9.114

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 (129) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{api-3AWH6PR6.js → api-PCAXOVGM.js} +11 -11
  3. package/dist/bin/pushary-audit.js +3 -3
  4. package/dist/bin/pushary-bell-hook.js +27 -27
  5. package/dist/bin/pushary-bell.js +10 -10
  6. package/dist/bin/pushary-claude.js +25 -25
  7. package/dist/bin/pushary-clean.js +34 -34
  8. package/dist/bin/pushary-codex-bridge.js +21 -21
  9. package/dist/bin/pushary-codex-hook.js +32 -32
  10. package/dist/bin/pushary-codex-session.js +8 -8
  11. package/dist/bin/pushary-codex.js +15 -15
  12. package/dist/bin/pushary-connect.js +28 -28
  13. package/dist/bin/pushary-cowork.js +5 -5
  14. package/dist/bin/pushary-daemon.js +42 -42
  15. package/dist/bin/pushary-disconnect.js +27 -27
  16. package/dist/bin/pushary-display-hook.js +17 -17
  17. package/dist/bin/pushary-doctor.js +42 -42
  18. package/dist/bin/pushary-elicitation-hook.js +27 -27
  19. package/dist/bin/pushary-gemini-bridge.js +15 -15
  20. package/dist/bin/pushary-gemini-hook.js +29 -29
  21. package/dist/bin/pushary-hook.js +32 -32
  22. package/dist/bin/pushary-login.js +21 -21
  23. package/dist/bin/pushary-logout.js +26 -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 +26 -26
  27. package/dist/bin/pushary-opencode-hook.js +28 -28
  28. package/dist/bin/pushary-permission-denied-hook.js +32 -32
  29. package/dist/bin/pushary-permission-hook.js +32 -32
  30. package/dist/bin/pushary-post-hook.js +26 -26
  31. package/dist/bin/pushary-prompt-hook.js +26 -26
  32. package/dist/bin/pushary-session-end-hook.js +26 -26
  33. package/dist/bin/pushary-session-start-hook.js +35 -35
  34. package/dist/bin/pushary-setup.js +51 -49
  35. package/dist/bin/pushary-stats.js +5 -5
  36. package/dist/bin/pushary-status.js +32 -32
  37. package/dist/bin/pushary-stop-hook.js +26 -26
  38. package/dist/bin/pushary-stopfailure-hook.js +26 -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 +40 -40
  43. package/dist/bin/pushary-wait.js +15 -15
  44. package/dist/bin/pushary.js +7 -7
  45. package/dist/{chunk-SLMDTNKA.js → chunk-22OATDEL.js} +3 -3
  46. package/dist/{chunk-OL5DDV6T.js → chunk-233KC6DP.js} +1 -1
  47. package/dist/{chunk-UEXWOQWA.js → chunk-24M7PB2Y.js} +5 -5
  48. package/dist/{chunk-M6U4CXYS.js → chunk-3D2J3T2M.js} +1 -1
  49. package/dist/{chunk-5CHFR4SM.js → chunk-3LJWADU2.js} +6 -6
  50. package/dist/{chunk-IAI6ZRVA.js → chunk-3ZU77DJH.js} +6 -6
  51. package/dist/{chunk-IFJ3XS2R.js → chunk-44HW5T6P.js} +2 -2
  52. package/dist/{chunk-MQTXIY32.js → chunk-44O6GG4I.js} +6 -6
  53. package/dist/{chunk-BI7NKEEZ.js → chunk-4EFZANH3.js} +1 -1
  54. package/dist/{chunk-UORHVH4P.js → chunk-4I6FWGZ5.js} +1 -1
  55. package/dist/{chunk-D6KWDBL5.js → chunk-53ROMSOB.js} +3 -3
  56. package/dist/{chunk-EKIA5CSV.js → chunk-5J2OGCUA.js} +1 -1
  57. package/dist/{chunk-D37U7BKX.js → chunk-5SUTYXCT.js} +1 -1
  58. package/dist/{chunk-P27ZXTQ6.js → chunk-6E2D22Y5.js} +2 -2
  59. package/dist/{chunk-RDUOOCAQ.js → chunk-AR3VX4UQ.js} +10 -10
  60. package/dist/{chunk-PDB5DALK.js → chunk-B5NKPU2E.js} +5 -5
  61. package/dist/{chunk-OXME4ZAD.js → chunk-BMZFL3HF.js} +4 -4
  62. package/dist/{chunk-YAULUCRG.js → chunk-BWSXWX6T.js} +2 -2
  63. package/dist/{chunk-LWVOQZ24.js → chunk-BYL7RNOM.js} +3 -3
  64. package/dist/{chunk-TCRITVSK.js → chunk-CG5SK6NF.js} +1 -1
  65. package/dist/{chunk-OW3WQWBA.js → chunk-D3XNQAQO.js} +2 -2
  66. package/dist/{chunk-M52Q62SO.js → chunk-DLCECUKY.js} +7 -7
  67. package/dist/{chunk-SOVLQH6W.js → chunk-DSXBMC2N.js} +5 -5
  68. package/dist/{chunk-VTK353JE.js → chunk-E3A77P52.js} +4 -4
  69. package/dist/{chunk-GJWBVRPF.js → chunk-F5TQ6TCH.js} +1 -1
  70. package/dist/{chunk-TC6TGMST.js → chunk-FLRVTAV4.js} +2 -2
  71. package/dist/{chunk-ZF2GMORS.js → chunk-FQSFN5ZE.js} +1 -1
  72. package/dist/{chunk-JG75WTA6.js → chunk-GBT74TNN.js} +2 -2
  73. package/dist/{chunk-MMHO6RWH.js → chunk-GGBGKQIZ.js} +8 -8
  74. package/dist/{chunk-SZQKXQIX.js → chunk-GI3266RE.js} +2 -2
  75. package/dist/{chunk-KBPUTWVR.js → chunk-GNP6I5XM.js} +2 -2
  76. package/dist/{chunk-BATGR3LA.js → chunk-GSJUGW3A.js} +1 -1
  77. package/dist/{chunk-JY2QQNS4.js → chunk-HJ566HEV.js} +3 -3
  78. package/dist/{chunk-DO63NPJX.js → chunk-I7HSE5LD.js} +11 -11
  79. package/dist/{chunk-QVGVFLKO.js → chunk-IWUYKDDW.js} +4 -4
  80. package/dist/{chunk-FWFOABQJ.js → chunk-JCHF4VR3.js} +1 -1
  81. package/dist/{chunk-QXRW4G7Q.js → chunk-JRW5HK32.js} +2 -2
  82. package/dist/{chunk-BS3IFLU4.js → chunk-JXN4SH6M.js} +1 -1
  83. package/dist/{chunk-2SCXLYWI.js → chunk-JXNDO7FB.js} +1 -1
  84. package/dist/{chunk-DRXRTLL4.js → chunk-KB2EEK5T.js} +5 -5
  85. package/dist/{chunk-KZ56PDQ2.js → chunk-KDTTCR3E.js} +3 -3
  86. package/dist/{chunk-2Y2HEOT6.js → chunk-KPCVIH52.js} +20 -1
  87. package/dist/{chunk-PFZGAUTM.js → chunk-LUBECFXJ.js} +1 -1
  88. package/dist/{chunk-6DWWTT2K.js → chunk-MDEXA6JD.js} +3 -3
  89. package/dist/{chunk-FF3UYU76.js → chunk-MPG4HYQ6.js} +3 -3
  90. package/dist/{chunk-VQ4C6Y2C.js → chunk-NG2EWF32.js} +2 -2
  91. package/dist/{chunk-66FYIYTH.js → chunk-NK5XT4RS.js} +4 -4
  92. package/dist/{chunk-KSPVTLCC.js → chunk-NPG4WCIM.js} +1 -1
  93. package/dist/{chunk-4D53JUQC.js → chunk-O5VJGP6H.js} +4 -4
  94. package/dist/{chunk-WQ5FG3ED.js → chunk-OJGHJIFQ.js} +5 -5
  95. package/dist/{chunk-5TWYZGZY.js → chunk-OR5SWH44.js} +10 -10
  96. package/dist/{chunk-PKVNCWKH.js → chunk-P4PLDBZK.js} +5 -5
  97. package/dist/{chunk-TFZUWGXG.js → chunk-PU2KHDRD.js} +22 -19
  98. package/dist/{chunk-HNR23BLB.js → chunk-Q4VB3DIL.js} +2 -2
  99. package/dist/{chunk-RXIZTNVQ.js → chunk-RIBCPWOB.js} +3 -3
  100. package/dist/{chunk-WOI2LYGL.js → chunk-RLBTKTOK.js} +2 -2
  101. package/dist/{chunk-3JCT4ABX.js → chunk-SI7EFQEU.js} +4 -4
  102. package/dist/{chunk-7M5QJE24.js → chunk-T2N7MEO3.js} +3 -3
  103. package/dist/{chunk-J3THYTYM.js → chunk-T5GJK54S.js} +4 -4
  104. package/dist/{chunk-FUFJKR53.js → chunk-TAGLGMA6.js} +2 -2
  105. package/dist/{chunk-KJFCQ5I5.js → chunk-TRSKGWEL.js} +5 -3
  106. package/dist/{chunk-F7F5PTQE.js → chunk-U35OB2HQ.js} +6 -6
  107. package/dist/{chunk-O465JWZH.js → chunk-UMR6UQZ4.js} +3 -3
  108. package/dist/{chunk-QGZ4BPFE.js → chunk-WGK2BIX6.js} +4 -4
  109. package/dist/{chunk-TTIMLMWS.js → chunk-WUREJCUJ.js} +5 -5
  110. package/dist/{chunk-BNZOA7RL.js → chunk-XL6DDWWT.js} +1 -1
  111. package/dist/{chunk-MZOJR4TO.js → chunk-XQFHB2EK.js} +3 -3
  112. package/dist/{chunk-BJ6INBM6.js → chunk-YM5OM2CI.js} +6 -6
  113. package/dist/{chunk-BSZNW4BV.js → chunk-Z2QWM27R.js} +6 -6
  114. package/dist/{chunk-5HEKYLZD.js → chunk-ZUZ4RXM7.js} +1 -1
  115. package/dist/{codex-app-cards-switch-XJAPXIM4.js → codex-app-cards-switch-UI2LQQ6C.js} +11 -11
  116. package/dist/{codex-card-routing-MT2V4TZW.js → codex-card-routing-IOVURY45.js} +2 -2
  117. package/dist/{codex-desktop-launch-T236LJJF.js → codex-desktop-launch-GAXMK6IM.js} +1 -1
  118. package/dist/{codex-session-launch-AHN34OHP.js → codex-session-launch-FYXRCD3I.js} +18 -18
  119. package/dist/{config-DVOF7LRQ.js → config-WOATWPOD.js} +3 -3
  120. package/dist/{global-upgrade-RMJEXXYL.js → global-upgrade-LDIMKAPF.js} +9 -9
  121. package/dist/{identity-3GG54AII.js → identity-GCRCIP45.js} +4 -4
  122. package/dist/{live-capabilities-AF5VHAIS.js → live-capabilities-DPMIMA3P.js} +4 -4
  123. package/dist/{paths-IAK4623I.js → paths-H5LP5HJB.js} +3 -3
  124. package/dist/{reapply-HTAXDM76.js → reapply-FBNJRZLQ.js} +28 -28
  125. package/dist/src/index.d.ts +2 -1
  126. package/dist/src/index.js +31 -31
  127. package/dist/{upgrade-lock-CNS3ST2M.js → upgrade-lock-76Z2YLIV.js} +4 -4
  128. package/dist/{usage-GPRH7WHQ.js → usage-SIELH6XD.js} +3 -3
  129. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-WOI2LYGL.js";
3
+ } from "./chunk-RLBTKTOK.js";
4
4
  import {
5
5
  writeFileAtomic
6
6
  } from "./chunk-T5I4PKOQ.js";
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-ROVLRXBI.js";
4
4
  import {
5
5
  parseVersion
6
- } from "./chunk-RXIZTNVQ.js";
6
+ } from "./chunk-RIBCPWOB.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-2Y2HEOT6.js";
9
+ } from "./chunk-KPCVIH52.js";
10
10
 
11
11
  // src/setup/agent-probe.ts
12
12
  import { execSync } from "child_process";
@@ -24,7 +24,7 @@ import {
24
24
  reportableSessionId,
25
25
  toToolLookup,
26
26
  truncateLine
27
- } from "./chunk-2Y2HEOT6.js";
27
+ } from "./chunk-KPCVIH52.js";
28
28
 
29
29
  // ../hook-mapping/src/commit-receipt.ts
30
30
  var COMMIT_OUTPUT_MAX_LENGTH = 65536;
@@ -7,10 +7,10 @@ import {
7
7
  codexHome,
8
8
  codexHooksJsonIn,
9
9
  isPusharyCodexCommand
10
- } from "./chunk-WOI2LYGL.js";
10
+ } from "./chunk-RLBTKTOK.js";
11
11
  import {
12
12
  resolvePathBinary
13
- } from "./chunk-RXIZTNVQ.js";
13
+ } from "./chunk-RIBCPWOB.js";
14
14
  import {
15
15
  getPackageVersion
16
16
  } from "./chunk-ZVU6WMMU.js";
@@ -1,31 +1,31 @@
1
1
  import {
2
2
  MANAGED_CLAUDE_SETTINGS_BY_PLATFORM
3
- } from "./chunk-P27ZXTQ6.js";
3
+ } from "./chunk-6E2D22Y5.js";
4
4
  import {
5
5
  declinedAgentsFile,
6
6
  readDeclinedAgents
7
- } from "./chunk-YAULUCRG.js";
7
+ } from "./chunk-BWSXWX6T.js";
8
8
  import {
9
9
  OPENCODE_HOOK_BINARY,
10
10
  openCodeConfigDir,
11
11
  openCodePluginArgv,
12
12
  openCodePluginFile
13
- } from "./chunk-DRXRTLL4.js";
13
+ } from "./chunk-KB2EEK5T.js";
14
14
  import {
15
15
  liveCursorGateCoverage
16
- } from "./chunk-QVGVFLKO.js";
16
+ } from "./chunk-IWUYKDDW.js";
17
17
  import {
18
18
  compatibleConfigFile,
19
19
  compatibleHookEvents,
20
20
  grokHome,
21
21
  parseConfigDocument
22
- } from "./chunk-WQ5FG3ED.js";
22
+ } from "./chunk-OJGHJIFQ.js";
23
23
  import {
24
24
  DEFAULT_HOOKS_KEY_PATH,
25
25
  GEMINI_HOOK_BINARY,
26
26
  GEMINI_HOOK_EVENTS,
27
27
  hooksAt
28
- } from "./chunk-66FYIYTH.js";
28
+ } from "./chunk-NK5XT4RS.js";
29
29
  import {
30
30
  CODEX_EARLIER_APPROVAL_MATCHERS,
31
31
  CODEX_HOOK_BINARY,
@@ -53,7 +53,7 @@ import {
53
53
  parseHookArgv,
54
54
  parseHookCommand,
55
55
  supportedClaudeEvents
56
- } from "./chunk-WOI2LYGL.js";
56
+ } from "./chunk-RLBTKTOK.js";
57
57
  import {
58
58
  readRegularJsonFile,
59
59
  readRegularTextFile
@@ -67,7 +67,7 @@ import {
67
67
  OPENCODE_APPROVAL_EVENT,
68
68
  isRecord,
69
69
  matcherMatchesEveryCall
70
- } from "./chunk-2Y2HEOT6.js";
70
+ } from "./chunk-KPCVIH52.js";
71
71
 
72
72
  // src/hook-wiring.ts
73
73
  import { createHash } from "crypto";
@@ -4,10 +4,10 @@ import {
4
4
  keyPrefix,
5
5
  readConfigFileKey,
6
6
  readMacAppKeyPrefix
7
- } from "./chunk-SLMDTNKA.js";
7
+ } from "./chunk-22OATDEL.js";
8
8
  import {
9
9
  NPX_LATEST_COMMAND
10
- } from "./chunk-FWFOABQJ.js";
10
+ } from "./chunk-JCHF4VR3.js";
11
11
 
12
12
  // src/key-signed-out.ts
13
13
  var VERDICT_BY_CHECK = {
@@ -9,13 +9,13 @@ import {
9
9
  installedCodexApp,
10
10
  readCodexAppRuntime,
11
11
  shellQuoted
12
- } from "./chunk-LWVOQZ24.js";
12
+ } from "./chunk-BYL7RNOM.js";
13
13
  import {
14
14
  writeHuman
15
15
  } from "./chunk-QCGNGEGE.js";
16
16
  import {
17
17
  xml
18
- } from "./chunk-IAI6ZRVA.js";
18
+ } from "./chunk-3ZU77DJH.js";
19
19
  import {
20
20
  writeFileAtomic
21
21
  } from "./chunk-T5I4PKOQ.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  NPX_LATEST_COMMAND
3
- } from "./chunk-FWFOABQJ.js";
3
+ } from "./chunk-JCHF4VR3.js";
4
4
 
5
5
  // src/config.ts
6
6
  import { readFileSync } from "fs";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  pusharyFetch
3
- } from "./chunk-MZOJR4TO.js";
3
+ } from "./chunk-XQFHB2EK.js";
4
4
  import {
5
5
  getBaseUrl
6
- } from "./chunk-BATGR3LA.js";
6
+ } from "./chunk-GSJUGW3A.js";
7
7
  import {
8
8
  NetworkError
9
9
  } from "./chunk-YU2EUD7O.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  isValidApiKey,
15
15
  normalizeKeyScope
16
- } from "./chunk-2Y2HEOT6.js";
16
+ } from "./chunk-KPCVIH52.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;
@@ -27,11 +27,11 @@ import {
27
27
  toolResultErrorText,
28
28
  transcriptTokensIn,
29
29
  transcriptUsageRequest
30
- } from "./chunk-ZF2GMORS.js";
30
+ } from "./chunk-FQSFN5ZE.js";
31
31
  import {
32
32
  branchFor,
33
33
  repoKeyFor
34
- } from "./chunk-UORHVH4P.js";
34
+ } from "./chunk-4I6FWGZ5.js";
35
35
  import {
36
36
  cancelQuestion,
37
37
  clientErrorKindOf,
@@ -39,34 +39,34 @@ import {
39
39
  reportClientError,
40
40
  sendNotification,
41
41
  waitForAnswer
42
- } from "./chunk-MQTXIY32.js";
42
+ } from "./chunk-44O6GG4I.js";
43
43
  import {
44
44
  withRetry
45
- } from "./chunk-TTIMLMWS.js";
45
+ } from "./chunk-WUREJCUJ.js";
46
46
  import {
47
47
  fetchAsCredential
48
- } from "./chunk-KSPVTLCC.js";
48
+ } from "./chunk-NPG4WCIM.js";
49
49
  import {
50
50
  getMachineId
51
- } from "./chunk-GJWBVRPF.js";
51
+ } from "./chunk-F5TQ6TCH.js";
52
52
  import {
53
53
  reportedInstallSource
54
- } from "./chunk-QXRW4G7Q.js";
54
+ } from "./chunk-JRW5HK32.js";
55
55
  import {
56
56
  IDLE_PROMPT_NOTIFICATION,
57
57
  NOTIFICATION_PUSH_TYPES,
58
58
  POSTTOOLUSE_MIRROR_ONLY_TOOLS,
59
59
  canonicalJson,
60
60
  claudeConfigDir
61
- } from "./chunk-WOI2LYGL.js";
61
+ } from "./chunk-RLBTKTOK.js";
62
62
  import {
63
63
  compareVersion,
64
64
  parseVersion
65
- } from "./chunk-RXIZTNVQ.js";
65
+ } from "./chunk-RIBCPWOB.js";
66
66
  import {
67
67
  getApiKey,
68
68
  getBaseUrl
69
- } from "./chunk-BATGR3LA.js";
69
+ } from "./chunk-GSJUGW3A.js";
70
70
  import {
71
71
  writeFileAtomic,
72
72
  writeJsonAtomicDurable
@@ -94,7 +94,7 @@ import {
94
94
  resolveAutoResolveOrigin,
95
95
  resolvePolicy,
96
96
  unansweredRefusalReason
97
- } from "./chunk-2Y2HEOT6.js";
97
+ } from "./chunk-KPCVIH52.js";
98
98
 
99
99
  // src/pending.ts
100
100
  import { join } from "path";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  pusharyHookExecutable
3
- } from "./chunk-66FYIYTH.js";
3
+ } from "./chunk-NK5XT4RS.js";
4
4
  import {
5
5
  bridgeResolvesToApp,
6
6
  cursorUserHooks,
7
7
  executableFileName,
8
8
  isBridgeLocator,
9
9
  liveBridgeProbe
10
- } from "./chunk-WOI2LYGL.js";
10
+ } from "./chunk-RLBTKTOK.js";
11
11
  import {
12
12
  atLeast,
13
13
  parseVersion
14
- } from "./chunk-RXIZTNVQ.js";
14
+ } from "./chunk-RIBCPWOB.js";
15
15
  import {
16
16
  CURSOR_GATE_COVERAGE,
17
17
  CURSOR_GATE_SCRIPT,
@@ -21,7 +21,7 @@ import {
21
21
  isCursorHookPayload,
22
22
  isRecord,
23
23
  toolsCoveredByGateEntry
24
- } from "./chunk-2Y2HEOT6.js";
24
+ } from "./chunk-KPCVIH52.js";
25
25
 
26
26
  // src/cursor-gate-registration.ts
27
27
  import { dirname, isAbsolute, join, resolve } from "path";
@@ -2,7 +2,7 @@ import {
2
2
  DISCONNECT_AGENT_IDS,
3
3
  SETUP_AGENT_CHOICES,
4
4
  isApprovalMode
5
- } from "./chunk-2Y2HEOT6.js";
5
+ } from "./chunk-KPCVIH52.js";
6
6
 
7
7
  // src/cli/mode-request.ts
8
8
  var parseDuration = (value) => {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  configFilePath
3
- } from "./chunk-BATGR3LA.js";
3
+ } from "./chunk-GSJUGW3A.js";
4
4
  import {
5
5
  normalizeInstallSource
6
- } from "./chunk-2Y2HEOT6.js";
6
+ } from "./chunk-KPCVIH52.js";
7
7
 
8
8
  // src/install-source.ts
9
9
  import { readFileSync } from "fs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  HOOK_HOLD_BUDGET_ENV,
3
3
  hookHoldBudgetProof
4
- } from "./chunk-2Y2HEOT6.js";
4
+ } from "./chunk-KPCVIH52.js";
5
5
 
6
6
  // src/hold-budget.ts
7
7
  var takeHookHoldBudget = (args = process.argv.slice(2), env = process.env) => {
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-BG4HHB7E.js";
8
8
  import {
9
9
  redactSecretsFromContent
10
- } from "./chunk-2Y2HEOT6.js";
10
+ } from "./chunk-KPCVIH52.js";
11
11
 
12
12
  // src/cli/json.ts
13
13
  var writeStdoutFully = (text) => new Promise((resolve, reject) => {
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  compatibleConfigFile
3
- } from "./chunk-WQ5FG3ED.js";
3
+ } from "./chunk-OJGHJIFQ.js";
4
4
  import {
5
5
  hookOwnerOf,
6
6
  hookOwnerOfCommands
7
- } from "./chunk-66FYIYTH.js";
7
+ } from "./chunk-NK5XT4RS.js";
8
8
  import {
9
9
  AGENT_CHOICES
10
- } from "./chunk-D37U7BKX.js";
10
+ } from "./chunk-5SUTYXCT.js";
11
11
  import {
12
12
  bridgeStub,
13
13
  claudeSettings,
@@ -19,7 +19,7 @@ import {
19
19
  resolveBridgeStub,
20
20
  vscodePluginDir,
21
21
  windowsNodeLauncherFor
22
- } from "./chunk-WOI2LYGL.js";
22
+ } from "./chunk-RLBTKTOK.js";
23
23
  import {
24
24
  readJsonSafe
25
25
  } from "./chunk-T5I4PKOQ.js";
@@ -29,7 +29,7 @@ import {
29
29
  OPENCODE_APPROVAL_EVENT,
30
30
  hookCompatibleProfile,
31
31
  isRecord
32
- } from "./chunk-2Y2HEOT6.js";
32
+ } from "./chunk-KPCVIH52.js";
33
33
 
34
34
  // src/opencode-plugin.ts
35
35
  var OPENCODE_PLUGIN_MARKER = "pushary-opencode-plugin w1";
@@ -3,15 +3,15 @@ import {
3
3
  } from "./chunk-XMSDA5WA.js";
4
4
  import {
5
5
  fetchAsCredential
6
- } from "./chunk-KSPVTLCC.js";
6
+ } from "./chunk-NPG4WCIM.js";
7
7
  import {
8
8
  getBaseUrl
9
- } from "./chunk-BATGR3LA.js";
9
+ } from "./chunk-GSJUGW3A.js";
10
10
  import {
11
11
  compressTranscriptRecord,
12
12
  redactSecretsFromContent,
13
13
  transcriptRecordPlaintext
14
- } from "./chunk-2Y2HEOT6.js";
14
+ } from "./chunk-KPCVIH52.js";
15
15
 
16
16
  // src/transcript-api.ts
17
17
  var providerRecipientSchema = external_exports.object({
@@ -8616,7 +8616,7 @@ var agentRulesAllowEveryInput = (rules, toolName, toolInputs, cwd) => rules.allo
8616
8616
  return allowRulesGrant(rules.allow, toolName, args) && !anyRuleRestrictsReading(rules.ask, toolName, reading) && !anyRuleRestrictsReading(rules.deny, toolName, reading) && !inputNeedsAPerson(toolName, toolInput);
8617
8617
  });
8618
8618
  var isDefaultRule = (policy) => policy.origin === "builtin" || policy.tool === WILDCARD_TOOL_PATTERN;
8619
- var isApprovalRoutePattern = (value) => typeof value === "object" && value !== null && typeof value.toolPattern === "string" && ["string", "undefined"].includes(typeof value.repoKey);
8619
+ var isApprovalRoutePattern = (value) => typeof value === "object" && value !== null && typeof value.toolPattern === "string" && ["string", "undefined"].includes(typeof value.repoKey) && ["boolean", "undefined"].includes(typeof value.answeredBySomeoneElse);
8620
8620
  var approvalRoutesOf = (config) => {
8621
8621
  const routes = config.approvalRoutes ?? [];
8622
8622
  return Array.isArray(routes) && routes.every(isApprovalRoutePattern) ? routes : null;
@@ -8633,6 +8633,22 @@ var aChosenRuleGoverns = (input, counts = everyRule) => {
8633
8633
  return governing !== void 0 && counts(governing.policy) || findBestRoute(routes, input.toolName, args, input.repoKey) !== void 0;
8634
8634
  });
8635
8635
  };
8636
+ var AUTO_PERMISSION_MODE = "auto";
8637
+ var routeDeliveredFor = (input, routes, toolInput) => findBestRoute(routes, input.toolName, policyArgForms(input.toolName, toolInput, input.cwd), input.sharedRepoKey ?? input.repoKey);
8638
+ var callWaitsForSomeoneElse = (input) => {
8639
+ const routes = approvalRoutesOf(input.config);
8640
+ if (routes === null) return false;
8641
+ return input.toolInputs.some((toolInput) => routeDeliveredFor(input, routes, toolInput)?.answeredBySomeoneElse === true);
8642
+ };
8643
+ var matchedRouteOf = (input) => {
8644
+ const routes = approvalRoutesOf(input.config);
8645
+ if (routes === null) return void 0;
8646
+ const matched = input.toolInputs.flatMap((toolInput) => routeDeliveredFor(input, routes, toolInput) ?? []);
8647
+ const route = matched.find((candidate) => candidate.answeredBySomeoneElse === true) ?? matched[0];
8648
+ if (route === void 0) return void 0;
8649
+ return route.repoKey ? { toolPattern: route.toolPattern, repoKey: route.repoKey } : { toolPattern: route.toolPattern };
8650
+ };
8651
+ var approvalRouteOutranksAutoMode = (input, verdict, permissionMode) => permissionMode === AUTO_PERMISSION_MODE && PRETOOLUSE_HANDLED_TOOLS.has(input.toolName) && verdict.kind === "gate" && !approvalWaitsAtTheAgentsPrompt(verdict.policy.mode) && !approvesWhenUnanswered(verdict.policy) && callWaitsForSomeoneElse(input);
8636
8652
  var claudeAllowlistOwnsCall = (input, verdict, permissionMode, rules) => rules !== null && verdict.kind === "gate" && !verdict.scopeReason && !aChosenRuleGoverns(input) && !isAskedInEveryMode(input.toolName) && claudeConsultsItsAllowlist(permissionMode) && agentRulesAllowEveryInput(rules, input.toolName, input.toolInputs, input.cwd);
8637
8653
  var claudePromptTakesTheCall = (facts, input, verdict) => verdict.kind === "gate" && !verdict.scopeReason && terminalStaysLiveForTheCall(facts) && noModeOverrideIsActive(input) && !aChosenRuleGoverns(input) && !editGoesToTheAgentsPrompt({ source: facts.source, event: "PreToolUse", permissionMode: facts.permissionMode }, input, verdict);
8638
8654
  var toPolicyVersion = (value) => typeof value === "string" || typeof value === "number" ? String(value) : null;
@@ -8828,6 +8844,7 @@ var unansweredRefusalReason = (paused) => paused ? SESSION_PAUSED_REASON : NO_RE
8828
8844
  var UNHEARD_PUSH_WINDOW_DAYS = 14;
8829
8845
  var DAY_MS = 24 * 60 * 60 * 1e3;
8830
8846
  var UNHEARD_PUSH_WINDOW_MS = UNHEARD_PUSH_WINDOW_DAYS * DAY_MS;
8847
+ var approvesWhenUnanswered = ({ mode, timeoutAction }) => mode === "push_only" && timeoutAction === "approve";
8831
8848
  var ELICITATION_ANSWERABLE_MODE = "form";
8832
8849
  var ELICITATION_MIN_OPTIONS = 2;
8833
8850
  var ELICITATION_MAX_MULTI_QUESTIONS = 4;
@@ -9212,6 +9229,8 @@ export {
9212
9229
  claudePermissionRulesFromSettings,
9213
9230
  claudeConsultsItsAllowlist,
9214
9231
  agentRulesAllowEveryInput,
9232
+ matchedRouteOf,
9233
+ approvalRouteOutranksAutoMode,
9215
9234
  claudeAllowlistOwnsCall,
9216
9235
  claudePromptTakesTheCall,
9217
9236
  modeStateFromResponse,
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-BG4HHB7E.js";
4
4
  import {
5
5
  renderCommandHelp
6
- } from "./chunk-FWFOABQJ.js";
6
+ } from "./chunk-JCHF4VR3.js";
7
7
  import {
8
8
  getPackageVersion
9
9
  } from "./chunk-ZVU6WMMU.js";
@@ -5,10 +5,10 @@ import {
5
5
  hermesAppWiringRecord,
6
6
  hermesConfigReceipt,
7
7
  hermesSetupReceipt
8
- } from "./chunk-WOI2LYGL.js";
8
+ } from "./chunk-RLBTKTOK.js";
9
9
  import {
10
10
  resolvePathBinary
11
- } from "./chunk-RXIZTNVQ.js";
11
+ } from "./chunk-RIBCPWOB.js";
12
12
  import {
13
13
  readJsonSafe,
14
14
  writeJsonAtomic
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-ZVU6WMMU.js";
20
20
  import {
21
21
  isRecord
22
- } from "./chunk-2Y2HEOT6.js";
22
+ } from "./chunk-KPCVIH52.js";
23
23
 
24
24
  // src/hermes/plugin-payload.ts
25
25
  import { createHash } from "crypto";
@@ -2,16 +2,16 @@ import {
2
2
  NpmInstallError,
3
3
  NpmMissingError,
4
4
  NpmPermissionError
5
- } from "./chunk-RXIZTNVQ.js";
5
+ } from "./chunk-RIBCPWOB.js";
6
6
  import {
7
7
  writeFileAtomic
8
8
  } from "./chunk-T5I4PKOQ.js";
9
9
  import {
10
10
  NPX_LATEST_COMMAND
11
- } from "./chunk-FWFOABQJ.js";
11
+ } from "./chunk-JCHF4VR3.js";
12
12
  import {
13
13
  readSetupAgentFailures
14
- } from "./chunk-2Y2HEOT6.js";
14
+ } from "./chunk-KPCVIH52.js";
15
15
 
16
16
  // src/setup/config-write.ts
17
17
  var AgentConfigWriteError = class extends Error {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  absoluteUrl
3
- } from "./chunk-JY2QQNS4.js";
3
+ } from "./chunk-HJ566HEV.js";
4
4
  import {
5
5
  KEY_SCOPE
6
- } from "./chunk-2Y2HEOT6.js";
6
+ } from "./chunk-KPCVIH52.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
  AGENT_CHOICES
3
- } from "./chunk-D37U7BKX.js";
3
+ } from "./chunk-5SUTYXCT.js";
4
4
  import {
5
5
  BELL_HOOK_BINARY
6
- } from "./chunk-OL5DDV6T.js";
6
+ } from "./chunk-233KC6DP.js";
7
7
  import {
8
8
  CLAUDE_HOOK_EVENTS,
9
9
  CODEX_HOOK_EVENTS,
@@ -15,13 +15,13 @@ import {
15
15
  isBridgeLocator,
16
16
  isProtectedByScope,
17
17
  registerHookEntry
18
- } from "./chunk-WOI2LYGL.js";
18
+ } from "./chunk-RLBTKTOK.js";
19
19
  import {
20
20
  CURSOR_GATE_EVENTS,
21
21
  HOOK_BUDGETS,
22
22
  HOOK_LOCATOR_BINARY,
23
23
  hookCommandHoldBudget
24
- } from "./chunk-2Y2HEOT6.js";
24
+ } from "./chunk-KPCVIH52.js";
25
25
 
26
26
  // src/gemini-config.ts
27
27
  var GEMINI_HOOK_BINARY = "pushary-gemini-hook";
@@ -5,7 +5,7 @@ import {
5
5
  MCP_CREDENTIAL_REJECTION_BODY,
6
6
  isRecord,
7
7
  responseRejectsCredential
8
- } from "./chunk-2Y2HEOT6.js";
8
+ } from "./chunk-KPCVIH52.js";
9
9
 
10
10
  // src/credential-rejection.ts
11
11
  import { createHash, randomUUID } from "crypto";
@@ -1,20 +1,20 @@
1
1
  import {
2
2
  openCodeConfigDirFrom
3
- } from "./chunk-DRXRTLL4.js";
3
+ } from "./chunk-KB2EEK5T.js";
4
4
  import {
5
5
  nativeClaudeInstallPath
6
6
  } from "./chunk-ROVLRXBI.js";
7
7
  import {
8
8
  grokHome
9
- } from "./chunk-WQ5FG3ED.js";
9
+ } from "./chunk-OJGHJIFQ.js";
10
10
  import {
11
11
  claudeConfigDir,
12
12
  clineDataDirectory,
13
13
  codexHomeFrom
14
- } from "./chunk-WOI2LYGL.js";
14
+ } from "./chunk-RLBTKTOK.js";
15
15
  import {
16
16
  HOOK_COMPATIBLE_PROFILES
17
- } from "./chunk-2Y2HEOT6.js";
17
+ } from "./chunk-KPCVIH52.js";
18
18
 
19
19
  // src/vscode-config.ts
20
20
  import { homedir } from "os";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  CLAUDE_CODE_AGENT
3
- } from "./chunk-DO63NPJX.js";
3
+ } from "./chunk-I7HSE5LD.js";
4
4
  import {
5
5
  addGeminiMcpServer,
6
6
  removeGeminiMcpServer
7
- } from "./chunk-66FYIYTH.js";
7
+ } from "./chunk-NK5XT4RS.js";
8
8
  import {
9
9
  compatibleToolLookup
10
- } from "./chunk-ZF2GMORS.js";
10
+ } from "./chunk-FQSFN5ZE.js";
11
11
  import {
12
12
  CLAUDE_HOOK_EVENTS,
13
13
  PUSHARY_MCP_URL,
@@ -19,7 +19,7 @@ import {
19
19
  isPusharyHook,
20
20
  registerHookEntry,
21
21
  removeClaudeMcpServers
22
- } from "./chunk-WOI2LYGL.js";
22
+ } from "./chunk-RLBTKTOK.js";
23
23
  import {
24
24
  HOOK_COMPATIBLE_PROFILES,
25
25
  PHONE_ANSWERED_TOOLS,
@@ -30,7 +30,7 @@ import {
30
30
  pusharyMissingReason,
31
31
  refusalOutput,
32
32
  withHookHoldBudget
33
- } from "./chunk-2Y2HEOT6.js";
33
+ } from "./chunk-KPCVIH52.js";
34
34
 
35
35
  // src/config-document.ts
36
36
  import { parse, stringify } from "smol-toml";
@@ -7,13 +7,13 @@ import {
7
7
  } from "./chunk-G66WIAST.js";
8
8
  import {
9
9
  ensureDaemonRunning
10
- } from "./chunk-IAI6ZRVA.js";
10
+ } from "./chunk-3ZU77DJH.js";
11
11
  import {
12
12
  hookOwnerOf
13
- } from "./chunk-66FYIYTH.js";
13
+ } from "./chunk-NK5XT4RS.js";
14
14
  import {
15
15
  hookMeaning
16
- } from "./chunk-ZF2GMORS.js";
16
+ } from "./chunk-FQSFN5ZE.js";
17
17
  import {
18
18
  buildTranscriptRecords,
19
19
  decodePublicKey,
@@ -24,29 +24,29 @@ import {
24
24
  recordSealerFor,
25
25
  uploadTranscriptRecords,
26
26
  wrapSessionKey
27
- } from "./chunk-KZ56PDQ2.js";
27
+ } from "./chunk-KDTTCR3E.js";
28
28
  import {
29
29
  external_exports
30
30
  } from "./chunk-XMSDA5WA.js";
31
31
  import {
32
32
  transcriptEnvironmentPreference,
33
33
  transcriptsEnabled
34
- } from "./chunk-EKIA5CSV.js";
34
+ } from "./chunk-5J2OGCUA.js";
35
35
  import {
36
36
  fetchAsCredential
37
- } from "./chunk-KSPVTLCC.js";
37
+ } from "./chunk-NPG4WCIM.js";
38
38
  import {
39
39
  readTranscriptPreference
40
- } from "./chunk-SLMDTNKA.js";
40
+ } from "./chunk-22OATDEL.js";
41
41
  import {
42
42
  claudeConfigDir,
43
43
  codexHome,
44
44
  pusharyDir
45
- } from "./chunk-WOI2LYGL.js";
45
+ } from "./chunk-RLBTKTOK.js";
46
46
  import {
47
47
  getApiKey,
48
48
  getBaseUrl
49
- } from "./chunk-BATGR3LA.js";
49
+ } from "./chunk-GSJUGW3A.js";
50
50
  import {
51
51
  writeJsonAtomic,
52
52
  writeJsonAtomicDurable
@@ -58,7 +58,7 @@ import {
58
58
  isHookSource,
59
59
  isRecord,
60
60
  redactSecretsFromContent
61
- } from "./chunk-2Y2HEOT6.js";
61
+ } from "./chunk-KPCVIH52.js";
62
62
 
63
63
  // src/transcript-recipient-pin.ts
64
64
  import { createHash } from "crypto";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  readMacAppAgentKey
3
- } from "./chunk-VTK353JE.js";
3
+ } from "./chunk-E3A77P52.js";
4
4
  import {
5
5
  API_KEYS_PATH
6
- } from "./chunk-VQ4C6Y2C.js";
6
+ } from "./chunk-NG2EWF32.js";
7
7
  import {
8
8
  absoluteUrl
9
- } from "./chunk-JY2QQNS4.js";
9
+ } from "./chunk-HJ566HEV.js";
10
10
  import {
11
11
  findExportedKeyLines,
12
12
  isAdoptedMacAppKey,
@@ -16,10 +16,10 @@ import {
16
16
  readConfigFileKey,
17
17
  readKeySource,
18
18
  readMacAppKeyPrefix
19
- } from "./chunk-SLMDTNKA.js";
19
+ } from "./chunk-22OATDEL.js";
20
20
  import {
21
21
  isValidApiKey
22
- } from "./chunk-2Y2HEOT6.js";
22
+ } from "./chunk-KPCVIH52.js";
23
23
 
24
24
  // src/key-revocation.ts
25
25
  var SELF_REVOKE_PATH = "/api/v1/server/keys/self/revoke";