@pushary/agent-hooks 1.1.0 → 1.3.0

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 +24 -0
  2. package/data/SKILL.md +20 -8
  3. package/data/cursor-plugin/skills/pushary/SKILL.md +19 -7
  4. package/data/vscode-plugin/skills/pushary/SKILL.md +19 -7
  5. package/dist/bin/pushary-bell-hook.js +18 -18
  6. package/dist/bin/pushary-bell.js +6 -6
  7. package/dist/bin/pushary-claude.js +18 -18
  8. package/dist/bin/pushary-clean.js +19 -19
  9. package/dist/bin/pushary-codex-bridge.js +10 -10
  10. package/dist/bin/pushary-codex-hook.js +22 -22
  11. package/dist/bin/pushary-codex.js +6 -6
  12. package/dist/bin/pushary-connect.js +6 -6
  13. package/dist/bin/pushary-cowork.js +3 -3
  14. package/dist/bin/pushary-daemon.js +22 -22
  15. package/dist/bin/pushary-disconnect.js +10 -10
  16. package/dist/bin/pushary-doctor.js +23 -23
  17. package/dist/bin/pushary-elicitation-hook.js +17 -17
  18. package/dist/bin/pushary-gemini-bridge.js +9 -9
  19. package/dist/bin/pushary-gemini-hook.js +19 -19
  20. package/dist/bin/pushary-hook.js +26 -26
  21. package/dist/bin/pushary-login.js +7 -7
  22. package/dist/bin/pushary-logout.js +4 -4
  23. package/dist/bin/pushary-mode.js +3 -3
  24. package/dist/bin/pushary-notification-hook.js +20 -20
  25. package/dist/bin/pushary-opencode-hook.js +19 -19
  26. package/dist/bin/pushary-permission-denied-hook.js +24 -24
  27. package/dist/bin/pushary-permission-hook.js +25 -25
  28. package/dist/bin/pushary-post-hook.js +20 -20
  29. package/dist/bin/pushary-prompt-hook.js +20 -20
  30. package/dist/bin/pushary-session-end-hook.js +20 -20
  31. package/dist/bin/pushary-session-start-hook.js +22 -22
  32. package/dist/bin/pushary-setup.js +26 -26
  33. package/dist/bin/pushary-stats.js +2 -2
  34. package/dist/bin/pushary-status.js +10 -10
  35. package/dist/bin/pushary-stop-hook.js +20 -20
  36. package/dist/bin/pushary-stopfailure-hook.js +20 -20
  37. package/dist/bin/pushary-transcript-register.js +16 -16
  38. package/dist/bin/pushary-transcripts.js +4 -4
  39. package/dist/bin/pushary-upgrade.js +14 -14
  40. package/dist/bin/pushary-wait.js +3 -3
  41. package/dist/{chunk-SA6UB3GD.js → chunk-2PLEJ7SY.js} +1 -1
  42. package/dist/{chunk-RZTH4MIY.js → chunk-3AIFWTVB.js} +2 -2
  43. package/dist/{chunk-MZUXTN7X.js → chunk-4V24U44H.js} +2 -2
  44. package/dist/{chunk-2MOQUNFL.js → chunk-A2URMNFM.js} +1 -1
  45. package/dist/{chunk-IH7YUPFN.js → chunk-A5ZWYQFV.js} +3 -3
  46. package/dist/{chunk-BBUZD7MU.js → chunk-B3S4SF3D.js} +1 -1
  47. package/dist/{chunk-76ZCJZBK.js → chunk-BL4SQNO6.js} +1 -1
  48. package/dist/{chunk-SM54HHVY.js → chunk-BNDHXPTQ.js} +21 -14
  49. package/dist/{chunk-OYYQHJAO.js → chunk-BYGEZI7B.js} +1 -1
  50. package/dist/{chunk-LUYYB6V2.js → chunk-DON24PNT.js} +1 -1
  51. package/dist/{chunk-AH5OO2YZ.js → chunk-DVO4SZMJ.js} +3 -3
  52. package/dist/{chunk-S2BNTXP6.js → chunk-E7WBNGJS.js} +1 -1
  53. package/dist/{chunk-XIHKSZHL.js → chunk-EJZCV5G4.js} +1 -1
  54. package/dist/{chunk-FO4HHPMO.js → chunk-EKQAKSGI.js} +1 -1
  55. package/dist/{chunk-PWIMJP4U.js → chunk-EU6JH7KU.js} +6 -6
  56. package/dist/{chunk-PQG6NTPT.js → chunk-EYMMU5HC.js} +1 -1
  57. package/dist/{chunk-PUDQJ772.js → chunk-FGVNU7XD.js} +1 -1
  58. package/dist/{chunk-INBTKFT6.js → chunk-IAEVVUXO.js} +1 -1
  59. package/dist/{chunk-SLEWDZOA.js → chunk-JYEGOYQC.js} +1 -1
  60. package/dist/{chunk-MR2PWE62.js → chunk-K4TAUYUJ.js} +7 -8
  61. package/dist/{chunk-J7PJALS2.js → chunk-K7UIAE7I.js} +1 -1
  62. package/dist/{chunk-QACXZYDA.js → chunk-KPNGPRYU.js} +4 -4
  63. package/dist/{chunk-6JUCFMSF.js → chunk-KS4P6F3R.js} +3 -3
  64. package/dist/{chunk-ISELLVBP.js → chunk-MU275U5A.js} +1 -1
  65. package/dist/{chunk-LQ3BHPPZ.js → chunk-N43EQPJK.js} +5 -1
  66. package/dist/{chunk-YM4G6CFN.js → chunk-OE6U2AXM.js} +3 -3
  67. package/dist/{chunk-E3WQMDCE.js → chunk-POAFXBNH.js} +1 -1
  68. package/dist/{chunk-EWQZISYV.js → chunk-RHLUJE4H.js} +1 -1
  69. package/dist/{chunk-PHJOSAXW.js → chunk-RVDHN2TJ.js} +2 -2
  70. package/dist/{chunk-EZ3GX3NS.js → chunk-UVXNYYHG.js} +5 -5
  71. package/dist/{chunk-VQYARC2K.js → chunk-WPJS3OZH.js} +109 -21
  72. package/dist/{chunk-WTT24AUA.js → chunk-WXXDHGTZ.js} +29 -5
  73. package/dist/{chunk-DKTFZCLQ.js → chunk-X3KIGNIP.js} +6 -6
  74. package/dist/{chunk-IPDBFJ2M.js → chunk-XBJW4MV5.js} +1 -1
  75. package/dist/{chunk-UP7NZXJU.js → chunk-XBO42HKH.js} +1 -1
  76. package/dist/{chunk-DZYIAMKR.js → chunk-XEXOHUJ6.js} +4 -4
  77. package/dist/{chunk-VACFOGF3.js → chunk-YF4JDCU4.js} +1 -1
  78. package/dist/{chunk-6T4OINZB.js → chunk-ZHL62DRA.js} +3 -3
  79. package/dist/{reapply-STSGYPF2.js → reapply-FUCAKR6Z.js} +8 -8
  80. package/dist/src/index.js +12 -12
  81. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reportEvent
