@pushary/agent-hooks 1.6.0 → 1.6.1

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 (81) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/bin/pushary-bell-hook.js +18 -18
  3. package/dist/bin/pushary-bell.js +6 -6
  4. package/dist/bin/pushary-claude.js +19 -19
  5. package/dist/bin/pushary-clean.js +20 -20
  6. package/dist/bin/pushary-codex-bridge.js +95 -20
  7. package/dist/bin/pushary-codex-hook.js +24 -24
  8. package/dist/bin/pushary-codex.js +7 -7
  9. package/dist/bin/pushary-connect.js +6 -6
  10. package/dist/bin/pushary-cowork.js +3 -3
  11. package/dist/bin/pushary-daemon.js +23 -23
  12. package/dist/bin/pushary-disconnect.js +11 -11
  13. package/dist/bin/pushary-doctor.js +23 -23
  14. package/dist/bin/pushary-elicitation-hook.js +18 -18
  15. package/dist/bin/pushary-gemini-bridge.js +9 -9
  16. package/dist/bin/pushary-gemini-hook.js +21 -21
  17. package/dist/bin/pushary-hook.js +24 -24
  18. package/dist/bin/pushary-login.js +7 -7
  19. package/dist/bin/pushary-logout.js +4 -4
  20. package/dist/bin/pushary-mode.js +3 -3
  21. package/dist/bin/pushary-notification-hook.js +21 -21
  22. package/dist/bin/pushary-opencode-hook.js +20 -20
  23. package/dist/bin/pushary-permission-denied-hook.js +25 -25
  24. package/dist/bin/pushary-permission-hook.js +24 -24
  25. package/dist/bin/pushary-post-hook.js +21 -21
  26. package/dist/bin/pushary-prompt-hook.js +21 -21
  27. package/dist/bin/pushary-session-end-hook.js +21 -21
  28. package/dist/bin/pushary-session-start-hook.js +25 -25
  29. package/dist/bin/pushary-setup.js +29 -30
  30. package/dist/bin/pushary-stats.js +2 -2
  31. package/dist/bin/pushary-status.js +10 -10
  32. package/dist/bin/pushary-stop-hook.js +21 -21
  33. package/dist/bin/pushary-stopfailure-hook.js +21 -21
  34. package/dist/bin/pushary-transcript-register.js +16 -16
  35. package/dist/bin/pushary-transcripts.js +4 -4
  36. package/dist/bin/pushary-upgrade.js +16 -16
  37. package/dist/bin/pushary-wait.js +3 -3
  38. package/dist/{chunk-DZ75BJ7V.js → chunk-2PHHXWA4.js} +3 -3
  39. package/dist/{chunk-ALG3IBLB.js → chunk-3ROHFC7Q.js} +1 -1
  40. package/dist/{chunk-BK5F3FGE.js → chunk-3TKMWW34.js} +3 -3
  41. package/dist/{chunk-XQOT4CCK.js → chunk-45BA4RL6.js} +1 -1
  42. package/dist/{chunk-B6TYEKJR.js → chunk-5NDOV3UU.js} +1 -1
  43. package/dist/{chunk-NDS27FXU.js → chunk-5TRIYAHM.js} +1 -1
  44. package/dist/{chunk-5QCZYSYR.js → chunk-7H4HD2WR.js} +1 -1
  45. package/dist/{chunk-F4KRNFDE.js → chunk-7WRJFRNF.js} +1 -1
  46. package/dist/{chunk-NYD7W7AT.js → chunk-7XGW7IKI.js} +1 -1
  47. package/dist/{chunk-G5LENVCZ.js → chunk-B75OQ2E7.js} +3 -3
  48. package/dist/{chunk-OR3A3RLH.js → chunk-CATEMFAP.js} +1 -1
  49. package/dist/{chunk-OP7HFIWE.js → chunk-CNJWNFBL.js} +6 -6
  50. package/dist/{chunk-PCVVCS4A.js → chunk-DACRA27R.js} +1 -1
  51. package/dist/{chunk-5MH5P366.js → chunk-GE64YOTX.js} +2 -2
  52. package/dist/{chunk-GOXINLDU.js → chunk-GOQC7R3F.js} +1 -1
  53. package/dist/{chunk-VMNI33F5.js → chunk-IEXXFXSP.js} +1 -1
  54. package/dist/{chunk-KZBGITM4.js → chunk-J7X5YVTP.js} +4 -4
  55. package/dist/{chunk-PRZXYILJ.js → chunk-K5BPU3RG.js} +2 -2
  56. package/dist/{chunk-F2OPOBRO.js → chunk-L2FPZQQM.js} +1 -1
  57. package/dist/{chunk-A2GS2ENL.js → chunk-LNMHLXNR.js} +6 -6
  58. package/dist/{chunk-PYCQXCI5.js → chunk-LVHGSD5E.js} +2 -0
  59. package/dist/{chunk-A5URWZTP.js → chunk-MK7ZJ2JN.js} +1 -1
  60. package/dist/{chunk-VZANUMIF.js → chunk-MR2GHF3F.js} +1 -1
  61. package/dist/{chunk-CSW6A2EW.js → chunk-MZCYOUBR.js} +1 -1
  62. package/dist/{chunk-YFD7CRIZ.js → chunk-NTTMJFJU.js} +7 -3
  63. package/dist/{chunk-MOQOJOMD.js → chunk-NYFBIXA7.js} +3 -3
  64. package/dist/{chunk-RBPJO4KG.js → chunk-O6MHM25J.js} +1 -1
  65. package/dist/{chunk-TDKE3V6W.js → chunk-OLD4YGZR.js} +1 -1
  66. package/dist/{chunk-E7MJBWSR.js → chunk-PWQHK3F7.js} +1 -1
  67. package/dist/{chunk-66BIMA62.js → chunk-ROCRCXTP.js} +6 -6
  68. package/dist/{chunk-FDF72XHK.js → chunk-TPD6LCQI.js} +2 -2
  69. package/dist/{chunk-644CGYOB.js → chunk-UJ4O22GU.js} +7 -7
  70. package/dist/{chunk-HWG7X3VI.js → chunk-UMVM4HVV.js} +3 -3
  71. package/dist/{chunk-GDXSCXQC.js → chunk-VT5TVFM3.js} +1 -1
  72. package/dist/{chunk-SFNRAEEW.js → chunk-VT63XWPR.js} +1 -1
  73. package/dist/{chunk-XGL5JC6U.js → chunk-W5JUN4TF.js} +2 -2
  74. package/dist/{chunk-GP6SFVEN.js → chunk-WBWF7WU7.js} +1 -1
  75. package/dist/{chunk-7JSE6JTZ.js → chunk-WHOD4YGB.js} +1 -1
  76. package/dist/{chunk-FI3LQCUH.js → chunk-X4G4MQEV.js} +5 -5
  77. package/dist/{chunk-BW3Y2D24.js → chunk-XTXCQ4QE.js} +4 -4
  78. package/dist/{chunk-BE4P7ERZ.js → chunk-ZR4NP264.js} +3 -3
  79. package/dist/{reapply-RRDVJATI.js → reapply-GGHT2YJX.js} +9 -9
  80. package/dist/src/index.js +13 -13
  81. package/package.json +1 -1
