pushary 1.9.100 → 1.9.102

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 (107) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{api-H734WJ2V.js → api-3O3GJV3V.js} +7 -7
  3. package/dist/bin/pushary-bell-hook.js +18 -18
  4. package/dist/bin/pushary-bell.js +5 -5
  5. package/dist/bin/pushary-claude.js +19 -19
  6. package/dist/bin/pushary-clean.js +26 -26
  7. package/dist/bin/pushary-codex-bridge.js +14 -14
  8. package/dist/bin/pushary-codex-hook.js +21 -21
  9. package/dist/bin/pushary-codex-session.js +6 -6
  10. package/dist/bin/pushary-codex.js +8 -8
  11. package/dist/bin/pushary-connect.js +19 -19
  12. package/dist/bin/pushary-daemon.js +30 -30
  13. package/dist/bin/pushary-disconnect.js +18 -18
  14. package/dist/bin/pushary-display-hook.js +10 -10
  15. package/dist/bin/pushary-doctor.js +32 -32
  16. package/dist/bin/pushary-elicitation-hook.js +18 -18
  17. package/dist/bin/pushary-gemini-bridge.js +9 -9
  18. package/dist/bin/pushary-gemini-hook.js +19 -19
  19. package/dist/bin/pushary-hook.js +20 -20
  20. package/dist/bin/pushary-login.js +14 -14
  21. package/dist/bin/pushary-logout.js +16 -16
  22. package/dist/bin/pushary-mcp.js +8 -8
  23. package/dist/bin/pushary-mode.js +9 -9
  24. package/dist/bin/pushary-notification-hook.js +17 -17
  25. package/dist/bin/pushary-opencode-hook.js +18 -18
  26. package/dist/bin/pushary-permission-denied-hook.js +20 -20
  27. package/dist/bin/pushary-permission-hook.js +20 -20
  28. package/dist/bin/pushary-post-hook.js +17 -17
  29. package/dist/bin/pushary-prompt-hook.js +17 -17
  30. package/dist/bin/pushary-session-end-hook.js +19 -19
  31. package/dist/bin/pushary-session-start-hook.js +27 -27
  32. package/dist/bin/pushary-setup.js +39 -39
  33. package/dist/bin/pushary-status.js +23 -23
  34. package/dist/bin/pushary-stop-hook.js +17 -17
  35. package/dist/bin/pushary-stopfailure-hook.js +17 -17
  36. package/dist/bin/pushary-suggestions.js +9 -9
  37. package/dist/bin/pushary-transcript-register.js +11 -11
  38. package/dist/bin/pushary-transcripts.js +18 -18
  39. package/dist/bin/pushary-upgrade.js +32 -32
  40. package/dist/bin/pushary-wait.js +9 -9
  41. package/dist/bin/pushary.js +4 -4
  42. package/dist/{chunk-5QB6P3I7.js → chunk-2PR5EP7N.js} +1 -1
  43. package/dist/{chunk-N6UPDKCI.js → chunk-2S5J5YI2.js} +3 -3
  44. package/dist/{chunk-RAASN7OG.js → chunk-3ITURBPE.js} +1 -1
  45. package/dist/{chunk-SOBHT3J7.js → chunk-3K7PB5LI.js} +2 -2
  46. package/dist/{chunk-ZNPUYLOY.js → chunk-3Q2X3T3U.js} +1 -1
  47. package/dist/{chunk-DCYA2SW2.js → chunk-6N5DQG5F.js} +2 -2
  48. package/dist/{chunk-O35JKL4T.js → chunk-7BIVBOD5.js} +1 -1
  49. package/dist/{chunk-BIUD3TAY.js → chunk-7OZOFTTB.js} +4 -4
  50. package/dist/{chunk-DPGG3AAG.js → chunk-AVXG5QB2.js} +4 -4
  51. package/dist/{chunk-CC24CQ7P.js → chunk-AWF5WICI.js} +2 -2
  52. package/dist/{chunk-ERO2ERIE.js → chunk-AZSOH2SF.js} +1 -1
  53. package/dist/{chunk-GKNTNKVQ.js → chunk-BQHZRH6S.js} +9 -3
  54. package/dist/{chunk-6VFN4XTI.js → chunk-CQ7QE4W2.js} +1 -1
  55. package/dist/{chunk-33YOO7FG.js → chunk-E7WJQBK3.js} +8 -8
  56. package/dist/{chunk-A7JQJUGZ.js → chunk-EOD3DBIN.js} +2 -2
  57. package/dist/{chunk-43CU2HYQ.js → chunk-FF7L4B3W.js} +4 -4
  58. package/dist/{chunk-BBNMGXZA.js → chunk-G7RMOSRX.js} +1 -1
  59. package/dist/{chunk-THHVB46D.js → chunk-HYAQIKYB.js} +1 -1
  60. package/dist/{chunk-Z6HHEV7A.js → chunk-IOQ3ZCAE.js} +1 -1
  61. package/dist/{chunk-YVAFDGK2.js → chunk-J6SSLXSU.js} +3 -3
  62. package/dist/{chunk-IGIWULLQ.js → chunk-JECH4NJL.js} +1 -1
  63. package/dist/{chunk-W44TA4CT.js → chunk-JKOAAIJD.js} +4 -4
  64. package/dist/{chunk-XEGKTXTC.js → chunk-JPKJBKZE.js} +3 -3
  65. package/dist/{chunk-GSQZTDPZ.js → chunk-JUA7MX2V.js} +3 -3
  66. package/dist/{chunk-2SFVZ3IT.js → chunk-JVE4P54I.js} +11 -4
  67. package/dist/{chunk-ZG6M5VQV.js → chunk-KLJ2CTT7.js} +1 -1
  68. package/dist/{chunk-3BBJO25D.js → chunk-KTM2X3XQ.js} +7 -7
  69. package/dist/{chunk-UPQE4YPM.js → chunk-LURFSDCL.js} +1 -1
  70. package/dist/{chunk-SQSL6DVX.js → chunk-MA65OP6M.js} +9 -9
  71. package/dist/{chunk-SJXNDL73.js → chunk-MK2XE66G.js} +2 -2
  72. package/dist/{chunk-E4YZIS4C.js → chunk-NZQEABRO.js} +4 -4
  73. package/dist/{chunk-4TLE7CSQ.js → chunk-O5ZKMUTP.js} +3 -3
  74. package/dist/{chunk-SGECX2RY.js → chunk-O7ITTNDD.js} +1 -1
  75. package/dist/{chunk-XJF4WX5C.js → chunk-PM34Z5WX.js} +4 -4
  76. package/dist/{chunk-IGEY7ZFQ.js → chunk-PPWEBIKL.js} +627 -6
  77. package/dist/{chunk-DIWNHZ6I.js → chunk-RVSRPDRF.js} +2 -2
  78. package/dist/{chunk-E2YENQFD.js → chunk-SA4PCB6N.js} +6 -6
  79. package/dist/{chunk-GTUCRZRJ.js → chunk-SRE6XJ3K.js} +5 -5
  80. package/dist/{chunk-K6QZMKAP.js → chunk-SXAZPWL7.js} +5 -5
  81. package/dist/{chunk-SSLEGJYI.js → chunk-T6TQETDN.js} +1 -1
  82. package/dist/{chunk-E34NVKR7.js → chunk-T7G6IIV4.js} +2 -2
  83. package/dist/{chunk-NTTFATKG.js → chunk-UOE26LPT.js} +3 -3
  84. package/dist/{chunk-MY7NJM56.js → chunk-UQWEH7CK.js} +3 -3
  85. package/dist/{chunk-VMXY3PAT.js → chunk-V5DV7XZN.js} +2 -2
  86. package/dist/{chunk-OUF7TX2C.js → chunk-VD6CAELE.js} +2 -2
  87. package/dist/{chunk-T72OMEHB.js → chunk-VJOMBYY5.js} +1 -1
  88. package/dist/{chunk-ACVL2MHG.js → chunk-WYJ6QM7K.js} +1 -1
  89. package/dist/{chunk-WRCQCJA7.js → chunk-WZNLWDSL.js} +4 -4
  90. package/dist/{chunk-FIKNFZ7Z.js → chunk-X3HBR57D.js} +5 -5
  91. package/dist/{chunk-BFEY6FRZ.js → chunk-Y3SZVZF6.js} +2 -2
  92. package/dist/{chunk-CK6YJZEK.js → chunk-Y7KRX7U4.js} +1 -1
  93. package/dist/{chunk-4JUQ74CG.js → chunk-YETNUPV5.js} +2 -2
  94. package/dist/{chunk-KUIJMRES.js → chunk-Z2TX7DVU.js} +5 -5
  95. package/dist/{chunk-7ZHLBWOV.js → chunk-ZCYLCD6L.js} +3 -3
  96. package/dist/{chunk-ODJQ5KFS.js → chunk-ZXK46QT4.js} +1 -1
  97. package/dist/{codex-app-cards-switch-JKKTCZNB.js → codex-app-cards-switch-D475JLP5.js} +7 -7
  98. package/dist/{codex-desktop-launch-6BONFDHF.js → codex-desktop-launch-WOPEZMO6.js} +1 -1
  99. package/dist/{codex-session-launch-5FRL6UGU.js → codex-session-launch-AWWECV2L.js} +12 -12
  100. package/dist/{global-upgrade-W4ZTLGUY.js → global-upgrade-V6FA6MUF.js} +8 -8
  101. package/dist/{identity-2LPVILX4.js → identity-BEPQQHNR.js} +3 -3
  102. package/dist/{live-capabilities-SWMCZORB.js → live-capabilities-EAM2QN73.js} +4 -4
  103. package/dist/{paths-4SVXADJ6.js → paths-2IEEYSHM.js} +2 -2
  104. package/dist/{reapply-WEXL57SG.js → reapply-3LBUA5EV.js} +21 -21
  105. package/dist/src/index.js +20 -20
  106. package/dist/{upgrade-lock-NZ2MBGYE.js → upgrade-lock-DLGVC34L.js} +3 -3
  107. package/package.json +1 -1
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  macAppBridgeAvailable
3
- } from "./chunk-XJF4WX5C.js";
3
+ } from "./chunk-PM34Z5WX.js";
4
4
  import {
5
5
  keyPrefix
6
- } from "./chunk-THHVB46D.js";
6
+ } from "./chunk-HYAQIKYB.js";
7
7
  import {
8
8
  bridgeAgentKey
9
- } from "./chunk-SGECX2RY.js";
9
+ } from "./chunk-O7ITTNDD.js";
10
10
  import {
11
11
  readJsonSafe
12
- } from "./chunk-GKNTNKVQ.js";
12
+ } from "./chunk-BQHZRH6S.js";
13
13
  import {
14
14
  isRecord,
15
15
  isValidApiKey
@@ -14,7 +14,7 @@ import {
14
14
  describeIdleWindow,
15
15
  idleDeadlinePassed,
16
16
  startProcessOwnership
17
- } from "./chunk-E34NVKR7.js";
17
+ } from "./chunk-T7G6IIV4.js";
18
18
  import {
19
19
  spawnClaude
20
20
  } from "./chunk-XHKBHWLX.js";