4
- } from "../chunk-WTT24AUA.js";
5
- import "../chunk-INBTKFT6.js";
4
+ } from "../chunk-WXXDHGTZ.js";
5
+ import "../chunk-IAEVVUXO.js";
6
6
  import {
7
7
  askUser,
8
8
  isDecisionStopped,
@@ -10,18 +10,18 @@ import {
10
10
  } from "../chunk-LGXUGYUH.js";
11
11
  import {
12
12
  getMachineId
13
- } from "../chunk-J7PJALS2.js";
14
- import "../chunk-EWQZISYV.js";
13
+ } from "../chunk-K7UIAE7I.js";
14
+ import "../chunk-RHLUJE4H.js";
15
15
  import "../chunk-EYRGBYZG.js";
16
16
  import "../chunk-SAF6HGAA.js";
17
17
  import "../chunk-7QLSKOSU.js";
18
18
  import "../chunk-KZERVKTD.js";
19
- import "../chunk-E3WQMDCE.js";
19
+ import "../chunk-POAFXBNH.js";
20
20
  import "../chunk-4LL6LG5X.js";
21
21
  import {
22
22
  getApiKey
23
23
  } from "../chunk-2UMNXADU.js";
24
- import "../chunk-VQYARC2K.js";
24
+ import "../chunk-WPJS3OZH.js";
25
25
 
26
26
  // bin/pushary-codex.ts
27
27
  import { basename } from "path";
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  printKeyCheck
4
- } from "../chunk-76ZCJZBK.js";
4
+ } from "../chunk-BL4SQNO6.js";
5
5
  import {
6
6
  connectDevice,
7
7
  connectExistingApp,
8
8
  printConnectInstructions
9
- } from "../chunk-PHJOSAXW.js";
9
+ } from "../chunk-RVDHN2TJ.js";
10
10
  import "../chunk-3EGEA4KH.js";
