pushary 1.9.129 → 1.9.132

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 (132) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/{api-WTQOMRGG.js → api-7CZR7B53.js} +11 -11
  3. package/dist/bin/pushary-audit.js +3 -3
  4. package/dist/bin/pushary-bell-hook.js +28 -28
  5. package/dist/bin/pushary-bell.js +10 -10
  6. package/dist/bin/pushary-claude.js +27 -27
  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 +35 -35
  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 +44 -44
  15. package/dist/bin/pushary-disconnect.js +27 -27
  16. package/dist/bin/pushary-display-hook.js +9 -4
  17. package/dist/bin/pushary-doctor.js +42 -42
  18. package/dist/bin/pushary-elicitation-hook.js +28 -28
  19. package/dist/bin/pushary-gemini-bridge.js +15 -15
  20. package/dist/bin/pushary-gemini-hook.js +32 -32
  21. package/dist/bin/pushary-hook.js +34 -34
  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 +27 -27
  27. package/dist/bin/pushary-opencode-hook.js +31 -31
  28. package/dist/bin/pushary-permission-denied-hook.js +34 -34
  29. package/dist/bin/pushary-permission-hook.js +34 -34
  30. package/dist/bin/pushary-post-hook.js +27 -27
  31. package/dist/bin/pushary-prompt-hook.js +27 -27
  32. package/dist/bin/pushary-session-end-hook.js +27 -27
  33. package/dist/bin/pushary-session-start-hook.js +36 -36
  34. package/dist/bin/pushary-setup.js +51 -51
  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 +27 -27
  38. package/dist/bin/pushary-stopfailure-hook.js +27 -27
  39. package/dist/bin/pushary-suggestions.js +15 -15
  40. package/dist/bin/pushary-transcript-register.js +19 -19
  41. package/dist/bin/pushary-transcripts.js +27 -27
  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-VOFCKEIR.js → chunk-237FYIVC.js} +6 -5
  46. package/dist/{chunk-JWDGPKKL.js → chunk-25UU4Q4V.js} +1 -1
  47. package/dist/{chunk-3SREEE2O.js → chunk-2KN53MPE.js} +5 -5
  48. package/dist/{chunk-TSZDE5NK.js → chunk-2U4MCUVZ.js} +1 -1
  49. package/dist/{chunk-E4LKBXGP.js → chunk-2YS7YEUW.js} +2 -2
  50. package/dist/{chunk-EJEYQOKX.js → chunk-3PGANQ4K.js} +6 -6
  51. package/dist/{chunk-KWFZUAET.js → chunk-3TKTZOKG.js} +3 -3
  52. package/dist/{chunk-44ZTLOVE.js → chunk-42PVKPHM.js} +1 -1
  53. package/dist/{chunk-PG3BXBVY.js → chunk-4EGRD5RS.js} +15 -15
  54. package/dist/{chunk-G4JW4QPR.js → chunk-4EQOCSJW.js} +1 -1
  55. package/dist/{chunk-2KVK6YQR.js → chunk-6JY44IZI.js} +8 -8
  56. package/dist/{chunk-G6IAWKZ3.js → chunk-75FJZR2M.js} +3 -3
  57. package/dist/{chunk-C74UXIKG.js → chunk-7MIT5C7B.js} +3 -3
  58. package/dist/{chunk-SISRFK3I.js → chunk-A44MRVWG.js} +27 -11
  59. package/dist/{chunk-ODZBKNIA.js → chunk-BKH4LQJC.js} +2 -2
  60. package/dist/{chunk-NQSQC5OC.js → chunk-BTDEBPPR.js} +5 -5
  61. package/dist/{chunk-FUDV2SJ6.js → chunk-C4UH6YPD.js} +4 -4
  62. package/dist/{chunk-6X2O5QI7.js → chunk-CVBSETPW.js} +3 -3
  63. package/dist/{chunk-TEIL5BHZ.js → chunk-D2KJKAYM.js} +4 -4
  64. package/dist/{chunk-BNJ4H57M.js → chunk-DS7XMYUB.js} +1 -1
  65. package/dist/{chunk-3EXJMRSC.js → chunk-EA5EASYT.js} +1 -1
  66. package/dist/{chunk-HN63QQWB.js → chunk-EPPH5RMJ.js} +4 -4
  67. package/dist/{chunk-J74XLYS2.js → chunk-FP4WRSWE.js} +3 -3
  68. package/dist/{chunk-BWYZ3YZM.js → chunk-FT5MTCKU.js} +2 -2
  69. package/dist/{chunk-6F6WN6C2.js → chunk-FTH4TSJ2.js} +4 -4
  70. package/dist/{chunk-OUTWFS6J.js → chunk-GKZMBU6T.js} +2 -2
  71. package/dist/{chunk-QLIH4BJ6.js → chunk-GQPXW6BL.js} +1 -1
  72. package/dist/{chunk-R5TGBKKZ.js → chunk-HOPJEPL4.js} +4 -4
  73. package/dist/{chunk-Y57QT5SH.js → chunk-HW63OEVM.js} +3 -3
  74. package/dist/{chunk-WPER6NNY.js → chunk-IZJDVOJV.js} +5 -5
  75. package/dist/{chunk-PKZJZWYN.js → chunk-J4UNR655.js} +6 -6
  76. package/dist/{chunk-MUCBJ2KT.js → chunk-J6WO5ZR5.js} +2 -2
  77. package/dist/{chunk-UZCD6OFJ.js → chunk-JYCAAQUW.js} +1 -1
  78. package/dist/{chunk-FN3AKOE6.js → chunk-KBOANW7J.js} +6 -6
  79. package/dist/{chunk-VHSN7GCK.js → chunk-KIWFCW7M.js} +7 -5
  80. package/dist/{chunk-R5ZFWL4F.js → chunk-KWICQAP7.js} +3 -3
  81. package/dist/{chunk-VSNVDY55.js → chunk-L5RSLIBQ.js} +6 -6
  82. package/dist/{chunk-JK3IYOOR.js → chunk-LBMCQWRX.js} +4 -4
  83. package/dist/{chunk-OOCIVAMY.js → chunk-LR3PIGRS.js} +3 -3
  84. package/dist/{chunk-JP3S4FPO.js → chunk-M65LPNIO.js} +1 -0
  85. package/dist/{chunk-QFS7JNUD.js → chunk-MF5ZQX7C.js} +4 -4
  86. package/dist/{chunk-RS4BEWEZ.js → chunk-MJVDFNP2.js} +1 -1
  87. package/dist/{chunk-XXCJY3KQ.js → chunk-MRHGK3Q3.js} +11 -11
  88. package/dist/{chunk-S6G4C5LS.js → chunk-NJH6EGZN.js} +5 -5
  89. package/dist/{chunk-TFHTZ6GE.js → chunk-NSBWFX7H.js} +5 -5
  90. package/dist/{chunk-A5L3WBHV.js → chunk-NYFUU23B.js} +1 -1
  91. package/dist/{chunk-UDH2BDU2.js → chunk-PFHRW3LR.js} +3 -3
  92. package/dist/{chunk-S45FPA72.js → chunk-PG23ENSN.js} +2 -2
  93. package/dist/{chunk-W5QKCZ7X.js → chunk-PPUIIP3O.js} +11 -11
  94. package/dist/{chunk-OH67UPRF.js → chunk-QBJVECFY.js} +2 -2
  95. package/dist/{chunk-R4JOCIQM.js → chunk-RGVQOOGD.js} +1 -1
  96. package/dist/{chunk-EFTS75PF.js → chunk-RLQDVWZ4.js} +2 -2
  97. package/dist/{chunk-QZJ4NGSQ.js → chunk-RVGYXUOC.js} +3 -3
  98. package/dist/{chunk-7H2RWOO2.js → chunk-RZBV5KTF.js} +5 -5
  99. package/dist/{chunk-OUN5T5VX.js → chunk-S4HS6VTI.js} +1 -1
  100. package/dist/{chunk-V4OLQBSN.js → chunk-SZYKS433.js} +1 -1
  101. package/dist/{chunk-CFZRNQIQ.js → chunk-T6HX6OTY.js} +1 -1
  102. package/dist/{chunk-IGCXQDYL.js → chunk-U5AZKJ5O.js} +13 -12
  103. package/dist/{chunk-AN6I3TX7.js → chunk-UJZ5YHSR.js} +2 -2
  104. package/dist/{chunk-CCZML6KO.js → chunk-UZUDMZES.js} +3 -3
  105. package/dist/{chunk-VTT7U6TJ.js → chunk-V2T5ZDMP.js} +3 -3
  106. package/dist/{chunk-GVSIVBVT.js → chunk-VAE5JBR5.js} +1 -0
  107. package/dist/{chunk-AHEC2K7V.js → chunk-VO55SJSD.js} +7 -7
  108. package/dist/{chunk-Q7YNYPRY.js → chunk-VRUEKURE.js} +1 -1
  109. package/dist/{chunk-WLRSM634.js → chunk-W4FJR57E.js} +10 -6
  110. package/dist/{chunk-2MBD6JHB.js → chunk-WZ4SIRMH.js} +1 -1
  111. package/dist/{chunk-IAAP4OCC.js → chunk-X23GSBOH.js} +3 -3
  112. package/dist/{chunk-O3HKUUXP.js → chunk-XHC3UNOK.js} +1 -1
  113. package/dist/{chunk-NXUZBYBA.js → chunk-XMZVQF2J.js} +1 -1
  114. package/dist/{chunk-AHHPHJOE.js → chunk-XWUPOTJV.js} +5 -5
  115. package/dist/{chunk-4U55UQ7X.js → chunk-YI6RR4JP.js} +4 -4
  116. package/dist/{chunk-36I6HFLZ.js → chunk-YNV5GURD.js} +5 -5
  117. package/dist/{chunk-D3YLMDPE.js → chunk-ZJPBTJED.js} +6 -6
  118. package/dist/{chunk-PBK24IVU.js → chunk-ZXJTTV7I.js} +2 -2
  119. package/dist/{codex-app-cards-switch-KMLJJA3K.js → codex-app-cards-switch-WDQBUF7K.js} +11 -11
  120. package/dist/{codex-card-routing-QZCKG6N5.js → codex-card-routing-X2HUY2AV.js} +2 -2
  121. package/dist/{codex-desktop-launch-BYR7AZRC.js → codex-desktop-launch-EQ4VH6QV.js} +1 -1
  122. package/dist/{codex-session-launch-B33B65NA.js → codex-session-launch-YGH5UUAH.js} +18 -18
  123. package/dist/{config-X4S5PT22.js → config-5SNDVPS2.js} +3 -3
  124. package/dist/{global-upgrade-KHN4VJ72.js → global-upgrade-U4V7KWH6.js} +9 -9
  125. package/dist/{identity-ANBW7VRX.js → identity-DCRNA3J3.js} +4 -4
  126. package/dist/{live-capabilities-7O6JXLIM.js → live-capabilities-H7J5ANZ3.js} +4 -4
  127. package/dist/{paths-PKHSS7QT.js → paths-3DUQGU4V.js} +3 -3
  128. package/dist/{reapply-2F24DBKV.js → reapply-LNVBPUWL.js} +28 -28
  129. package/dist/src/index.js +33 -33
  130. package/dist/{upgrade-lock-DVHGL55R.js → upgrade-lock-3T7JLBHT.js} +4 -4
  131. package/dist/{usage-FIAOA3QU.js → usage-XLJK7OTL.js} +3 -3
  132. package/package.json +1 -1