@@ -5,18 +5,18 @@ import {
5
5
  import {
6
6
  ensureCodexTrustAfterReapply,
7
7
  reapplyAllAgents
8
- } from "../chunk-OP7HFIWE.js";
9
- import "../chunk-NDS27FXU.js";
10
- import "../chunk-XQOT4CCK.js";
8
+ } from "../chunk-CNJWNFBL.js";
9
+ import "../chunk-5TRIYAHM.js";
10
+ import "../chunk-45BA4RL6.js";
11
11
  import {
12
12
  waitForMachineReadiness
13
- } from "../chunk-BW3Y2D24.js";
14
- import "../chunk-HWG7X3VI.js";
13
+ } from "../chunk-XTXCQ4QE.js";
14
+ import "../chunk-UMVM4HVV.js";
15
15
  import {
16
16
  detectProviderLiveCapabilities,
17
17
  hasSpawnProvider,
18
18
  resolveControlPolicy
19
- } from "../chunk-5MH5P366.js";
19
+ } from "../chunk-GE64YOTX.js";
20
20
  import {
21
21
  AUTO_UPDATE_DISABLE_ENV,
22
22
  describeAutoUpdateCheck,
@@ -27,8 +27,8 @@ import {
27
27
  readAutoUpdateState,
28
28
  updateAutoUpdateState,
29
29
  upgradeEntryFor
30
- } from "../chunk-RBPJO4KG.js";
31
- import "../chunk-MOQOJOMD.js";
30
+ } from "../chunk-O6MHM25J.js";
31
+ import "../chunk-NYFBIXA7.js";
32
32
  import {
33
33
  daemonHasRemoteProof,
34
34
  daemonServiceManagerAvailable,
@@ -39,13 +39,13 @@ import {
39
39
  replaceDaemonService,
40
40
  stopDaemonService,
41
41
  waitForDaemonRemoteProof
42
- } from "../chunk-DZ75BJ7V.js";
43
- import "../chunk-BK5F3FGE.js";
42
+ } from "../chunk-2PHHXWA4.js";
43
+ import "../chunk-3TKMWW34.js";
44
44
  import {
45
45
  needsShell
46
46
  } from "../chunk-XHKBHWLX.js";