@@ -27,11 +27,11 @@ import {
27
27
  isWaitForAnswerResponse,
28
28
  withdrawQuestion,
29
29
  writeDegraded
30
- } from "./chunk-7ZHLBWOV.js";
30
+ } from "./chunk-ZCYLCD6L.js";
31
31
  import {
32
32
  callMcpTool,
33
33
  isRetryable
34
- } from "./chunk-VMXY3PAT.js";
34
+ } from "./chunk-V5DV7XZN.js";
35
35
  import {
36
36
  AGENT_QUESTION_DESCRIPTION_MAX,
37
37
  AGENT_QUESTION_HEADER_MAX,
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  compatibleConfigFile,
3
3
  hasCompatibleHooks
4
- } from "./chunk-NTTFATKG.js";
4
+ } from "./chunk-UOE26LPT.js";
5
5
  import {
6
6
  pusharyHookExecutable
7
- } from "./chunk-OUF7TX2C.js";
7
+ } from "./chunk-VD6CAELE.js";
8
8
  import {
9
9
  isProtectedByScope,
10
10
  registerHookEntry
11
- } from "./chunk-SGECX2RY.js";
11
+ } from "./chunk-O7ITTNDD.js";
12
12
  import {
13
13
  isRecord
14
14
  } from "./chunk-4FAJQPFY.js";