@@ -1,19 +1,20 @@
1
1
  import {
2
+ ownedOnlyByThisUser,
2
3
  readOwnerOnlyJson,
3
4
  savedTranscriptReadPositions
4
- } from "./chunk-GVSIVBVT.js";
5
+ } from "./chunk-VAE5JBR5.js";
5
6
  import {
6
7
  SESSION_HISTORY_RETENTION_DAYS
7
8
  } from "./chunk-G66WIAST.js";
8
9
  import {
9
10
  ensureDaemonRunning
10
- } from "./chunk-FN3AKOE6.js";
11
+ } from "./chunk-KBOANW7J.js";
11
12
  import {
12
13
  hookOwnerOf
13
- } from "./chunk-VOFCKEIR.js";
14
+ } from "./chunk-237FYIVC.js";
14
15
  import {
15
16
  hookMeaning
16
- } from "./chunk-UZCD6OFJ.js";
17
+ } from "./chunk-JYCAAQUW.js";
17
18
  import {
18
19
  buildTranscriptRecords,
19
20
  decodePublicKey,
@@ -24,29 +25,29 @@ import {
24
25
  recordSealerFor,
25
26
  uploadTranscriptRecords,
26
27
  wrapSessionKey
27
- } from "./chunk-R5ZFWL4F.js";
28
+ } from "./chunk-KWICQAP7.js";
28
29
  import {
29
30
  external_exports
30
31
  } from "./chunk-XMSDA5WA.js";