47
- import "../chunk-VZANUMIF.js";
48
- import "../chunk-7JSE6JTZ.js";
47
+ import "../chunk-MR2GHF3F.js";
48
+ import "../chunk-WHOD4YGB.js";
49
49
  import {
50
50
  LATEST_TAG,
51
51
  autoUpdateLock,
@@ -61,22 +61,22 @@ import {
61
61
  npmErrorMessage,
62
62
  resolveGlobalBinary,
63
63
  vscodePluginDir
64
- } from "../chunk-F2OPOBRO.js";
64
+ } from "../chunk-L2FPZQQM.js";
65
65
  import {
66
66
  exitOnHelpFlag
67
67
  } from "../chunk-P4BNYJ5Q.js";
68
68
  import {
69
69
  readControlMode
70
- } from "../chunk-TDKE3V6W.js";
70
+ } from "../chunk-OLD4YGZR.js";
71
71
  import {
72
72
  EXIT
73
73
  } from "../chunk-KZERVKTD.js";
74
- import "../chunk-VMNI33F5.js";
74
+ import "../chunk-IEXXFXSP.js";
75
75
  import "../chunk-T7E75EKA.js";
76
76
  import {
77
77
  getApiKey
78
78
  } from "../chunk-OSJEMXSR.js";
79
- import "../chunk-YFD7CRIZ.js";
79
+ import "../chunk-NTTMJFJU.js";
80
80
  import {
81
81
  NPX_LATEST_COMMAND
82
82
  } from "../chunk-EA3IELHP.js";
@@ -4,8 +4,8 @@ import {
4
4
  } from "../chunk-CVWG2N3Y.js";
5
5
  import {
6
6
  exitOnFailedResponse
7
- } from "../chunk-PCVVCS4A.js";
8
- import "../chunk-CSW6A2EW.js";
7
+ } from "../chunk-DACRA27R.js";
8
+ import "../chunk-MZCYOUBR.js";
9
9
  import {
10
10
  createIo
11
11
  } from "../chunk-5RUIFDTP.js";
@@ -26,7 +26,7 @@ import {
26
26
  getApiKey,
27
27
  getBaseUrl
28
28
  } from "../chunk-OSJEMXSR.js";
29
- import "../chunk-YFD7CRIZ.js";
29
+ import "../chunk-NTTMJFJU.js";
30
30
  import "../chunk-EA3IELHP.js";
31
31
  import "../chunk-HWJW3CPO.js";
32
32
 
@@ -4,14 +4,14 @@ import {
4
4
  } from "./chunk-XHKBHWLX.js";
5
5
  import {
6
6
  getMachineId
7
- } from "./chunk-7JSE6JTZ.js";
7
+ } from "./chunk-WHOD4YGB.js";
8
8
  import {
9
9
  pusharyDir,
10
10
  resolveGlobalBinary
11
- } from "./chunk-F2OPOBRO.js";
11
+ } from "./chunk-L2FPZQQM.js";
12
12
  import {
13
13
  readControlMode
14
- } from "./chunk-TDKE3V6W.js";
14
+ } from "./chunk-OLD4YGZR.js";
15
15
  import {
16
16
  readJsonSafe,
17
17
  writeFileAtomic,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pusharyDir
3
- } from "./chunk-F2OPOBRO.js";
3
+ } from "./chunk-L2FPZQQM.js";
4
4
  import {
5
5
  readJsonSafe
6
6
  } from "./chunk-T7E75EKA.js";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  NOTIFICATION_MATCHED_TYPES,