@@ -1,11 +1,12 @@
1
1
  import {
2
2
  autoUpdateLock
3
- } from "./chunk-SGECX2RY.js";
3
+ } from "./chunk-O7ITTNDD.js";
4
4
  import {
5
5
  installPackageGlobally,
6
6
  npmErrorMessage,
7
+ npmExitedOnPermissionDenied,
7
8
  writeJsonAtomic
8
- } from "./chunk-GKNTNKVQ.js";
9
+ } from "./chunk-BQHZRH6S.js";
9
10
 
10
11
  // src/upgrade-lock.ts
11
12
  import { fork } from "child_process";
@@ -157,12 +158,18 @@ var forkFinishWithUpgradeLock = (request) => new Promise((resolve, reject) => {
157
158
  resolve({ code, signal });
158
159
  });
159
160
  });
161
+ var writeSettledLockRecord = (path) => writeJsonAtomic(path, { pid: process.pid, format: KERNEL_LOCK_FORMAT }, 384);
160
162
  var installWithUpgradeLock = (request, lockPath = autoUpdateLock(), runNpm) => {
161
163
  const path = canonicalLockPath(lockPath);
162
164
  if (!heldLocks.has(path)) throw new Error("Cannot install an upgrade without its lock");
163
165
  writeJsonAtomic(path, { pid: process.pid, format: KERNEL_LOCK_FORMAT, installationPending: true }, 384);
164
- installPackageGlobally(request, runNpm);
165
- writeJsonAtomic(path, { pid: process.pid, format: KERNEL_LOCK_FORMAT }, 384);
166
+ try {
167
+ installPackageGlobally(request, runNpm);
168
+ } catch (error) {
169
+ if (npmExitedOnPermissionDenied(error, process.platform)) writeSettledLockRecord(path);
170
+ throw error;
171
+ }
172
+ writeSettledLockRecord(path);
166
173
  };