11
11
  import {
12
12
  checkApiKey
13
- } from "../chunk-LUYYB6V2.js";
13
+ } from "../chunk-DON24PNT.js";
14
14
  import "../chunk-QCGNGEGE.js";
15
15
  import {
16
16
  createIo
@@ -25,7 +25,7 @@ import {
25
25
  import "../chunk-DINDL2CF.js";
26
26
  import {
27
27
  readKeySource
28
- } from "../chunk-UP7NZXJU.js";
28
+ } from "../chunk-XBO42HKH.js";
29
29
  import "../chunk-EYRGBYZG.js";
30
30
  import "../chunk-SAF6HGAA.js";
31
31
  import {
@@ -34,10 +34,10 @@ import {
34
34
  import {
35
35
  EXIT
36
36
  } from "../chunk-KZERVKTD.js";
37
- import "../chunk-E3WQMDCE.js";
37
+ import "../chunk-POAFXBNH.js";
38
38
  import "../chunk-4LL6LG5X.js";
39
39
  import "../chunk-2UMNXADU.js";
40
- import "../chunk-VQYARC2K.js";
40
+ import "../chunk-WPJS3OZH.js";
41
41
 
42
42
  // bin/pushary-connect.ts
43
43
  exitOnHelpFlag("connect");
@@ -2,12 +2,12 @@
2
2
  import {
3
3
  coworkOutput,
4
4
  parseCoworkOptions
5
- } from "../chunk-RZTH4MIY.js";
5
+ } from "../chunk-3AIFWTVB.js";
6
6
  import {
7
7
  canOpenBrowser,
8
8
  openInBrowser
9
9
  } from "../chunk-PUZZELE6.js";
10
- import "../chunk-OYYQHJAO.js";
10
+ import "../chunk-BYGEZI7B.js";
11
11
  import {
12
12
  exitOnHelpFlag
13
13
  } from "../chunk-GOQHN2UH.js";
@@ -22,7 +22,7 @@ import {
22
22
  } from "../chunk-KZERVKTD.js";
23
23
  import {
24
24
  CLAUDE_CONNECTOR_GUIDE
25
- } from "../chunk-VQYARC2K.js";
25
+ } from "../chunk-WPJS3OZH.js";
26
26
 
27
27
  // bin/pushary-cowork.ts
28
28
  exitOnHelpFlag("cowork");
@@ -1,18 +1,18 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  inspectConfiguredManagedProviders
4
- } from "../chunk-EZ3GX3NS.js";
5
- import "../chunk-IPDBFJ2M.js";
4
+ } from "../chunk-UVXNYYHG.js";
5
+ import "../chunk-XBJW4MV5.js";
6
6
  import {
7
7
  HEARTBEAT_INTERVAL_MS,
8
8
  sendHeartbeat
9
- } from "../chunk-QACXZYDA.js";
10
- import "../chunk-6T4OINZB.js";
9
+ } from "../chunk-KPNGPRYU.js";
10
+ import "../chunk-ZHL62DRA.js";
11
11
  import {
12
12
  detectProviderLiveCapabilities,
13
13
  hasSpawnProvider,
14
14
  resolveControlPolicy
15
- } from "../chunk-MZUXTN7X.js";
15
+ } from "../chunk-4V24U44H.js";
16
16
  import {
17
17
  SESSION_REAP_SILENCE_MS,
18
18
  describeIdleWindow,
@@ -20,15 +20,15 @@ import {
20
20
  listProcessProofs,
21
21
  ownsLiveProcess,
22
22
  silentSpawnedProofs
23
- } from "../chunk-ISELLVBP.js";
23
+ } from "../chunk-MU275U5A.js";
24
24
  import {
25
25
  startRegisteredTranscripts
26
- } from "../chunk-PWIMJP4U.js";
26
+ } from "../chunk-EU6JH7KU.js";
27
27
  import "../chunk-YKLCWWEI.js";