31
32
  import {
32
33
  transcriptEnvironmentPreference,
33
34
  transcriptsEnabled
34
- } from "./chunk-JWDGPKKL.js";
35
+ } from "./chunk-25UU4Q4V.js";
35
36
  import {
36
37
  fetchAsCredential
37
- } from "./chunk-44ZTLOVE.js";
38
+ } from "./chunk-42PVKPHM.js";
38
39
  import {
39
40
  readTranscriptPreference
40
- } from "./chunk-6X2O5QI7.js";
41
+ } from "./chunk-CVBSETPW.js";
41
42
  import {
42
43
  claudeConfigDir,
43
44
  codexHome,
44
45
  pusharyDir
45
- } from "./chunk-WLRSM634.js";
46
+ } from "./chunk-W4FJR57E.js";
46
47
  import {
47
48
  getApiKey,
48
49
  getBaseUrl
49
- } from "./chunk-CFZRNQIQ.js";
50
+ } from "./chunk-T6HX6OTY.js";
50
51
  import {
51
52
  writeJsonAtomic,
52
53
  writeJsonAtomicDurable
@@ -58,7 +59,7 @@ import {
58
59
  isHookSource,
59
60
  isRecord,
60
61
  redactSecretsFromContent
61
- } from "./chunk-JP3S4FPO.js";
62
+ } from "./chunk-M65LPNIO.js";
62
63
 
63
64
  // src/transcript-recipient-pin.ts
64
65
  import { createHash } from "crypto";
@@ -238,7 +239,7 @@ var readState = (sessionId, runtime) => {
238
239
  try {
239
240
  const path = fileFor(sessionId, runtime.directory);
240
241
  const info = lstatSync(path);
241
- if (!info.isFile() || info.nlink !== 1 || info.size > MAX_TAIL || (info.mode & 511) !== 384) return null;
242
+ if (!info.isFile() || info.nlink !== 1 || info.size > MAX_TAIL || !ownedOnlyByThisUser(info)) return null;
242
243
  const envelope = external_exports.object({ content: external_exports.string() }).parse(JSON.parse(readFileSync(path, "utf8")));
243
244
  const plain = decryptRecord(envelope.content, runtime.sessionKey);
244
245
  if (!plain) return null;
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-CYTPQDQY.js";
4
4
  import {
5
5
  parseVersion
6
- } from "./chunk-SISRFK3I.js";
6
+ } from "./chunk-A44MRVWG.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-JP3S4FPO.js";
9
+ } from "./chunk-M65LPNIO.js";
10
10
 