3
3
  POSTTOOLUSE_MIRRORED_TOOLS
4
- } from "./chunk-VZANUMIF.js";
4
+ } from "./chunk-MR2GHF3F.js";
5
5
  import {
6
6
  isProtectedByScope,
7
7
  registerHookEntry
8
- } from "./chunk-F2OPOBRO.js";
8
+ } from "./chunk-L2FPZQQM.js";
9
9
  import {
10
10
  CLAUDE_PRETOOLUSE_MATCHER,
11
11
  HOOK_BUDGETS,
12
12
  HOOK_LOCATOR_BINARY
13
- } from "./chunk-YFD7CRIZ.js";
13
+ } from "./chunk-NTTMJFJU.js";
14
14
 
15
15
  // src/gemini-config.ts
16
16
  var GEMINI_HOOK_BINARY = "pushary-gemini-hook";
@@ -6,7 +6,7 @@ import {
6
6
  codexHooksJsonIn,
7
7
  isPusharyCodexCommand,
8
8
  resolvePathBinary
9
- } from "./chunk-F2OPOBRO.js";
9
+ } from "./chunk-L2FPZQQM.js";
10
10
  import {
11
11
  getPackageVersion
12
12
  } from "./chunk-HWJW3CPO.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  HOOK_BUDGETS,
3
3
  OPENCODE_APPROVAL_EVENT
4
- } from "./chunk-YFD7CRIZ.js";
4
+ } from "./chunk-NTTMJFJU.js";
5
5
 
6
6
  // src/opencode-plugin.ts
7
7
  var OPENCODE_PLUGIN_MARKER = "pushary-opencode-plugin w1";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  parseVersion
3
- } from "./chunk-BK5F3FGE.js";
3
+ } from "./chunk-3TKMWW34.js";
4
4
 
5
5
  // src/setup/agent-probe.ts
6
6
  import { execSync } from "child_process";
@@ -3,7 +3,7 @@ import {
3
3
  decodePublicKey,
4
4
  generateSessionKey,
5
5
  wrapSessionKey
6
- } from "./chunk-SFNRAEEW.js";
6
+ } from "./chunk-VT63XWPR.js";
7
7
  import {
8
8
  fetchTranscriptRecipients,
9
9
  uploadTranscriptRecords
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isSafeReadOnlyCommand
3
- } from "./chunk-YFD7CRIZ.js";
3
+ } from "./chunk-NTTMJFJU.js";
4
4
 
5
5
  // src/ledger.ts
6
6
  import { appendFileSync, existsSync, mkdirSync, readFileSync, renameSync, rmSync, statSync } from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolvePathBinary
3
- } from "./chunk-F2OPOBRO.js";
3
+ } from "./chunk-L2FPZQQM.js";
4
4
 
5
5
  // src/hermes-config.ts
6
6
  import { execFileSync } from "child_process";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  openCodeConfigDirFrom
3
- } from "./chunk-B6TYEKJR.js";
3
+ } from "./chunk-5NDOV3UU.js";
4
4
  import {
5
5
  codexHomeFrom
6
- } from "./chunk-F2OPOBRO.js";
6
+ } from "./chunk-L2FPZQQM.js";
7
7
  import {
8
8
  HOOK_COMPATIBLE_PROFILES
9
- } from "./chunk-YFD7CRIZ.js";
9
+ } from "./chunk-NTTMJFJU.js";
10
10
 
11
11
  // src/vscode-config.ts
12
12
  import { homedir } from "os";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  guardBinary
3
- } from "./chunk-F2OPOBRO.js";
3
+ } from "./chunk-L2FPZQQM.js";
4
4
 
5
5
  // src/bell/install.ts