28
- import "../chunk-DZYIAMKR.js";
29
- import "../chunk-OYYQHJAO.js";
30
- import "../chunk-SLEWDZOA.js";
31
- import "../chunk-AH5OO2YZ.js";
28
+ import "../chunk-XEXOHUJ6.js";
29
+ import "../chunk-BYGEZI7B.js";
30
+ import "../chunk-JYEGOYQC.js";
31
+ import "../chunk-DVO4SZMJ.js";
32
32
  import {
33
33
  DAEMON_LEASE_RENEW_INTERVAL_MS,
34
34
  acquireDaemonLease,
@@ -45,22 +45,22 @@ import {
45
45
  requestDaemonHandoff,
46
46
  stopDaemonRunning,
47
47
  writeDaemonNeedsLogin
48
- } from "../chunk-6JUCFMSF.js";
49
- import "../chunk-YM4G6CFN.js";
50
- import "../chunk-SA6UB3GD.js";
51
- import "../chunk-BBUZD7MU.js";
48
+ } from "../chunk-KS4P6F3R.js";
49
+ import "../chunk-OE6U2AXM.js";
50
+ import "../chunk-2PLEJ7SY.js";
51
+ import "../chunk-B3S4SF3D.js";
52
52
  import "../chunk-EQRS3SGM.js";
53
- import "../chunk-2MOQUNFL.js";
53
+ import "../chunk-A2URMNFM.js";
54
54
  import {
55
55
  spawnClaude
56
56
  } from "../chunk-XHKBHWLX.js";
57
- import "../chunk-INBTKFT6.js";
57
+ import "../chunk-IAEVVUXO.js";
58
58
  import {
59
59
  getMachineId
60
- } from "../chunk-J7PJALS2.js";
60
+ } from "../chunk-K7UIAE7I.js";
61
61
  import {
62
62
  resolveBinary
63
- } from "../chunk-EWQZISYV.js";
63
+ } from "../chunk-RHLUJE4H.js";
64
64
  import {
65
65
  writeHuman
66
66
  } from "../chunk-QCGNGEGE.js";
@@ -72,18 +72,18 @@ import "../chunk-GMXKITVA.js";
72
72
  import "../chunk-DINDL2CF.js";
73
73
  import {
74
74
  readControlMode
75
- } from "../chunk-UP7NZXJU.js";
75
+ } from "../chunk-XBO42HKH.js";
76
76
  import "../chunk-7QLSKOSU.js";
77
77
  import {
78
78
  EXIT
79
79
  } from "../chunk-KZERVKTD.js";
80
- import "../chunk-E3WQMDCE.js";
80
+ import "../chunk-POAFXBNH.js";
81
81
  import "../chunk-4LL6LG5X.js";
82
82
  import {
83
83
  getApiKey,
84
84
  getBaseUrl
85
85
  } from "../chunk-2UMNXADU.js";
86
- import "../chunk-VQYARC2K.js";
86
+ import "../chunk-WPJS3OZH.js";
87
87
 
88
88
  // src/spawn-daemon.ts
89
89
  import { execFileSync, spawn } from "child_process";
@@ -8,28 +8,28 @@ import {
8
8
  openCodePluginDir,
9
9
  openCodePluginFile,
10
10
  removeOpenCodeMcpServer
11
- } from "../chunk-S2BNTXP6.js";
11
+ } from "../chunk-E7WBNGJS.js";
12
12
  import {
13
13
  compatibleConfigFile,
14
14
  compatibleMcpFile,
15
15
  compatiblePermissionRuleFile,
16
16
  removeCompatibleHooks,
17
17
  removeCompatibleMcpServer
18
- } from "../chunk-SM54HHVY.js";
18
+ } from "../chunk-BNDHXPTQ.js";
19
19
  import {
20
20
  isClaudeMcpSnapshot,
21
21
  removeClaudeMcpServers,
22
22
  removePusharySettings,
23
23
  removePusharyToolPermissions,
24
24
  restoreClaudeMcpServer
25
- } from "../chunk-6T4OINZB.js";
25
+ } from "../chunk-ZHL62DRA.js";
26
26
  import {
27
27
  removeGeminiSettings
28
- } from "../chunk-YM4G6CFN.js";
29
- import "../chunk-WTT24AUA.js";
30
- import "../chunk-INBTKFT6.js";
28
+ } from "../chunk-OE6U2AXM.js";
29
+ import "../chunk-WXXDHGTZ.js";
30
+ import "../chunk-IAEVVUXO.js";
31
31
  import "../chunk-LGXUGYUH.js";
32
- import "../chunk-J7PJALS2.js";
32
+ import "../chunk-K7UIAE7I.js";
33
33
  import {
34
34
  claudeJson,
35
35
  claudeMcpReceipt,
@@ -43,7 +43,7 @@ import {
43
43
  geminiSettings,
44
44
  removeCodexHooks,
45
45
  removeCodexSettings
46
- } from "../chunk-EWQZISYV.js";
46
+ } from "../chunk-RHLUJE4H.js";
47
47
  import {
48
48
  exitOnHelpFlag
49
49
  } from "../chunk-GOQHN2UH.js";