11
11
  // src/setup/agent-probe.ts
12
12
  import { execSync } from "child_process";
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-POFBE6ZY.js";
4
4
  import {
5
5
  autoUpdateState
6
- } from "./chunk-WLRSM634.js";
6
+ } from "./chunk-W4FJR57E.js";
7
7
  import {
8
8
  readJsonSafe,
9
9
  writeJsonAtomic
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-WIIMW5YO.js";
18
18
  import {
19
19
  isAutoUpdateResult
20
- } from "./chunk-JP3S4FPO.js";
20
+ } from "./chunk-M65LPNIO.js";
21
21
 
22
22
  // src/auto-update.ts
23
23
  import { spawn } from "child_process";
@@ -172,7 +172,7 @@ var updateAutoUpdateState = (statePath, patch) => {
172
172
  };
173
173
  var ignoreSpawnFailure = () => void 0;
174
174
  var spawnDetached = (command, args, cwd) => {
175
- const child = spawn(command, [...args], { cwd, detached: true, stdio: "ignore" });
175
+ const child = spawn(command, [...args], { cwd, detached: true, stdio: "ignore", windowsHide: true });
176
176
  child.on("error", ignoreSpawnFailure);
177
177
  child.unref();
178
178
  };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  readExistingMachineId
3
- } from "./chunk-BNJ4H57M.js";
3
+ } from "./chunk-DS7XMYUB.js";
4
4
  import {
5
5
  getBaseUrl
6
- } from "./chunk-CFZRNQIQ.js";
6
+ } from "./chunk-T6HX6OTY.js";
7
7
  import {
8
8
  NetworkError
9
9
  } from "./chunk-YU2EUD7O.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  clientContextHeaders,
15
15
  redactSecretsFromContent
16
- } from "./chunk-JP3S4FPO.js";
16
+ } from "./chunk-M65LPNIO.js";
17
17
 
18
18
  // src/cli/net.ts
19
19
  import { createRequire } from "module";
@@ -40,6 +40,7 @@ var savedTranscriptReadPositions = (file) => ({
40
40
 
41
41
  export {
42
42
  transcriptReadPositionSchema,
43
+ ownedOnlyByThisUser,
43
44
  readOwnerOnlyJson,
44
45
  savedTranscriptReadPositions
45
46
  };
@@ -4,7 +4,7 @@ import {
4
4
  postLiveSession,
5
5
  postLiveSessionUntilAccepted,
6
6
  startLiveSessionHeartbeat
7
- } from "./chunk-NXUZBYBA.js";
7
+ } from "./chunk-XMZVQF2J.js";
8
8
  import {
9
9
  CommandReceipts,
10
10
  controllerCommandSchema
@@ -14,24 +14,24 @@ import {
14
14
  describeIdleWindow,
15
15
  idleDeadlinePassed,
16
16
  startProcessOwnership
17
- } from "./chunk-PBK24IVU.js";
17
+ } from "./chunk-ZXJTTV7I.js";
18
18
  import {
19
19
  spawnClaude
20
20
  } from "./chunk-H6CL3T2S.js";
21
21
  import {
22
22
  repositoryScopeFor
23
- } from "./chunk-R4JOCIQM.js";
23
+ } from "./chunk-RGVQOOGD.js";
24
24
  import {
25
25
  isAskUserResponse,
26
26
  isDecisionStopped,
27
27
  isWaitForAnswerResponse,
28
28
  withdrawQuestion,
29
29
  writeDegraded
30
- } from "./chunk-PKZJZWYN.js";
30
+ } from "./chunk-J4UNR655.js";
31
31
  import {
32
32
  callMcpTool,
33
33
  isRetryable
34
- } from "./chunk-3SREEE2O.js";
34
+ } from "./chunk-2KN53MPE.js";
35
35
  import {
36
36
  AGENT_QUESTION_DESCRIPTION_MAX,
37
37
  AGENT_QUESTION_HEADER_MAX,
@@ -52,7 +52,7 @@ import {
52
52
  parseCodexQuestions,
53
53
  planElicitationAsk,
54
54
  readElicitationFields
55
- } from "./chunk-JP3S4FPO.js";
55
+ } from "./chunk-M65LPNIO.js";
56
56
 
57
57
  // src/codex-question-owner.ts
58
58
  import { createHash } from "crypto";
@@ -347,7 +347,7 @@ var JsonRpcClient = class {
347
347
  this.bridgeOptions = bridgeOptions;
348
348
  this.approvals = new CodexNativeApprovals({ ...bridgeOptions, shared: false, reply: (id, result) => this.write({ id, result }) });
349
349
  this.threadId = bridgeOptions.resumeThreadId ?? null;
350
- const options = { cwd, env: { ...process.env, PUSHARY_CODEX_BRIDGE: "1" }, stdio: ["pipe", "pipe", "pipe"] };
350
+ const options = { cwd, env: { ...process.env, PUSHARY_CODEX_BRIDGE: "1" }, stdio: ["pipe", "pipe", "pipe"], windowsHide: true };
351
351
  this.child = process.platform === "win32" ? spawnClaude(command.command, command.args ?? [], options) : spawn(command.command, command.args ?? [], options);
352
352
  this.child.stdout?.setEncoding("utf8");
353
353
  this.child.stdout?.on("data", (chunk) => this.read(String(chunk)));
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-BG4HHB7E.js";
8
8
  import {
9
9
  redactSecretsFromContent
10
- } from "./chunk-JP3S4FPO.js";
10
+ } from "./chunk-M65LPNIO.js";
11
11
 