167
174
 
168
175
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readExistingMachineId
3
- } from "./chunk-DCYA2SW2.js";
3
+ } from "./chunk-6N5DQG5F.js";
4
4
  import {
5
5
  getBaseUrl
6
6
  } from "./chunk-KOUB4ZLX.js";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  readOwnerOnlyJson,
3
3
  savedTranscriptReadPositions
4
- } from "./chunk-BBNMGXZA.js";
4
+ } from "./chunk-G7RMOSRX.js";
5
5
  import {
6
6
  SESSION_HISTORY_RETENTION_DAYS
7
7
  } from "./chunk-G66WIAST.js";
8
8
  import {
9
9
  ensureDaemonRunning
10
- } from "./chunk-E4YZIS4C.js";
10
+ } from "./chunk-NZQEABRO.js";
11
11
  import {
12
12
  hookOwnerOf
13
- } from "./chunk-OUF7TX2C.js";
13
+ } from "./chunk-VD6CAELE.js";
14
14
  import {
15
15
  buildTranscriptRecords,
16
16
  decodePublicKey,
@@ -28,10 +28,10 @@ import {
28
28
  import {
29
29
  transcriptEnvironmentPreference,
30
30
  transcriptsEnabled
31
- } from "./chunk-ZNPUYLOY.js";
31
+ } from "./chunk-3Q2X3T3U.js";
32
32
  import {
33
33
  readTranscriptPreference
34
- } from "./chunk-THHVB46D.js";
34
+ } from "./chunk-HYAQIKYB.js";
35
35
  import {
36
36
  hookMeaning
37
37
  } from "./chunk-MP3SEXXJ.js";