@@ -53,13 +53,13 @@ import "../chunk-EYRGBYZG.js";
53
53
  import "../chunk-SAF6HGAA.js";
54
54
  import "../chunk-7QLSKOSU.js";
55
55
  import "../chunk-KZERVKTD.js";
56
- import "../chunk-E3WQMDCE.js";
56
+ import "../chunk-POAFXBNH.js";
57
57
  import "../chunk-4LL6LG5X.js";
58
58
  import "../chunk-2UMNXADU.js";
59
59
  import {
60
60
  DISCONNECTABLE_AGENTS,
61
61
  hookCompatibleProfileBySource
62
- } from "../chunk-VQYARC2K.js";
62
+ } from "../chunk-WPJS3OZH.js";
63
63
 
64
64
  // bin/pushary-disconnect.ts
65
65
  import { readdirSync, readFileSync, rmSync, writeFileSync } from "fs";
@@ -9,7 +9,7 @@ import {
9
9
  import {
10
10
  readMachineReadiness,
11
11
  readManagedControlEvidence
12
- } from "../chunk-QACXZYDA.js";
12
+ } from "../chunk-KPNGPRYU.js";
13
13
  import {
14
14
  CURSOR_GATE_SCRIPT
15
15
  } from "../chunk-KBITFQST.js";
@@ -22,35 +22,35 @@ import {
22
22
  isPluginRegistered,
23
23
  shortenHome,
24
24
  vscodeSettingsTargets
25
- } from "../chunk-MR2PWE62.js";
25
+ } from "../chunk-K4TAUYUJ.js";
26
26
  import {
27
27
  OPENCODE_PLUGIN_PLACEHOLDER,
28
28
  openCodePluginDir,
29
29
  openCodePluginFile,
30
30
  openCodeWired
31
- } from "../chunk-S2BNTXP6.js";
31
+ } from "../chunk-E7WBNGJS.js";
32
32
  import {
33
33
  compatibleConfigFile,
34
34
  compatibleInstructionsFile,
35
35
  compatibleMcpFile,
36
36
  hasCompatibleHooks,
37
37
  missingCompatibleHookEvents
38
- } from "../chunk-SM54HHVY.js";
39
- import "../chunk-6T4OINZB.js";
38
+ } from "../chunk-BNDHXPTQ.js";
39
+ import "../chunk-ZHL62DRA.js";
40
40
  import {
41
41
  detectProviderLiveCapabilities,
42
42
  hasSpawnProvider,
43
43
  resolveControlPolicy
44
- } from "../chunk-MZUXTN7X.js";
44
+ } from "../chunk-4V24U44H.js";
45
45
  import {
46
46
  readLedgerSummary
47
- } from "../chunk-VACFOGF3.js";
47
+ } from "../chunk-YF4JDCU4.js";
48
48
  import {
49
49
  describeBridgeResolution,
50
50
  isBridgeLocator,
51
51
  liveBridgeProbe,
52
52
  resolveBridgeStub
53
- } from "../chunk-SLEWDZOA.js";
53
+ } from "../chunk-JYEGOYQC.js";
54
54
  import {
55
55
  claudeOtherHolders,
56
56
  claudeUnprovenHolds,
@@ -67,7 +67,7 @@ import {
67
67
  geminiWired,
68
68
  holdsLong,
69
69
  pusharyHookExecutable
70
- } from "../chunk-AH5OO2YZ.js";
70
+ } from "../chunk-DVO4SZMJ.js";
71
71
  import {
72
72
  daemonHasRemoteProof,
73
73
  daemonServiceManagerAvailable,
@@ -76,19 +76,19 @@ import {
76
76
  readDaemonNeedsLogin,
77
77
  readDaemonStatus,
78
78
  readInstalledDaemonService
79
- } from "../chunk-6JUCFMSF.js";
79
+ } from "../chunk-KS4P6F3R.js";
80
80
  import {
81
81
  GEMINI_HOOK_BINARY,
82
82
  hasGeminiHooks,
83
83
  missingGeminiHookEvents
84
- } from "../chunk-YM4G6CFN.js";
84
+ } from "../chunk-OE6U2AXM.js";
85
85
  import "../chunk-XHKBHWLX.js";
86
- import "../chunk-WTT24AUA.js";
87
- import "../chunk-INBTKFT6.js";
86
+ import "../chunk-WXXDHGTZ.js";
87
+ import "../chunk-IAEVVUXO.js";
88
88
  import "../chunk-LGXUGYUH.js";