6
6
  import { join } from "path";
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  detectClaudeVersion
3
- } from "./chunk-NDS27FXU.js";
3
+ } from "./chunk-5TRIYAHM.js";
4
4
  import {
5
5
  ensureCodexTrustsPusharyHooks
6
- } from "./chunk-XQOT4CCK.js";
6
+ } from "./chunk-45BA4RL6.js";
7
7
  import {
8
8
  addClaudeMcpServer,
9
9
  addPusharyHooks,
10
10
  addPusharyToolPermissions
11
- } from "./chunk-HWG7X3VI.js";
11
+ } from "./chunk-UMVM4HVV.js";
12
12
  import {
13
13
  claudeUnprovenHolds,
14
14
  claudeWired,
15
15
  codexUnprovenHolds,
16
16
  codexWired,
17
17
  geminiWired
18
- } from "./chunk-MOQOJOMD.js";
18
+ } from "./chunk-NYFBIXA7.js";
19
19
  import {
20
20
  CLAUDE_HOOK_BINARY,
21
21
  CLAUDE_HOOK_EVENTS,
@@ -27,7 +27,7 @@ import {
27
27
  needsReregistration,
28
28
  registrationSignatures,
29
29
  supportedClaudeEvents
30
- } from "./chunk-BK5F3FGE.js";
30
+ } from "./chunk-3TKMWW34.js";
31
31
  import {
32
32
  CODEX_HOOK_BINARY,
33
33
  addCodexHookTrust,
@@ -47,7 +47,7 @@ import {
47
47
  registrationHolderOf,
48
48
  resolveGlobalBinary,
49
49
  vscodePluginMcp
50
- } from "./chunk-F2OPOBRO.js";
50
+ } from "./chunk-L2FPZQQM.js";
51
51
  import {
52
52
  readJsonSafe,
53
53
  writeFileAtomic,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  describeKeyCheck,
3
3
  keyCheckFromResponse
4
- } from "./chunk-CSW6A2EW.js";
4
+ } from "./chunk-MZCYOUBR.js";
5
5
  import {
6
6
  createIo
7
7
  } from "./chunk-5RUIFDTP.js";
@@ -2,10 +2,10 @@ import {
2
2
  resolveBinary,
3
3
  resolveGlobalPackageVersion,
4
4
  resolvePackageVersionFromBinary
5
- } from "./chunk-F2OPOBRO.js";
5
+ } from "./chunk-L2FPZQQM.js";
6
6
  import {
7
7
  MANAGED_PROVIDERS
8
- } from "./chunk-YFD7CRIZ.js";
8
+ } from "./chunk-NTTMJFJU.js";
9
9
 
10
10
  // src/live-capabilities.ts
11
11
  var CLAUDE_BRIDGE_CAPABILITY = "claude-bridge";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  HOOK_HOLD_BUDGET_ENV,
3
3
  hookHoldBudgetProof
4
- } from "./chunk-YFD7CRIZ.js";
4
+ } from "./chunk-NTTMJFJU.js";
5
5
 
6
6
  // src/hold-budget.ts
7
7
  var takeHookHoldBudget = (args = process.argv.slice(2), env = process.env) => {
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-OSJEMXSR.js";
4
4
  import {
5
5
  normalizeInstallSource
6
- } from "./chunk-YFD7CRIZ.js";
6
+ } from "./chunk-NTTMJFJU.js";
7
7
 
8
8
  // src/install-source.ts
9
9
  import { readFileSync } from "fs";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  AGENT_CHOICES
3
- } from "./chunk-A5URWZTP.js";
3
+ } from "./chunk-MK7ZJ2JN.js";
4
4
  import {
5
5
  isBridgeLocator
6
- } from "./chunk-GDXSCXQC.js";
6
+ } from "./chunk-VT5TVFM3.js";
7
7
  import {
8
8
  pusharyHookExecutable
9
- } from "./chunk-MOQOJOMD.js";
9
+ } from "./chunk-NYFBIXA7.js";
10
10
  import {
11
11
  BELL_HOOK_BINARY
12
- } from "./chunk-OR3A3RLH.js";
12
+ } from "./chunk-CATEMFAP.js";
13
13
 
14
14
  // src/setup/hook-ownership.ts
15
15
  var commandsIn = (value) => {
@@ -15,11 +15,11 @@ import {
15
15
  } from "./chunk-HETOKNIL.js";
16
16
  import {
17
17
  reportedInstallSource
18
- } from "./chunk-VMNI33F5.js";
18
+ } from "./chunk-IEXXFXSP.js";
19
19
  import {
20
20
  PAIR_TTL_SECONDS,
21
21
  isAnswerSource
22
- } from "./chunk-YFD7CRIZ.js";
22
+ } from "./chunk-NTTMJFJU.js";
23
23
  import {
24
24
  NPX_LATEST_COMMAND
25
25
  } from "./chunk-EA3IELHP.js";