12
12
  // src/cli/json.ts
13
13
  var writeStdoutFully = (text) => new Promise((resolve, reject) => {
@@ -3,7 +3,7 @@ import {
3
3
  formatVersion,
4
4
  quoteIfNeeded,
5
5
  shellDoubleQuoted
6
- } from "./chunk-SISRFK3I.js";
6
+ } from "./chunk-A44MRVWG.js";
7
7
  import {
8
8
  writeFileAtomic
9
9
  } from "./chunk-TODDEIYG.js";
@@ -18,8 +18,9 @@ import {
18
18
  HOOK_BUDGETS,
19
19
  HOOK_LOCATOR_BINARY,
20
20
  PRETOOLUSE_GATED_TOOLS,
21
+ PUSHARY_TOOL_PREFIX,
21
22
  withHookHoldBudget
22
- } from "./chunk-JP3S4FPO.js";
23
+ } from "./chunk-M65LPNIO.js";
23
24
 
24
25
  // src/setup/paths.ts
25
26
  import { createHash as createHash2 } from "crypto";
@@ -764,7 +765,7 @@ var needsReregistration = (stored, version) => {
764
765
  // src/claude-config.ts
765
766
  import { isDeepStrictEqual } from "util";
766
767
  var PUSHARY_MCP_URL = "https://pushary.com/api/mcp/mcp";
767
- var PUSHARY_PERMISSION_RULE = "mcp__pushary__*";
768
+ var PUSHARY_PERMISSION_RULE = `${PUSHARY_TOOL_PREFIX}*`;
768
769
  var asRecord3 = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
769
770
  var ensureRecord2 = (target, key) => {
770
771
  const existing = asRecord3(target[key]);
@@ -773,7 +774,9 @@ var ensureRecord2 = (target, key) => {
773
774
  target[key] = created;
774
775
  return created;
775
776
  };
776
- var isPusharyPermission = (rule) => typeof rule === "string" && (rule.includes("pushary") || rule.includes("MCP(pushary"));
777
+ var PUSHARY_SERVER_PERMISSION_RULE = "mcp__pushary";
778
+ var PUSHARY_TOOL_PERMISSION_PREFIXES = [PUSHARY_TOOL_PREFIX, "MCP(pushary:"];
779
+ var allowsPusharyTools = (rule) => typeof rule === "string" && (rule === PUSHARY_SERVER_PERMISSION_RULE || PUSHARY_TOOL_PERMISSION_PREFIXES.some((prefix) => rule.startsWith(prefix)));
777
780
  var HOOK_BINARIES = /* @__PURE__ */ new Set([
778
781
  ...CLAUDE_HOOK_EVENTS.map((hook) => hook.binary),
779
782
  HOOK_LOCATOR_BINARY
@@ -863,7 +866,7 @@ var removeClaudeMcpServers = (config) => {
863
866
  var removePusharyToolPermissions = (settings) => {
864
867
  const permissions = asRecord3(settings.permissions);
865
868
  if (!permissions || !Array.isArray(permissions.allow)) return false;
866
- const filtered = permissions.allow.filter((rule) => !isPusharyPermission(rule));
869
+ const filtered = permissions.allow.filter((rule) => !allowsPusharyTools(rule));
867
870
  if (filtered.length === permissions.allow.length) return false;
868
871
  if (filtered.length === 0) delete permissions.allow;
869
872
  else permissions.allow = filtered;
@@ -873,7 +876,7 @@ var removePusharyToolPermissions = (settings) => {
873
876
  var addPusharyToolPermissions = (settings) => {
874
877
  const permissions = ensureRecord2(settings, "permissions");
875
878
  const allow = Array.isArray(permissions.allow) ? permissions.allow : [];
876
- const filtered = allow.filter((rule) => !isPusharyPermission(rule));
879
+ const filtered = allow.filter((rule) => !allowsPusharyTools(rule));
877
880
  if (!filtered.includes(PUSHARY_PERMISSION_RULE)) {
878
881
  filtered.push(PUSHARY_PERMISSION_RULE);
879
882
  }
@@ -1341,6 +1344,7 @@ export {
1341
1344
  registrationSignatures,
1342
1345
  needsReregistration,
1343
1346
  PUSHARY_MCP_URL,
1347
+ allowsPusharyTools,
1344
1348
  isPusharyHook,
1345
1349
  addClaudeMcpServer,
1346
1350
  isClaudeMcpSnapshot,
@@ -2,7 +2,7 @@ import {
2
2
  isApprovalMode,
3
3
  isRecord,
4
4
  isTimeoutAction
5
- } from "./chunk-JP3S4FPO.js";
5
+ } from "./chunk-M65LPNIO.js";
6
6
 
7
7
  // src/cli/settings-response.ts
8
8
  var isFiniteNumber = (value) => typeof value === "number" && Number.isFinite(value);
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  realpath
3
- } from "./chunk-AN6I3TX7.js";
3
+ } from "./chunk-UJZ5YHSR.js";
4
4
  import {
5
5
  findNativeClaudeInstall
6
6
  } from "./chunk-CYTPQDQY.js";
@@ -13,10 +13,10 @@ import {
13
13
  resolvePackageVersionFromBinary,
14
14
  resolvePathBinary,
15
15
  resolvePathBinaryAsync
16
- } from "./chunk-SISRFK3I.js";
16
+ } from "./chunk-A44MRVWG.js";
17
17
  import {
18
18
  MANAGED_PROVIDERS
19
- } from "./chunk-JP3S4FPO.js";
19
+ } from "./chunk-M65LPNIO.js";
20
20
 
21
21
  // src/live-capabilities.ts
22
22
  import { homedir } from "os";
@@ -9,7 +9,7 @@ import {
9
9
  isSetupConnectMode,
10
10
  isValidApiKey,
11
11
  normalizeAgentId
12
- } from "./chunk-JP3S4FPO.js";
12
+ } from "./chunk-M65LPNIO.js";
13
13
 
14
14
  // src/setup/options.ts
15
15
  var AGENT_CHOICES = SETUP_AGENT_CHOICES;
@@ -7,7 +7,7 @@ import {
7
7
  recordSealerFor,
8
8
  uploadTranscriptRecords,
9
9
  wrapSessionKey
10
- } from "./chunk-R5ZFWL4F.js";
10
+ } from "./chunk-KWICQAP7.js";
11
11
 
12
12
  // src/live-session.ts
13
13
  var MAX_TRANSCRIPT_QUEUE = 100;
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  announceSubscriptionRequired,
3
3
  isDeferAnswer
4
- } from "./chunk-3EXJMRSC.js";
4
+ } from "./chunk-EA5EASYT.js";
5
5
  import {
6
6
  askUser,
7
7
  isDecisionStopped,
8
8
  isQuestionLimitRefusal,
9
9
  waitForQuestion
10
- } from "./chunk-PKZJZWYN.js";
10
+ } from "./chunk-J4UNR655.js";
11
11
  import {
12
12
  SubscriptionRequiredError
13
- } from "./chunk-3SREEE2O.js";
13
+ } from "./chunk-2KN53MPE.js";
14
14
  import {
15
15
  getMachineId
16
- } from "./chunk-BNJ4H57M.js";
16
+ } from "./chunk-DS7XMYUB.js";
17
17
  import {
18
18
  ASK_CONTEXT_MAX,
19
19
  agentQuestionContext,
@@ -23,7 +23,7 @@ import {
23
23
  plainAskOf,
24
24
  questionsShownAsASet,
25
25
  shouldDeferToNativeMode
26
- } from "./chunk-JP3S4FPO.js";
26
+ } from "./chunk-M65LPNIO.js";
27
27
 