89
89
  import {
90
90
  getMachineId
91
- } from "../chunk-J7PJALS2.js";
91
+ } from "../chunk-K7UIAE7I.js";
92
92
  import {
93
93
  CODEX_HOOK_EVENTS,
94
94
  claudeJson,
@@ -111,7 +111,7 @@ import {
111
111
  pusharyConfigFile,
112
112
  readCodexMcpAuth,
113
113
  vscodePluginDir
114
- } from "../chunk-EWQZISYV.js";
114
+ } from "../chunk-RHLUJE4H.js";
115
115
  import {
116
116
  describeReach,
117
117
  describeRoundTrip,
@@ -119,12 +119,12 @@ import {
119
119
  reachVerdict,
120
120
  roundTripEvidence,
121
121
  verifyRoundTrip
122
- } from "../chunk-PHJOSAXW.js";
122
+ } from "../chunk-RVDHN2TJ.js";
123
123
  import "../chunk-3EGEA4KH.js";
124
124
  import {
125
125
  checkApiKey,
126
126
  describeKeyCheck
127
- } from "../chunk-LUYYB6V2.js";
127
+ } from "../chunk-DON24PNT.js";
128
128
  import "../chunk-QCGNGEGE.js";
129
129
  import {
130
130
  createIo
@@ -143,7 +143,7 @@ import {
143
143
  keyPrefix,
144
144
  readControlMode,
145
145
  readKeySource
146
- } from "../chunk-UP7NZXJU.js";
146
+ } from "../chunk-XBO42HKH.js";
147
147
  import {
148
148
  callMcpTool,
149
149
  sendMcpRequest
@@ -155,7 +155,7 @@ import {
155
155
  import {
156
156
  EXIT
157
157
  } from "../chunk-KZERVKTD.js";
158
- import "../chunk-E3WQMDCE.js";
158
+ import "../chunk-POAFXBNH.js";
159
159
  import "../chunk-4LL6LG5X.js";
160
160
  import {
161
161
  getBaseUrl
@@ -167,7 +167,7 @@ import {
167
167
  HOOK_LOCATOR_BINARY,
168
168
  hookActivationResult,
169
169
  isHookActivationReport
170
- } from "../chunk-VQYARC2K.js";
170
+ } from "../chunk-WPJS3OZH.js";
171
171
 
172
172
  // bin/pushary-doctor.ts
173
173
  import { existsSync, readFileSync, writeFileSync } from "fs";
@@ -506,7 +506,7 @@ var main = async () => {
506
506
  }
507
507
  }
508
508
  const settings = claudeInPlay ? readJson(CLAUDE_SETTINGS) : null;
509
- let claudeHooksPresent = false;
509
+ let claudeHooksMissing = 0;
510
510
  if (settings) {
511
511
  const hooks = settings.hooks;
512
512
  const CLAUDE_HOOK_CHECKS = [
@@ -524,7 +524,7 @@ var main = async () => {
524
524
  for (const { event, needle, label } of CLAUDE_HOOK_CHECKS) {
525
525
  const configured = JSON.stringify(hooks?.[event] ?? []);
526
526
  const present = configured.includes(needle) || configured.includes(HOOK_LOCATOR_BINARY);
527
- if (present) claudeHooksPresent = true;
527
+ if (!present) claudeHooksMissing += 1;
528
528
  check(present, `Claude Code: ${label}`, present ? void 0 : "missing \u2014 run npx @pushary/agent-hooks@latest upgrade");
529
529
  }
530
530
  for (const event of claudeUnprovenHolds(settings)) {
@@ -547,7 +547,7 @@ var main = async () => {
547
547
  } else if (claudeInPlay) {
548
548
  check(false, "Claude Code: settings.json", "not found");
549
549
  }
550
- const claudeHookState = { wired: claudeInPlay, hooksIntact: claudeHooksPresent };
550
+ const claudeHookState = { wired: claudeInPlay, hooksIntact: settings !== null && claudeHooksMissing === 0 };
551
551
  for (const finding of rewriterFindings({
552
552
  present: (rewriter) => rewriter.markers.some((marker) => existsSync(join(homedir2(), ...marker))),
553
553
  agentState: (agent) => agent === "Claude Code" ? claudeHookState : void 0
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  readHookInput
4
- } from "../chunk-LQ3BHPPZ.js";
4
+ } from "../chunk-N43EQPJK.js";
5
5
  import {
6
6
  isDeferAnswer
7
7
  } from "../chunk-YHG74UFF.js";
8
- import "../chunk-PWIMJP4U.js";
8
+ import "../chunk-EU6JH7KU.js";
9
9
  import "../chunk-YKLCWWEI.js";
10
- import "../chunk-DZYIAMKR.js";
11
- import "../chunk-OYYQHJAO.js";
12
- import "../chunk-SLEWDZOA.js";
13
- import "../chunk-AH5OO2YZ.js";
14
- import "../chunk-6JUCFMSF.js";
15
- import "../chunk-YM4G6CFN.js";
16
- import "../chunk-SA6UB3GD.js";
17
- import "../chunk-BBUZD7MU.js";
10
+ import "../chunk-XEXOHUJ6.js";
11
+ import "../chunk-BYGEZI7B.js";
12
+ import "../chunk-JYEGOYQC.js";
13
+ import "../chunk-DVO4SZMJ.js";
14
+ import "../chunk-KS4P6F3R.js";
15
+ import "../chunk-OE6U2AXM.js";
16
+ import "../chunk-2PLEJ7SY.js";
17
+ import "../chunk-B3S4SF3D.js";
18
18
  import "../chunk-EQRS3SGM.js";
19
- import "../chunk-2MOQUNFL.js";
19
+ import "../chunk-A2URMNFM.js";
20
20
  import "../chunk-XHKBHWLX.js";
21
- import "../chunk-INBTKFT6.js";
21
+ import "../chunk-IAEVVUXO.js";
22
22
  import {
23
23
  askUser,
24
24
  isDecisionStopped,
@@ -26,16 +26,16 @@ import {
26
26
  } from "../chunk-LGXUGYUH.js";
27
27
  import {
28
28
  getMachineId
29
- } from "../chunk-J7PJALS2.js";
30
- import "../chunk-EWQZISYV.js";
29
+ } from "../chunk-K7UIAE7I.js";
30
+ import "../chunk-RHLUJE4H.js";
31
31
  import "../chunk-GMXKITVA.js";
32
32
  import "../chunk-DINDL2CF.js";
33
- import "../chunk-UP7NZXJU.js";
33
+ import "../chunk-XBO42HKH.js";
34
34
  import "../chunk-EYRGBYZG.js";
35
35
  import "../chunk-SAF6HGAA.js";
36
36
  import "../chunk-7QLSKOSU.js";
37
37
  import "../chunk-KZERVKTD.js";
38
- import "../chunk-E3WQMDCE.js";
38
+ import "../chunk-POAFXBNH.js";
39
39
  import "../chunk-4LL6LG5X.js";
40
40
  import {
41
41
  getApiKey
@@ -50,7 +50,7 @@ import {
50
50
  planElicitationAsk,
51
51
  readElicitationFields,
52
52
  renderElicitationOutput
53
- } from "../chunk-VQYARC2K.js";
53
+ } from "../chunk-WPJS3OZH.js";
54
54
 
55
55
  // bin/pushary-elicitation-hook.ts
56
56
  import { basename } from "path";
@@ -5,36 +5,36 @@ import {
5
5
  postLiveSession,
6
6
  postLiveSessionUntilAccepted,
7
7
  startLiveSessionHeartbeat
8
- } from "../chunk-FO4HHPMO.js";
8
+ } from "../chunk-EKQAKSGI.js";
9
9
  import {
10
10
  SESSION_IDLE_TIMEOUT_MS,
11
11
  describeIdleWindow,
12
12
  idleDeadlinePassed,
13
13
  startProcessOwnership,
14
14
  withSpawnProcessOwnership
15
- } from "../chunk-ISELLVBP.js";
16
- import "../chunk-BBUZD7MU.js";
15
+ } from "../chunk-MU275U5A.js";
16
+ import "../chunk-B3S4SF3D.js";
17
17
  import "../chunk-EQRS3SGM.js";
18
18
  import {
19
19
  transcriptsEnabled
20
- } from "../chunk-2MOQUNFL.js";
20
+ } from "../chunk-A2URMNFM.js";
21
21
  import {
22
22
  spawnClaude
23
23
  } from "../chunk-XHKBHWLX.js";
24
24
  import {
25
25
  getMachineId
26
- } from "../chunk-J7PJALS2.js";
26
+ } from "../chunk-K7UIAE7I.js";
27
27
  import {
28
28
  resolveBinary
29
- } from "../chunk-EWQZISYV.js";
30
- import "../chunk-UP7NZXJU.js";
31
- import "../chunk-E3WQMDCE.js";
29
+ } from "../chunk-RHLUJE4H.js";
30
+ import "../chunk-XBO42HKH.js";
31
+ import "../chunk-POAFXBNH.js";
32
32
  import "../chunk-4LL6LG5X.js";
33
33
  import {
34
34
  getApiKey,
35
35
  getBaseUrl
36
36
  } from "../chunk-2UMNXADU.js";
37
- import "../chunk-VQYARC2K.js";
37
+ import "../chunk-WPJS3OZH.js";
38
38
 
39
39
  // bin/pushary-gemini-bridge.ts
40
40
  import { existsSync } from "fs";
@@ -2,26 +2,26 @@
2
2
  import {
3
3
  isGatingMoment,
4
4
  recordKeylessMoment
5
- } from "../chunk-VACFOGF3.js";
5
+ } from "../chunk-YF4JDCU4.js";
6
6
  import {
7
7
  readHookInput
8
- } from "../chunk-LQ3BHPPZ.js";
8
+ } from "../chunk-N43EQPJK.js";
9
9
  import {
10
10
  denyReasonFrom,
11
11
  isDeferAnswer
12
12
  } from "../chunk-YHG74UFF.js";