@@ -2,7 +2,7 @@ import {
2
2
  HOOK_BUDGETS,
3
3
  HOOK_LOCATOR_BINARY,
4
4
  withHookHoldBudget
5
- } from "./chunk-YFD7CRIZ.js";
5
+ } from "./chunk-NTTMJFJU.js";
6
6
  import {
7
7
  isReleaseVersion
8
8
  } from "./chunk-HWJW3CPO.js";
@@ -6,16 +6,16 @@ import {
6
6
  } from "./chunk-SGZJ5LYH.js";
7
7
  import {
8
8
  hookOwnerOf
9
- } from "./chunk-KZBGITM4.js";
9
+ } from "./chunk-J7X5YVTP.js";
10
10
  import {
11
11
  ensureDaemonRunning
12
- } from "./chunk-DZ75BJ7V.js";
12
+ } from "./chunk-2PHHXWA4.js";
13
13
  import {
14
14
  buildTranscriptRecords,
15
15
  decodePublicKey,
16
16
  generateSessionKey,
17
17
  wrapSessionKey
18
- } from "./chunk-SFNRAEEW.js";
18
+ } from "./chunk-VT63XWPR.js";
19
19
  import {
20
20
  fetchTranscriptRecipients,
21
21
  uploadTranscriptRecords
@@ -23,14 +23,14 @@ import {
23
23
  import {
24
24
  transcriptEnvironmentPreference,
25
25
  transcriptsEnabled
26
- } from "./chunk-GP6SFVEN.js";
26
+ } from "./chunk-WBWF7WU7.js";
27
27
  import {
28
28
  codexHome,
29
29
  pusharyDir
30
- } from "./chunk-F2OPOBRO.js";
30
+ } from "./chunk-L2FPZQQM.js";
31
31
  import {
32
32
  readTranscriptPreference
33
- } from "./chunk-TDKE3V6W.js";
33
+ } from "./chunk-OLD4YGZR.js";
34
34
  import {
35
35
  writeJsonAtomic
36
36
  } from "./chunk-T7E75EKA.js";
@@ -145,6 +145,8 @@ var claimBlockedAction = async (apiKey, request, timeoutMs) => {
145
145
 
146
146
  export {
147
147
  isPolicyConfig,
148
+ isAskUserResponse,
149
+ isWaitForAnswerResponse,
148
150
  DECISION_STOP_REASON,
149
151
  isDecisionStopped,
150
152
  isLocalQuestionHandoff,
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  COMPATIBLE_AGENT_TYPES,
9
9
  isValidApiKey
10
- } from "./chunk-YFD7CRIZ.js";
10
+ } from "./chunk-NTTMJFJU.js";
11
11
 
12
12
  // src/setup/options.ts
13
13
  var AGENT_CHOICES = ["claude_code", "codex", "gemini_cli", "hermes", "cursor", "vscode", "opencode", ...COMPATIBLE_AGENT_TYPES, "custom"];
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  PRETOOLUSE_GATED_TOOLS
3
- } from "./chunk-YFD7CRIZ.js";
3
+ } from "./chunk-NTTMJFJU.js";
4
4
 
5
5
  // src/claude-tools.ts
6
6
  var POSTTOOLUSE_MIRROR_ONLY_TOOLS = ["TodoWrite", "Task", "WebFetch", "WebSearch"];
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  isValidApiKey,
15
15
  normalizeKeyScope