@@ -39,11 +39,11 @@ import {
39
39
  claudeConfigDir,
40
40
  codexHome,
41
41
  pusharyDir
42
- } from "./chunk-SGECX2RY.js";
42
+ } from "./chunk-O7ITTNDD.js";
43
43
  import {
44
44
  writeJsonAtomic,
45
45
  writeJsonAtomicDurable
46
- } from "./chunk-GKNTNKVQ.js";
46
+ } from "./chunk-BQHZRH6S.js";
47
47
  import {
48
48
  getApiKey,
49
49
  getBaseUrl
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isFile
3
- } from "./chunk-GKNTNKVQ.js";
3
+ } from "./chunk-BQHZRH6S.js";
4
4
 
5
5
  // src/claude-native-install.ts
6
6
  import { accessSync, constants } from "fs";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  ensureCodexTrustsPusharyHooks
3
- } from "./chunk-DIWNHZ6I.js";
3
+ } from "./chunk-RVSRPDRF.js";
4
4
  import {
5
5
  hermesReceiptPaths,
6
6
  hermesSetupPredatesThePluginFolder,
7
7
  installHermesPlugin,
8
8
  refreshHermesPluginFiles,
9
9
  shippedHermesPlugin
10
- } from "./chunk-IGEY7ZFQ.js";
10
+ } from "./chunk-PPWEBIKL.js";
11
11
  import {
12
12
  fxIgnoresInstructionsFile,
13
13
  fxInstructionsBody,
@@ -16,7 +16,7 @@ import {
16
16
  macAppFxBridge,
17
17
  refreshClineKey,
18
18
  switchFxHttpEntryToBridge
19
- } from "./chunk-K6QZMKAP.js";
19
+ } from "./chunk-SXAZPWL7.js";
20
20
  import {
21
21
  OPENCODE_HOOK_BINARY,
22
22
  agentHookOwner,
@@ -28,16 +28,16 @@ import {
28
28
  openCodePluginDir,
29
29
  openCodeWired,
30
30
  withOpenCodeAskRules
31
- } from "./chunk-XJF4WX5C.js";
31
+ } from "./chunk-PM34Z5WX.js";
32
32
  import {
33
33
  detectClaudeVersion
34
- } from "./chunk-4JUQ74CG.js";
34
+ } from "./chunk-YETNUPV5.js";
35
35
  import {
36
36
  addCompatibleHooks,
37
37
  compatibleConfigFile,
38
38
  compatibleInstructionsFile,
39
39
  hasCompatibleHooks
40
- } from "./chunk-NTTFATKG.js";
40
+ } from "./chunk-UOE26LPT.js";
41
41
  import {
42
42
  GEMINI_HOOK_BINARY,
43
43
  addGeminiHooks,
@@ -49,7 +49,7 @@ import {
49
49
  geminiWired,
50
50
  hasGeminiHooks,
51
51
  planHooks
52
- } from "./chunk-OUF7TX2C.js";
52
+ } from "./chunk-VD6CAELE.js";
53
53
  import {
54
54
  CLAUDE_HOOK_BINARY,
55
55
  CLAUDE_HOOK_EVENTS,
@@ -95,7 +95,7 @@ import {
95
95
  renderAgentInstructions,
96
96
  supportedClaudeEvents,
97
97
  vscodePluginMcp
98
- } from "./chunk-SGECX2RY.js";
98
+ } from "./chunk-O7ITTNDD.js";
99
99
  import {
100
100
  formatVersion,
101
101
  hookCommandsUseBareNames,
@@ -104,7 +104,7 @@ import {
104
104
  resolveGlobalBinary,
105
105
  writeFileAtomic,
106
106
  writeJsonAtomic
107
- } from "./chunk-GKNTNKVQ.js";
107
+ } from "./chunk-BQHZRH6S.js";
108
108
  import {
109
109
  HOOK_COMPATIBLE_PROFILES,
110
110
  isCompatibleAgentType,
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-SGECX2RY.js";
3
+ } from "./chunk-O7ITTNDD.js";
4
4
  import {
5
5
  readJsonSafe,
6
6
  writeFileAtomic
7
- } from "./chunk-GKNTNKVQ.js";
7
+ } from "./chunk-BQHZRH6S.js";
8
8
  import {
9
9
  DECLINED_AGENTS_FILE,
10
10
  DISCONNECT_AGENT_IDS,
@@ -4,20 +4,20 @@ import {
4
4
  } from "./chunk-XHKBHWLX.js";
5
5
  import {
6
6
  readControlMode
7
- } from "./chunk-THHVB46D.js";
7
+ } from "./chunk-HYAQIKYB.js";
8
8
  import {
9
9
  getMachineId
10
- } from "./chunk-DCYA2SW2.js";
10
+ } from "./chunk-6N5DQG5F.js";
11
11
  import {
12
12
  pusharyDir
13
- } from "./chunk-SGECX2RY.js";
13
+ } from "./chunk-O7ITTNDD.js";
14
14
  import {
15
15
  readJsonSafe,
16
16
  resolveGlobalBinary,
17
17
  writeFileAtomic,
18
18
  writeJsonAtomic,
19
19
  writeJsonAtomicDurable
20
- } from "./chunk-GKNTNKVQ.js";
20
+ } from "./chunk-BQHZRH6S.js";
21
21
  import {
22
22
  getApiKey
23
23
  } from "./chunk-KOUB4ZLX.js";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  APPROVAL_RULES_PATH,