28
28
  // src/native-defer.ts
29
29
  var nativeDeferOptions = () => {
@@ -13,16 +13,16 @@ import {
13
13
  } from "./chunk-G66WIAST.js";
14
14
  import {
15
15
  keyPrefix
16
- } from "./chunk-6X2O5QI7.js";
16
+ } from "./chunk-CVBSETPW.js";
17
17
  import {
18
18
  getBaseUrl
19
- } from "./chunk-CFZRNQIQ.js";
19
+ } from "./chunk-T6HX6OTY.js";
20
20
  import {
21
21
  NPX_LATEST_COMMAND
22
- } from "./chunk-V4OLQBSN.js";
22
+ } from "./chunk-SZYKS433.js";
23
23
  import {
24
24
  isValidApiKey
25
- } from "./chunk-JP3S4FPO.js";
25
+ } from "./chunk-M65LPNIO.js";
26
26
 
27
27
  // src/cli/login-ui.ts
28
28
  import { hostname } from "os";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  readMacAppAgentKey
3
- } from "./chunk-6F6WN6C2.js";
3
+ } from "./chunk-FTH4TSJ2.js";
4
4
  import {
5
5
  API_KEYS_PATH
6
- } from "./chunk-OUTWFS6J.js";
6
+ } from "./chunk-GKZMBU6T.js";
7
7
  import {
8
8
  absoluteUrl
9
- } from "./chunk-OOCIVAMY.js";
9
+ } from "./chunk-LR3PIGRS.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-6X2O5QI7.js";
19
+ } from "./chunk-CVBSETPW.js";
20
20
  import {
21
21
  isValidApiKey
22
- } from "./chunk-JP3S4FPO.js";
22
+ } from "./chunk-M65LPNIO.js";
23
23
 
24
24
  // src/key-revocation.ts
25
25
  var SELF_REVOKE_PATH = "/api/v1/server/keys/self/revoke";
@@ -2,10 +2,10 @@ import {
2
2
  SIGNED_OUT_ON_MAC_MESSAGE,
3
3
  describeSignedOutKey,
4
4
  readSignedOutDiagnosis
5
- } from "./chunk-E4LKBXGP.js";
5
+ } from "./chunk-2YS7YEUW.js";
6
6
  import {
7
7
  APPROVAL_RULES_PATH
8
- } from "./chunk-OUTWFS6J.js";
8
+ } from "./chunk-GKZMBU6T.js";
9
9
  import {
10
10
  createIo
11
11
  } from "./chunk-FO3MDD26.js";