16
- } from "./chunk-YFD7CRIZ.js";
16
+ } from "./chunk-NTTMJFJU.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;
@@ -2309,17 +2309,21 @@ var elicitationEnum = (property) => {
2309
2309
  var readElicitationFields = (schema) => {
2310
2310
  const record = elicitationRecord(schema);
2311
2311
  const properties = elicitationRecord(record?.properties);
2312
- if (!properties) return null;
2312
+ if (!properties || record?.type !== "object") return null;
2313
+ if (Object.keys(record).some((key) => !["type", "properties", "required", "$schema"].includes(key))) return null;
2314
+ if (record.required !== void 0 && (!Array.isArray(record.required) || !record.required.every((name) => typeof name === "string" && Object.hasOwn(properties, name)))) return null;
2313
2315
  const entries = Object.entries(properties);
2314
2316
  if (entries.length === 0) return null;
2315
2317
  const fields = [];
2316
2318
  for (const [name, raw] of entries) {
2317
2319
  const property = elicitationRecord(raw);
2318
- if (!property) return null;
2320
+ if (!property || !name) return null;
2321
+ if (Object.keys(property).some((key) => !["type", "title", "enum"].includes(key))) return null;
2322
+ if (property.title !== void 0 && typeof property.title !== "string") return null;
2319
2323
  const label = elicitationLabel(name, property);
2320
2324
  if ("enum" in property) {
2321
2325
  const options = elicitationEnum(property);
2322
- if (!options) return null;
2326
+ if (property.type !== "string" || !options || options.some((option) => !option.trim()) || new Set(options).size !== options.length) return null;
2323
2327
  fields.push({ kind: "choice", name, label, options });
2324
2328
  continue;
2325
2329
  }
@@ -2,17 +2,17 @@ import {
2
2
  CLAUDE_HOOK_EVENTS,
3
3
  GEMINI_HOOK_EVENTS,
4
4
  hasGeminiHooks
5
- } from "./chunk-BK5F3FGE.js";
5
+ } from "./chunk-3TKMWW34.js";
6
6
  import {
7
7
  CODEX_HOOK_EVENTS,
8
8
  hasCodexHooks,
9
9
  holdBudgetOf
10
- } from "./chunk-F2OPOBRO.js";
10
+ } from "./chunk-L2FPZQQM.js";
11
11
  import {
12
12
  CURSOR_GATE_EVENTS,
13
13
  HOOK_LOCATOR_BINARY,
14
14
  hookCommandHoldBudget
15
- } from "./chunk-YFD7CRIZ.js";
15
+ } from "./chunk-NTTMJFJU.js";
16
16
 
17
17
  // src/diagnostics/wiring.ts
18
18
  var record = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : null;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  autoUpdateState
3
- } from "./chunk-F2OPOBRO.js";
3
+ } from "./chunk-L2FPZQQM.js";
4
4
  import {
5
5
  readJsonSafe,
6
6
  writeJsonAtomic
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveInstallSourceFor
3
- } from "./chunk-VMNI33F5.js";
3
+ } from "./chunk-IEXXFXSP.js";
4
4
  import {
5
5
  backupFile,
6
6
  readJsonSafe,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readConfigFileKey
3
- } from "./chunk-TDKE3V6W.js";
3
+ } from "./chunk-OLD4YGZR.js";
4
4
 
5
5
  // src/bell/fleet.ts
6
6
  import { closeSync, constants, futimesSync, lstatSync, mkdirSync, openSync, readdirSync, unlinkSync } from "fs";
@@ -1,22 +1,22 @@
1
1
  import {
2
2
  NOTIFICATION_PUSH_TYPES,
3
3
  POSTTOOLUSE_MIRROR_ONLY_TOOLS
4
- } from "./chunk-VZANUMIF.js";
4
+ } from "./chunk-MR2GHF3F.js";
5
5
  import {
6
6
  cancelQuestion,
7
7
  isPolicyConfig,
8
8
  sendNotification,
9
9
  waitForAnswer
10
- } from "./chunk-PYCQXCI5.js";
10
+ } from "./chunk-LVHGSD5E.js";
11
11
  import {
12
12
  getMachineId
13
- } from "./chunk-7JSE6JTZ.js";
13
+ } from "./chunk-WHOD4YGB.js";
14
14
  import {
15
15
  withRetry
16
16
  } from "./chunk-HETOKNIL.js";
17
17
  import {
18
18
  reportedInstallSource
19
- } from "./chunk-VMNI33F5.js";
19
+ } from "./chunk-IEXXFXSP.js";
20
20
  import {
21
21
  getApiKey,
22
22
  getBaseUrl
@@ -44,7 +44,7 @@ import {
44
44
  resolveAutoResolveOrigin,
45
45
  resolvePolicy,
46
46
  toToolLookup
47
- } from "./chunk-YFD7CRIZ.js";
47
+ } from "./chunk-NTTMJFJU.js";
48
48
 