3
3
  canChangeApprovalSettings
4
- } from "./chunk-ACVL2MHG.js";
4
+ } from "./chunk-WYJ6QM7K.js";
5
5
  import {
6
6
  callMcpTool
7
- } from "./chunk-VMXY3PAT.js";
7
+ } from "./chunk-V5DV7XZN.js";
8
8
  import {
9
9
  absoluteUrl
10
- } from "./chunk-O35JKL4T.js";
10
+ } from "./chunk-7BIVBOD5.js";
11
11
  import {
12
12
  getBaseUrl
13
13
  } from "./chunk-KOUB4ZLX.js";
@@ -4,7 +4,7 @@ import {
4
4
  quoteIfNeeded,
5
5
  shellDoubleQuoted,
6
6
  writeFileAtomic
7
- } from "./chunk-GKNTNKVQ.js";
7
+ } from "./chunk-BQHZRH6S.js";
8
8
  import {
9
9
  cmdShimScriptOf
10
10
  } from "./chunk-ZVU6WMMU.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  compatibleConfigFile
3
- } from "./chunk-NTTFATKG.js";
3
+ } from "./chunk-UOE26LPT.js";
4
4
  import {
5
5
  hookOwnerOf,
6
6
  hookOwnerOfCommands,
7
7
  liveBridgeProbe,
8
8
  resolveBridgeStub
9
- } from "./chunk-OUF7TX2C.js";
9
+ } from "./chunk-VD6CAELE.js";
10
10
  import {
11
11
  AGENT_CHOICES
12
12
  } from "./chunk-WVAJSBI2.js";
@@ -19,10 +19,10 @@ import {
19
19
  pusharyDir,
20
20
  vscodePluginDir,
21
21
  windowsNodeLauncherFor
22
- } from "./chunk-SGECX2RY.js";
22
+ } from "./chunk-O7ITTNDD.js";
23
23
  import {
24
24
  readJsonSafe
25
- } from "./chunk-GKNTNKVQ.js";
25
+ } from "./chunk-BQHZRH6S.js";
26
26
  import {
27
27
  HOOK_BUDGETS,
28
28
  HOOK_COMPATIBLE_PROFILES,