@@ -14,19 +14,19 @@ import {
14
14
  checkApiKey,
15
15
  describeKeyCheck,
16
16
  keyCheckFromResponse
17
- } from "./chunk-OOCIVAMY.js";
17
+ } from "./chunk-LR3PIGRS.js";
18
18
  import {
19
19
  readKeySource
20
- } from "./chunk-6X2O5QI7.js";
20
+ } from "./chunk-CVBSETPW.js";
21
21
  import {
22
22
  getBaseUrl
23
- } from "./chunk-CFZRNQIQ.js";
23
+ } from "./chunk-T6HX6OTY.js";
24
24
  import {
25
25
  EXIT
26
26
  } from "./chunk-BG4HHB7E.js";
27
27
  import {
28
28
  KEY_SCOPE
29
- } from "./chunk-JP3S4FPO.js";
29
+ } from "./chunk-M65LPNIO.js";
30
30
 
31
31
  // src/cli/report-key.ts
32
32
  var { dim, yellow } = createIo();
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-WLRSM634.js";
3
+ } from "./chunk-W4FJR57E.js";
4
4
  import {
5
5
  readJsonSafe
6
6
  } from "./chunk-TODDEIYG.js";
7
7
  import {
8
8
  isRecord
9
- } from "./chunk-JP3S4FPO.js";
9
+ } from "./chunk-M65LPNIO.js";
10
10
 
11
11
  // src/process-ownership.ts
12
12
  import { createHash, randomUUID } from "crypto";
@@ -22,22 +22,22 @@ import {
22
22
  turnCodexAppCardsOff,
23
23
  turnCodexAppCardsOn,
24
24
  whyLaunchctlFailed
25
- } from "./chunk-MUCBJ2KT.js";
26
- import "./chunk-J74XLYS2.js";
25
+ } from "./chunk-J6WO5ZR5.js";
26
+ import "./chunk-FP4WRSWE.js";
27
27
  import "./chunk-XCEN33UP.js";
28
28
  import "./chunk-QCGNGEGE.js";
29
- import "./chunk-FN3AKOE6.js";
29
+ import "./chunk-KBOANW7J.js";
30
30
  import "./chunk-H6CL3T2S.js";
31
- import "./chunk-BNJ4H57M.js";
32
- import "./chunk-6X2O5QI7.js";
33
- import "./chunk-ODZBKNIA.js";
34
- import "./chunk-WLRSM634.js";
35
- import "./chunk-SISRFK3I.js";
36
- import "./chunk-CFZRNQIQ.js";
31
+ import "./chunk-DS7XMYUB.js";
32
+ import "./chunk-CVBSETPW.js";
33
+ import "./chunk-BKH4LQJC.js";
34
+ import "./chunk-W4FJR57E.js";
35
+ import "./chunk-A44MRVWG.js";
36
+ import "./chunk-T6HX6OTY.js";
37
37
  import "./chunk-TODDEIYG.js";
38
- import "./chunk-V4OLQBSN.js";
38
+ import "./chunk-SZYKS433.js";
39
39
  import "./chunk-WIIMW5YO.js";
40
- import "./chunk-JP3S4FPO.js";
40
+ import "./chunk-M65LPNIO.js";
41
41
  import "./chunk-E46NE7FB.js";
42
42
  import "./chunk-MLKGABMK.js";
43
43
  export {
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  deriveToolTarget
3
- } from "./chunk-UZCD6OFJ.js";
3
+ } from "./chunk-JYCAAQUW.js";
4
4
  import {
5
5
  TOOL_NAME_MAX_LENGTH,
6
6
  codexElicitationToolName
7
- } from "./chunk-JP3S4FPO.js";
7
+ } from "./chunk-M65LPNIO.js";
8
8
  import "./chunk-MLKGABMK.js";
9
9
 
10
10
  // src/codex-card-routing.ts
@@ -11,7 +11,7 @@ import {
11
11
  installedCodexApp,
12
12
  shellQuoted,
13
13
  writeDesktopProxy
14
- } from "./chunk-J74XLYS2.js";
14
+ } from "./chunk-FP4WRSWE.js";
15
15
  import "./chunk-XCEN33UP.js";
16
16
  import {
17
17
  CODEX_APP_LAUNCH_VARIABLE
@@ -11,37 +11,37 @@ import {
11
11
  isCodexQuestionLeftWithTheLocalClient,
12
12
  planCodexElicitation,
13
13
  reportOwnedQuestion
14
- } from "./chunk-AHEC2K7V.js";
15
- import "./chunk-NXUZBYBA.js";
16
- import "./chunk-IAAP4OCC.js";
17
- import "./chunk-AN6I3TX7.js";
14
+ } from "./chunk-VO55SJSD.js";
15
+ import "./chunk-XMZVQF2J.js";
16
+ import "./chunk-X23GSBOH.js";
17
+ import "./chunk-UJZ5YHSR.js";
18
18
  import "./chunk-N5P2FLOJ.js";