49
49
  // src/policy.ts
50
50
  import { createHash } from "crypto";
@@ -647,7 +647,7 @@ var MEANING_BY_HOOK = {
647
647
  beforeSubmitPrompt: { kind: "prompt", event: "user_prompt" },
648
648
  preCompact: { kind: "compaction", event: "compaction" },
649
649
  subagentStart: { kind: "session_start", event: "session_begin", action: "Subagent started" },
650
- subagentStop: { kind: "subagent_stop", event: "session_end" }
650
+ subagentStop: { kind: "subagent_stop", event: "notification" }
651
651
  },
652
652
  vscode: {
653
653
  PostToolUse: { kind: "tool", event: "tool_complete" },
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  registerTranscript
3
- } from "./chunk-A2GS2ENL.js";
3
+ } from "./chunk-LNMHLXNR.js";
4
4
  import {
5
5
  degradedLine
6
- } from "./chunk-YFD7CRIZ.js";
6
+ } from "./chunk-NTTMJFJU.js";
7
7
 
8
8
  // src/tool-hook-input.ts
9
9
  var OPTIONAL_TEXT_FIELDS = ["hook_event_name", "session_id", "cwd", "transcript_path", "tool_use_id", "permission_mode"];
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  activeHookSource,
3
3
  activeIdentity
4
- } from "./chunk-FI3LQCUH.js";
4
+ } from "./chunk-X4G4MQEV.js";
5
5
  import {
6
6
  blockedActionFingerprint,
7
7
  defersToNativeMode,
@@ -9,11 +9,11 @@ import {
9
9
  hasBlockedActionHint,
10
10
  recordBlockedActionHint,
11
11
  reportMachineDenial
12
- } from "./chunk-BE4P7ERZ.js";
12
+ } from "./chunk-ZR4NP264.js";
13
13
  import {
14
14
  isGatingMoment,
15
15
  recordKeylessMoment
16
- } from "./chunk-F4KRNFDE.js";
16
+ } from "./chunk-7WRJFRNF.js";
17
17
  import {
18
18
  denyReasonFrom,
19
19
  isDeferAnswer
@@ -36,7 +36,7 @@ import {
36
36
  reportEvent,
37
37
  scopePathFor,
38
38
  settleQuestionsForToolUse
39
- } from "./chunk-66BIMA62.js";
39
+ } from "./chunk-ROCRCXTP.js";
40
40
  import {
41
41
  DECISION_STOP_REASON,
42
42
  askUser,
@@ -48,10 +48,10 @@ import {
48
48
  requestGate,
49
49
  sendNotification,
50
50
  waitForQuestion
51
- } from "./chunk-PYCQXCI5.js";
51
+ } from "./chunk-LVHGSD5E.js";
52
52
  import {
53
53
  getMachineId
54
- } from "./chunk-7JSE6JTZ.js";
54
+ } from "./chunk-WHOD4YGB.js";
55
55
  import {
56
56
  getApiKey,
57
57
  getBaseUrl
@@ -83,7 +83,7 @@ import {
83
83
  parseAgentQuestions,
84
84
  resolveGate,
85
85
  stoppedOutput
86
- } from "./chunk-YFD7CRIZ.js";
86
+ } from "./chunk-NTTMJFJU.js";
87
87
 
88
88
  // src/claude-permission-rules.ts
89
89
  import { readFileSync, statSync } from "fs";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  CLAUDE_HOOK_EVENTS,
3
3
  supportedClaudeEvents
4
- } from "./chunk-BK5F3FGE.js";
4
+ } from "./chunk-3TKMWW34.js";
5
5
  import {
6
6
  guardBinary,
7
7
  holdBudgetOf,
8
8
  isProtectedByScope,
9
9
  registerHookEntry
10
- } from "./chunk-F2OPOBRO.js";
10
+ } from "./chunk-L2FPZQQM.js";
11
11
  import {
12
12
  HOOK_LOCATOR_BINARY,
13
13
  withHookHoldBudget
14
- } from "./chunk-YFD7CRIZ.js";
14
+ } from "./chunk-NTTMJFJU.js";
15
15
 
16
16
  // src/claude-config.ts
17
17
  import { join } from "path";