13
- import "../chunk-PWIMJP4U.js";
13
+ import "../chunk-EU6JH7KU.js";
14
14
  import "../chunk-YKLCWWEI.js";
15
- import "../chunk-DZYIAMKR.js";
16
- import "../chunk-OYYQHJAO.js";
17
- import "../chunk-SLEWDZOA.js";
18
- import "../chunk-AH5OO2YZ.js";
19
- import "../chunk-6JUCFMSF.js";
20
- import "../chunk-YM4G6CFN.js";
21
- import "../chunk-SA6UB3GD.js";
22
- import "../chunk-BBUZD7MU.js";
15
+ import "../chunk-XEXOHUJ6.js";
16
+ import "../chunk-BYGEZI7B.js";
17
+ import "../chunk-JYEGOYQC.js";
18
+ import "../chunk-DVO4SZMJ.js";
19
+ import "../chunk-KS4P6F3R.js";
20
+ import "../chunk-OE6U2AXM.js";
21
+ import "../chunk-2PLEJ7SY.js";
22
+ import "../chunk-B3S4SF3D.js";
23
23
  import "../chunk-EQRS3SGM.js";
24
- import "../chunk-2MOQUNFL.js";
24
+ import "../chunk-A2URMNFM.js";
25
25
  import "../chunk-XHKBHWLX.js";