19
- import "./chunk-PBK24IVU.js";
19
+ import "./chunk-ZXJTTV7I.js";
20
20
  import "./chunk-CYTPQDQY.js";
21
- import "./chunk-R5ZFWL4F.js";
21
+ import "./chunk-KWICQAP7.js";
22
22
  import "./chunk-XMSDA5WA.js";
23
23
  import "./chunk-H6CL3T2S.js";
24
- import "./chunk-R4JOCIQM.js";
24
+ import "./chunk-RGVQOOGD.js";
25
25
  import {
26
26
  writeDegraded
27
- } from "./chunk-PKZJZWYN.js";
27
+ } from "./chunk-J4UNR655.js";
28
28
  import "./chunk-POFBE6ZY.js";
29
- import "./chunk-3SREEE2O.js";
30
- import "./chunk-44ZTLOVE.js";
31
- import "./chunk-OOCIVAMY.js";
32
- import "./chunk-VTT7U6TJ.js";
33
- import "./chunk-BNJ4H57M.js";
34
- import "./chunk-WLRSM634.js";
35
- import "./chunk-SISRFK3I.js";
36
- import "./chunk-CFZRNQIQ.js";
29
+ import "./chunk-2KN53MPE.js";
30
+ import "./chunk-42PVKPHM.js";
31
+ import "./chunk-LR3PIGRS.js";
32
+ import "./chunk-V2T5ZDMP.js";
33
+ import "./chunk-DS7XMYUB.js";
34
+ import "./chunk-W4FJR57E.js";
35
+ import "./chunk-A44MRVWG.js";
36
+ import "./chunk-T6HX6OTY.js";
37
37
  import "./chunk-YU2EUD7O.js";
38
38
  import "./chunk-TODDEIYG.js";
39
39
  import "./chunk-BG4HHB7E.js";
40
- import "./chunk-V4OLQBSN.js";
40
+ import "./chunk-SZYKS433.js";
41
41
  import "./chunk-WIIMW5YO.js";
42
42
  import {
43
43
  canonicalJsonText
44
- } from "./chunk-JP3S4FPO.js";
44
+ } from "./chunk-M65LPNIO.js";
45
45
  import "./chunk-MLKGABMK.js";
46
46
 
47
47
  // src/codex-session-launch.ts
@@ -3,9 +3,9 @@ import {
3
3
  getApiKey,
4
4
  getBaseUrl,
5
5
  resetKeyDriftWarning
6
- } from "./chunk-CFZRNQIQ.js";
7
- import "./chunk-V4OLQBSN.js";
8
- import "./chunk-JP3S4FPO.js";
6
+ } from "./chunk-T6HX6OTY.js";
7
+ import "./chunk-SZYKS433.js";
8
+ import "./chunk-M65LPNIO.js";
9
9
  import "./chunk-MLKGABMK.js";
10
10
  export {
11
11
  configFilePath,
@@ -7,20 +7,20 @@ import {
7
7
  recordUnfinishedUpgrade,
8
8
  upgradeInstalledPackage,
9
9
  withUpgradeLock
10
- } from "./chunk-EJEYQOKX.js";
11
- import "./chunk-VHSN7GCK.js";
12
- import "./chunk-IAAP4OCC.js";
13
- import "./chunk-AN6I3TX7.js";
10
+ } from "./chunk-3PGANQ4K.js";
11
+ import "./chunk-KIWFCW7M.js";
12
+ import "./chunk-X23GSBOH.js";
13
+ import "./chunk-UJZ5YHSR.js";
14
14
  import "./chunk-CYTPQDQY.js";
15
- import "./chunk-CCZML6KO.js";
15
+ import "./chunk-UZUDMZES.js";
16
16
  import "./chunk-POFBE6ZY.js";
17
- import "./chunk-WLRSM634.js";
18
- import "./chunk-SISRFK3I.js";
17
+ import "./chunk-W4FJR57E.js";
18
+ import "./chunk-A44MRVWG.js";
19
19
  import "./chunk-TODDEIYG.js";
20
20
  import "./chunk-BG4HHB7E.js";
21
- import "./chunk-V4OLQBSN.js";
21
+ import "./chunk-SZYKS433.js";
22
22
  import "./chunk-WIIMW5YO.js";
23
- import "./chunk-JP3S4FPO.js";
23
+ import "./chunk-M65LPNIO.js";
24
24
  import "./chunk-MLKGABMK.js";
25
25
  export {
26
26
  finishGlobalUpgrade,
@@ -2,12 +2,12 @@ import {
2
2
  getMachineId,
3
3
  getOrCreateMachineId,
4
4
  readExistingMachineId
5
- } from "./chunk-BNJ4H57M.js";
6
- import "./chunk-WLRSM634.js";
7
- import "./chunk-SISRFK3I.js";
5
+ } from "./chunk-DS7XMYUB.js";
6
+ import "./chunk-W4FJR57E.js";
7
+ import "./chunk-A44MRVWG.js";
8
8
  import "./chunk-TODDEIYG.js";
9
9
  import "./chunk-WIIMW5YO.js";
10
- import "./chunk-JP3S4FPO.js";
10
+ import "./chunk-M65LPNIO.js";
11
11
  import "./chunk-MLKGABMK.js";
12
12
  export {
13
13
  getMachineId,