26
26
  import {
27
27
  DEFAULT_SESSION,
@@ -42,8 +42,8 @@ import {
42
42
  repoKeyFor,
43
43
  reportEvent,
44
44
  scopePathFor
45
- } from "../chunk-WTT24AUA.js";
46
- import "../chunk-INBTKFT6.js";
45
+ } from "../chunk-WXXDHGTZ.js";
46
+ import "../chunk-IAEVVUXO.js";
47
47
  import {
48
48
  DECISION_STOP_REASON,
49
49
  askUser,
@@ -54,16 +54,16 @@ import {
54
54
  } from "../chunk-LGXUGYUH.js";
55
55
  import {
56
56
  getMachineId
57
- } from "../chunk-J7PJALS2.js";
58
- import "../chunk-EWQZISYV.js";
57
+ } from "../chunk-K7UIAE7I.js";
58
+ import "../chunk-RHLUJE4H.js";
59
59
  import "../chunk-GMXKITVA.js";
60
60
  import "../chunk-DINDL2CF.js";
61
- import "../chunk-UP7NZXJU.js";
61
+ import "../chunk-XBO42HKH.js";
62
62
  import "../chunk-EYRGBYZG.js";
63
63
  import "../chunk-SAF6HGAA.js";
64
64
  import "../chunk-7QLSKOSU.js";
65
65
  import "../chunk-KZERVKTD.js";
66
- import "../chunk-E3WQMDCE.js";
66
+ import "../chunk-POAFXBNH.js";
67
67
  import "../chunk-4LL6LG5X.js";
68
68
  import {
69
69
  getApiKey
@@ -76,7 +76,7 @@ import {
76
76
  hookWaitClamped,
77
77
  hookWaitDeadline,
78
78
  resolveGate
79
- } from "../chunk-VQYARC2K.js";
79
+ } from "../chunk-WPJS3OZH.js";
80
80
 
81
81
  // bin/pushary-gemini-hook.ts
82
82
  import { basename } from "path";