@pushary/agent-hooks 0.87.4 → 0.88.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 (57) hide show
  1. package/dist/bin/pushary-bell-hook.js +4 -4
  2. package/dist/bin/pushary-bell.js +5 -5
  3. package/dist/bin/pushary-claude.js +8 -8
  4. package/dist/bin/pushary-clean.js +9 -8
  5. package/dist/bin/pushary-codex-bridge.js +5 -5
  6. package/dist/bin/pushary-codex-hook.js +15 -9
  7. package/dist/bin/pushary-codex.js +4 -4
  8. package/dist/bin/pushary-connect.js +6 -6
  9. package/dist/bin/pushary-daemon.js +4 -4
  10. package/dist/bin/pushary-disconnect.js +5 -5
  11. package/dist/bin/pushary-doctor.js +15 -14
  12. package/dist/bin/pushary-elicitation-hook.js +1 -1
  13. package/dist/bin/pushary-gemini-bridge.js +5 -5
  14. package/dist/bin/pushary-gemini-hook.js +15 -9
  15. package/dist/bin/pushary-hook.js +6 -6
  16. package/dist/bin/pushary-login.js +4 -4
  17. package/dist/bin/pushary-logout.js +4 -4
  18. package/dist/bin/pushary-mode.js +3 -3
  19. package/dist/bin/pushary-notification-hook.js +4 -4
  20. package/dist/bin/pushary-opencode-hook.js +5 -5
  21. package/dist/bin/pushary-permission-denied-hook.js +6 -6
  22. package/dist/bin/pushary-permission-hook.js +6 -6
  23. package/dist/bin/pushary-post-hook.js +4 -4
  24. package/dist/bin/pushary-prompt-hook.js +4 -4
  25. package/dist/bin/pushary-session-end-hook.js +4 -4
  26. package/dist/bin/pushary-session-start-hook.js +4 -4
  27. package/dist/bin/pushary-setup.js +16 -16
  28. package/dist/bin/pushary-stats.js +2 -2
  29. package/dist/bin/pushary-status.js +5 -5
  30. package/dist/bin/pushary-stop-hook.js +4 -4
  31. package/dist/bin/pushary-stopfailure-hook.js +4 -4
  32. package/dist/bin/pushary-upgrade.js +5 -5
  33. package/dist/bin/pushary-wait.js +3 -3
  34. package/dist/{chunk-BFBAHOGR.js → chunk-3B3PYTKH.js} +1 -1
  35. package/dist/{chunk-DMW54VWK.js → chunk-3JL64GVE.js} +93 -3
  36. package/dist/{chunk-TD3M232T.js → chunk-3PSEZOC4.js} +1 -1
  37. package/dist/{chunk-VIHRP25S.js → chunk-4VYELDAH.js} +1 -1
  38. package/dist/{chunk-YX6ZKCC5.js → chunk-67TNJVJW.js} +1 -1
  39. package/dist/{chunk-KFAH6KRE.js → chunk-6BOE5NJZ.js} +1 -1
  40. package/dist/{chunk-ZGC3W23N.js → chunk-DSTZ2RBU.js} +1 -1
  41. package/dist/{chunk-ICERLAE2.js → chunk-DXBUFXPL.js} +1 -1
  42. package/dist/{chunk-EJL3PJU7.js → chunk-ESARAYRI.js} +1 -1
  43. package/dist/{chunk-7J67NYK4.js → chunk-F5W3AY6L.js} +2 -1
  44. package/dist/{chunk-QLMX5LLV.js → chunk-LEYXXXRN.js} +1 -1
  45. package/dist/{chunk-VOE4SYPR.js → chunk-MNXG6IIM.js} +23 -7
  46. package/dist/{chunk-K42RXJPG.js → chunk-MY5A4EPQ.js} +1 -1
  47. package/dist/{chunk-H5PIPIKQ.js → chunk-OULRSHFB.js} +1 -1
  48. package/dist/{chunk-QXZ2CKRK.js → chunk-RSUBLTMP.js} +2 -2
  49. package/dist/{chunk-KULUNLRO.js → chunk-T2XZH7D5.js} +3 -7
  50. package/dist/{chunk-2JYQAW4B.js → chunk-U6HRYNHC.js} +2 -2
  51. package/dist/{chunk-OMA2OZRE.js → chunk-UTQCV46U.js} +27 -62
  52. package/dist/{chunk-NAPRGHZ3.js → chunk-VHHVGVFQ.js} +1 -1
  53. package/dist/{chunk-KBS53WOE.js → chunk-VSCSZ2LI.js} +1 -1
  54. package/dist/{chunk-YYTLTEGU.js → chunk-WXCHB6BO.js} +1 -1
  55. package/dist/{chunk-TV3UFGT7.js → chunk-XFHMGVMX.js} +1 -1
  56. package/dist/src/index.js +6 -6
  57. package/package.json +1 -1
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  handleBell
4
- } from "../chunk-YYTLTEGU.js";
4
+ } from "../chunk-WXCHB6BO.js";
5
5
  import {
6
6
  readHookInput
7
7
  } from "../chunk-6CUUA7HO.js";
8
- import "../chunk-YX6ZKCC5.js";
8
+ import "../chunk-67TNJVJW.js";
9
9
  import "../chunk-BC3VCZ3E.js";
10
10
  import "../chunk-6MTNS63X.js";
11
- import "../chunk-KBS53WOE.js";
11
+ import "../chunk-VSCSZ2LI.js";
12
12
  import "../chunk-2UMNXADU.js";
13
- import "../chunk-DMW54VWK.js";
13
+ import "../chunk-3JL64GVE.js";
14
14
 
15
15
  // bin/pushary-bell-hook.ts
16
16
  var main = async () => {
@@ -5,19 +5,19 @@ import {
5
5
  liveAgentCount,
6
6
  ring,
7
7
  upgradeThreshold
8
- } from "../chunk-YYTLTEGU.js";
8
+ } from "../chunk-WXCHB6BO.js";
9
9
  import {
10
10
  guardBinary
11
11
  } from "../chunk-B7ZBHWOW.js";
12
12
  import "../chunk-VT4IVERX.js";
13
13
  import {
14
14
  claudeSettings
15
- } from "../chunk-NAPRGHZ3.js";
15
+ } from "../chunk-VHHVGVFQ.js";
16
16
  import "../chunk-GIRT7677.js";
17
17
  import {
18
18
  createIo
19
19
  } from "../chunk-5RUIFDTP.js";
20
- import "../chunk-YX6ZKCC5.js";
20
+ import "../chunk-67TNJVJW.js";
21
21
  import {
22
22
  parseFlags
23
23
  } from "../chunk-GMXKITVA.js";
@@ -31,13 +31,13 @@ import {
31
31
  readJsonSafe,
32
32
  writeJsonAtomic
33
33
  } from "../chunk-6MTNS63X.js";
34
- import "../chunk-KBS53WOE.js";
34
+ import "../chunk-VSCSZ2LI.js";
35
35
  import "../chunk-7QLSKOSU.js";
36
36
  import {
37
37
  EXIT
38
38
  } from "../chunk-KZERVKTD.js";
39
39
  import "../chunk-2UMNXADU.js";
40
- import "../chunk-DMW54VWK.js";
40
+ import "../chunk-3JL64GVE.js";
41
41
 
42
42
  // src/bell/install.ts
43
43
  import { join } from "path";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ensureDaemonRunning
4
- } from "../chunk-H5PIPIKQ.js";
4
+ } from "../chunk-OULRSHFB.js";
5
5
  import {
6
6
  buildTranscriptRecords,
7
7
  decodePublicKey,
@@ -9,17 +9,17 @@ import {
9
9
  generateSessionKey,
10
10
  uploadTranscriptRecords,
11
11
  wrapSessionKey
12
- } from "../chunk-QLMX5LLV.js";
12
+ } from "../chunk-LEYXXXRN.js";
13
13
  import {
14
14
  startProcessOwnership,
15
15
  withSpawnProcessOwnership
16
- } from "../chunk-BFBAHOGR.js";
16
+ } from "../chunk-3B3PYTKH.js";
17
17
  import {
18
18
  needsShell,
19
19
  spawnClaude
20
20
  } from "../chunk-XHKBHWLX.js";
21
21
  import "../chunk-VT4IVERX.js";
22
- import "../chunk-NAPRGHZ3.js";
22
+ import "../chunk-VHHVGVFQ.js";
23
23
  import {
24
24
  isDeferAnswer
25
25
  } from "../chunk-YHG74UFF.js";
@@ -29,7 +29,7 @@ import {
29
29
  getPolicy,
30
30
  repoKeyFor,
31
31
  reportEvent
32
- } from "../chunk-VOE4SYPR.js";
32
+ } from "../chunk-MNXG6IIM.js";
33
33
  import {
34
34
  askUser,
35
35
  cancelQuestion,
@@ -39,7 +39,7 @@ import {
39
39
  deriveToolTarget,
40
40
  describeToolCall,
41
41
  scopePathFor
42
- } from "../chunk-7J67NYK4.js";
42
+ } from "../chunk-F5W3AY6L.js";
43
43
  import {
44
44
  getMachineId
45
45
  } from "../chunk-RN3NOEJF.js";
@@ -47,7 +47,7 @@ import "../chunk-DINDL2CF.js";
47
47
  import "../chunk-6MTNS63X.js";
48
48
  import "../chunk-BSZYIAZL.js";
49
49
  import "../chunk-SAF6HGAA.js";
50
- import "../chunk-KBS53WOE.js";
50
+ import "../chunk-VSCSZ2LI.js";
51
51
  import "../chunk-7QLSKOSU.js";
52
52
  import "../chunk-KZERVKTD.js";
53
53
  import {
@@ -57,7 +57,7 @@ import {
57
57
  import {
58
58
  KILL_REASON,
59
59
  resolveGate
60
- } from "../chunk-DMW54VWK.js";
60
+ } from "../chunk-3JL64GVE.js";
61
61
 
62
62
  // src/wrapper/claudeBinary.ts
63
63
  import { statSync } from "fs";
@@ -2,18 +2,17 @@
2
2
  import {
3
3
  removeClaudeMcpServers,
4
4
  removePusharySettings
5
- } from "../chunk-2JYQAW4B.js";
5
+ } from "../chunk-U6HRYNHC.js";
6
6
  import {
7
- CURSOR_GATE_EVENTS,
8
7
  removeInstructionBlock,
9
8
  shortenHome,
10
9
  unregisterPluginLocation,
11
10
  vscodeSettingsTargets
12
- } from "../chunk-KULUNLRO.js";
13
- import "../chunk-ZGC3W23N.js";
11
+ } from "../chunk-T2XZH7D5.js";
12
+ import "../chunk-DSTZ2RBU.js";
14
13
  import {
15
14
  removeGeminiSettings
16
- } from "../chunk-K42RXJPG.js";
15
+ } from "../chunk-MY5A4EPQ.js";
17
16
  import "../chunk-ATBKJNWS.js";
18
17
  import "../chunk-B7ZBHWOW.js";
19
18
  import {
@@ -38,9 +37,9 @@ import {
38
37
  removeCodexHookTrust,
39
38
  removeCodexHooks,
40
39
  vscodePluginDir
41
- } from "../chunk-NAPRGHZ3.js";
40
+ } from "../chunk-VHHVGVFQ.js";
42
41
  import "../chunk-GIRT7677.js";
43
- import "../chunk-7J67NYK4.js";
42
+ import "../chunk-F5W3AY6L.js";
44
43
  import {
45
44
  rejectUnknownFlags
46
45
  } from "../chunk-GMXKITVA.js";
@@ -56,7 +55,9 @@ import "../chunk-7QLSKOSU.js";
56
55
  import {
57
56
  EXIT
58
57
  } from "../chunk-KZERVKTD.js";
59
- import "../chunk-DMW54VWK.js";
58
+ import {
59
+ CURSOR_GATE_EVENTS
60
+ } from "../chunk-3JL64GVE.js";
60
61
 
61
62
  // bin/pushary-clean.ts
62
63
  import { existsSync, readFileSync, copyFileSync, readdirSync } from "fs";
@@ -6,19 +6,19 @@ import {
6
6
  postLiveSession,
7
7
  postLiveSessionUntilAccepted,
8
8
  startLiveSessionHeartbeat
9
- } from "../chunk-TV3UFGT7.js";
10
- import "../chunk-QLMX5LLV.js";
9
+ } from "../chunk-XFHMGVMX.js";
10
+ import "../chunk-LEYXXXRN.js";
11
11
  import {
12
12
  startProcessOwnership,
13
13
  withSpawnProcessOwnership
14
- } from "../chunk-BFBAHOGR.js";
14
+ } from "../chunk-3B3PYTKH.js";
15
15
  import {
16
16
  spawnClaude
17
17
  } from "../chunk-XHKBHWLX.js";
18
18
  import {
19
19
  resolveBinary
20
20
  } from "../chunk-VT4IVERX.js";
21
- import "../chunk-NAPRGHZ3.js";
21
+ import "../chunk-VHHVGVFQ.js";
22
22
  import "../chunk-GIRT7677.js";
23
23
  import {
24
24
  getMachineId
@@ -28,7 +28,7 @@ import {
28
28
  getApiKey,
29
29
  getBaseUrl
30
30
  } from "../chunk-2UMNXADU.js";
31
- import "../chunk-DMW54VWK.js";
31
+ import "../chunk-3JL64GVE.js";
32
32
 
33
33
  // bin/pushary-codex-bridge.ts
34
34
  import { existsSync } from "fs";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  isGatingMoment,
4
4
  recordKeylessMoment
5
- } from "../chunk-VIHRP25S.js";
5
+ } from "../chunk-4VYELDAH.js";
6
6
  import {
7
7
  readHookInput
8
8
  } from "../chunk-6CUUA7HO.js";
@@ -34,7 +34,7 @@ import {
34
34
  toCodexWire,
35
35
  toPolicyLookup,
36
36
  toPolicyLookups
37
- } from "../chunk-VOE4SYPR.js";
37
+ } from "../chunk-MNXG6IIM.js";
38
38
  import {
39
39
  DEFAULT_SESSION,
40
40
  askUser,
@@ -49,13 +49,13 @@ import {
49
49
  deriveToolTarget,
50
50
  describeToolCall,
51
51
  scopePathFor
52
- } from "../chunk-7J67NYK4.js";
52
+ } from "../chunk-F5W3AY6L.js";
53
53
  import {
54
54
  getMachineId
55
55
  } from "../chunk-RN3NOEJF.js";
56
56
  import "../chunk-BSZYIAZL.js";
57
57
  import "../chunk-SAF6HGAA.js";
58
- import "../chunk-KBS53WOE.js";
58
+ import "../chunk-VSCSZ2LI.js";
59
59
  import "../chunk-7QLSKOSU.js";
60
60
  import "../chunk-KZERVKTD.js";
61
61
  import {
@@ -68,7 +68,7 @@ import {
68
68
  hookWaitClamped,
69
69
  hookWaitDeadline,
70
70
  resolveGate
71
- } from "../chunk-DMW54VWK.js";
71
+ } from "../chunk-3JL64GVE.js";
72
72
 
73
73
  // bin/pushary-codex-hook.ts
74
74
  import { basename } from "path";
@@ -366,6 +366,12 @@ var asToolResult = (value) => value && typeof value === "object" && !Array.isArr
366
366
  var emit = (wire) => {
367
367
  if (wire) process.stdout.write(JSON.stringify(wire));
368
368
  };
369
+ var emitContext = (event, additionalContext) => {
370
+ if (!additionalContext) return;
371
+ process.stdout.write(JSON.stringify({
372
+ hookSpecificOutput: { hookEventName: event, additionalContext }
373
+ }));
374
+ };
369
375
  var main = async () => {
370
376
  const input = await readHookInput("codex");
371
377
  if (!input) {
@@ -381,21 +387,21 @@ var main = async () => {
381
387
  break;
382
388
  case "PostToolUse": {
383
389
  const lookup = toPolicyLookup(input.tool_name ?? "", input.tool_input ?? {}, input.cwd);
384
- await handlePostToolUse({
390
+ emitContext("PostToolUse", await handlePostToolUse({
385
391
  tool_name: lookup.tool,
386
392
  tool_input: lookup.input,
387
393
  tool_result: asToolResult(input.tool_response),
388
394
  cwd: input.cwd,
389
395
  session_id: input.session_id
390
- }, CODEX_AGENT);
396
+ }, CODEX_AGENT));
391
397
  break;
392
398
  }
393
399
  case "UserPromptSubmit":
394
- await handleUserPrompt({
400
+ emitContext("UserPromptSubmit", await handleUserPrompt({
395
401
  prompt: input.prompt,
396
402
  cwd: input.cwd,
397
403
  session_id: input.session_id
398
- }, CODEX_AGENT);
404
+ }, CODEX_AGENT));
399
405
  break;
400
406
  case "Stop":
401
407
  await handleStop({
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reportEvent
4
- } from "../chunk-VOE4SYPR.js";
4
+ } from "../chunk-MNXG6IIM.js";
5
5
  import {
6
6
  askUser,
7
7
  waitForAnswer
8
8
  } from "../chunk-J3YDT4HM.js";
9
- import "../chunk-7J67NYK4.js";
9
+ import "../chunk-F5W3AY6L.js";
10
10
  import {
11
11
  getMachineId
12
12
  } from "../chunk-RN3NOEJF.js";
13
13
  import "../chunk-BSZYIAZL.js";
14
14
  import "../chunk-SAF6HGAA.js";
15
- import "../chunk-KBS53WOE.js";
15
+ import "../chunk-VSCSZ2LI.js";
16
16
  import "../chunk-7QLSKOSU.js";
17
17
  import "../chunk-KZERVKTD.js";
18
18
  import {
19
19
  getApiKey
20
20
  } from "../chunk-2UMNXADU.js";
21
- import "../chunk-DMW54VWK.js";
21
+ import "../chunk-3JL64GVE.js";
22
22
 
23
23
  // bin/pushary-codex.ts
24
24
  import { basename } from "path";
@@ -1,22 +1,22 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  printKeyCheck
4
- } from "../chunk-TD3M232T.js";
4
+ } from "../chunk-3PSEZOC4.js";
5
5
  import {
6
6
  confirmAppConnection,
7
7
  connectDevice,
8
8
  printConnectInstructions
9
- } from "../chunk-EJL3PJU7.js";
9
+ } from "../chunk-ESARAYRI.js";
10
10
  import "../chunk-3EGEA4KH.js";
11
11
  import {
12
12
  checkApiKey
13
- } from "../chunk-KFAH6KRE.js";
13
+ } from "../chunk-6BOE5NJZ.js";
14
14
  import {
15
15
  createIo
16
16
  } from "../chunk-5RUIFDTP.js";
17
17
  import {
18
18
  readKeySource
19
- } from "../chunk-YX6ZKCC5.js";
19
+ } from "../chunk-67TNJVJW.js";
20
20
  import {
21
21
  parseFlags
22
22
  } from "../chunk-GMXKITVA.js";
@@ -29,7 +29,7 @@ import "../chunk-DINDL2CF.js";
29
29
  import "../chunk-6MTNS63X.js";
30
30
  import "../chunk-BSZYIAZL.js";
31
31
  import "../chunk-SAF6HGAA.js";
32
- import "../chunk-KBS53WOE.js";
32
+ import "../chunk-VSCSZ2LI.js";
33
33
  import {
34
34
  UsageError
35
35
  } from "../chunk-7QLSKOSU.js";
@@ -37,7 +37,7 @@ import {
37
37
  EXIT
38
38
  } from "../chunk-KZERVKTD.js";
39
39
  import "../chunk-2UMNXADU.js";
40
- import "../chunk-DMW54VWK.js";
40
+ import "../chunk-3JL64GVE.js";
41
41
 
42
42
  // bin/pushary-connect.ts
43
43
  exitOnHelpFlag("connect");
@@ -8,7 +8,7 @@ import {
8
8
  acquireDaemonLease,
9
9
  readDaemonStatus,
10
10
  requestDaemonHandoff
11
- } from "../chunk-H5PIPIKQ.js";
11
+ } from "../chunk-OULRSHFB.js";
12
12
  import {
13
13
  CODEX_BRIDGE_CAPABILITY,
14
14
  CODEX_RESUME_CAPABILITY,
@@ -17,7 +17,7 @@ import {
17
17
  import {
18
18
  findLiveProcessBySpawnId,
19
19
  ownsLiveProcess
20
- } from "../chunk-BFBAHOGR.js";
20
+ } from "../chunk-3B3PYTKH.js";
21
21
  import {
22
22
  spawnClaude
23
23
  } from "../chunk-XHKBHWLX.js";
@@ -26,7 +26,7 @@ import {
26
26
  resolveGlobalPackageVersion,
27
27
  resolvePackageVersionFromBinary
28
28
  } from "../chunk-VT4IVERX.js";
29
- import "../chunk-NAPRGHZ3.js";
29
+ import "../chunk-VHHVGVFQ.js";
30
30
  import "../chunk-GIRT7677.js";
31
31
  import {
32
32
  getMachineId
@@ -44,7 +44,7 @@ import {
44
44
  getApiKey,
45
45
  getBaseUrl
46
46
  } from "../chunk-2UMNXADU.js";
47
- import "../chunk-DMW54VWK.js";
47
+ import "../chunk-3JL64GVE.js";
48
48
 
49
49
  // src/spawn-daemon.ts
50
50
  import { execFileSync, spawn } from "child_process";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  removeClaudeMcpServers,
4
4
  removePusharySettings
5
- } from "../chunk-2JYQAW4B.js";
5
+ } from "../chunk-U6HRYNHC.js";
6
6
  import {
7
7
  OPENCODE_PLUGIN_SIBLING,
8
8
  OPENCODE_PLUGIN_SIBLING_CONTENTS,
@@ -12,10 +12,10 @@ import {
12
12
  openCodePluginDir,
13
13
  openCodePluginFile,
14
14
  removeOpenCodeMcpServer
15
- } from "../chunk-ZGC3W23N.js";
15
+ } from "../chunk-DSTZ2RBU.js";
16
16
  import {
17
17
  removeGeminiSettings
18
- } from "../chunk-K42RXJPG.js";
18
+ } from "../chunk-MY5A4EPQ.js";
19
19
  import "../chunk-ATBKJNWS.js";
20
20
  import "../chunk-B7ZBHWOW.js";
21
21
  import "../chunk-VT4IVERX.js";
@@ -31,7 +31,7 @@ import {
31
31
  geminiSettings,
32
32
  removeCodexHooks,
33
33
  removeCodexSettings
34
- } from "../chunk-NAPRGHZ3.js";
34
+ } from "../chunk-VHHVGVFQ.js";
35
35
  import "../chunk-GIRT7677.js";
36
36
  import {
37
37
  exitOnHelpFlag
@@ -39,7 +39,7 @@ import {
39
39
  import "../chunk-GOEXZ5QJ.js";
40
40
  import "../chunk-DINDL2CF.js";
41
41
  import "../chunk-KZERVKTD.js";
42
- import "../chunk-DMW54VWK.js";
42
+ import "../chunk-3JL64GVE.js";
43
43
 
44
44
  // bin/pushary-disconnect.ts
45
45
  import { readdirSync, readFileSync, rmSync, writeFileSync } from "fs";
@@ -6,12 +6,11 @@ import {
6
6
  claudeWired,
7
7
  codexWired,
8
8
  geminiWired
9
- } from "../chunk-QXZ2CKRK.js";
9
+ } from "../chunk-RSUBLTMP.js";
10
10
  import {
11
11
  readDaemonStatus
12
- } from "../chunk-H5PIPIKQ.js";
12
+ } from "../chunk-OULRSHFB.js";
13
13
  import {
14
- CURSOR_GATE_EVENTS,
15
14
  agentProbes,
16
15
  detectAgent,
17
16
  detectAllAgents,
@@ -19,18 +18,18 @@ import {
19
18
  isDetected,
20
19
  isPluginRegistered,
21
20
  vscodeSettingsTargets
22
- } from "../chunk-KULUNLRO.js";
21
+ } from "../chunk-T2XZH7D5.js";
23
22
  import {
24
23
  OPENCODE_PLUGIN_PLACEHOLDER,
25
24
  openCodePluginDir,
26
25
  openCodePluginFile,
27
26
  openCodeWired
28
- } from "../chunk-ZGC3W23N.js";
27
+ } from "../chunk-DSTZ2RBU.js";
29
28
  import {
30
29
  GEMINI_HOOK_BINARY,
31
30
  hasGeminiHooks,
32
31
  missingGeminiHookEvents
33
- } from "../chunk-K42RXJPG.js";
32
+ } from "../chunk-MY5A4EPQ.js";
34
33
  import "../chunk-ATBKJNWS.js";
35
34
  import "../chunk-B7ZBHWOW.js";
36
35
  import "../chunk-XHKBHWLX.js";
@@ -56,12 +55,12 @@ import {
56
55
  readCodexMcpAuth,
57
56
  untrustedCodexHookEvents,
58
57
  vscodePluginDir
59
- } from "../chunk-NAPRGHZ3.js";
58
+ } from "../chunk-VHHVGVFQ.js";
60
59
  import {
61
60
  readLedgerSummary
62
- } from "../chunk-VIHRP25S.js";
61
+ } from "../chunk-4VYELDAH.js";
63
62
  import "../chunk-GIRT7677.js";
64
- import "../chunk-7J67NYK4.js";
63
+ import "../chunk-F5W3AY6L.js";
65
64
  import {
66
65
  getMachineId
67
66
  } from "../chunk-RN3NOEJF.js";
@@ -71,19 +70,19 @@ import {
71
70
  fetchChannels,
72
71
  reachVerdict,
73
72
  verifyRoundTrip
74
- } from "../chunk-EJL3PJU7.js";
73
+ } from "../chunk-ESARAYRI.js";
75
74
  import "../chunk-3EGEA4KH.js";
76
75
  import {
77
76
  checkApiKey,
78
77
  describeKeyCheck
79
- } from "../chunk-KFAH6KRE.js";
78
+ } from "../chunk-6BOE5NJZ.js";
80
79
  import {
81
80
  createIo
82
81
  } from "../chunk-5RUIFDTP.js";
83
82
  import {
84
83
  keyPrefix,
85
84
  readKeySource
86
- } from "../chunk-YX6ZKCC5.js";
85
+ } from "../chunk-67TNJVJW.js";
87
86
  import {
88
87
  parseFlags
89
88
  } from "../chunk-GMXKITVA.js";
@@ -101,7 +100,7 @@ import {
101
100
  sendMcpRequest
102
101
  } from "../chunk-BSZYIAZL.js";
103
102
  import "../chunk-SAF6HGAA.js";
104
- import "../chunk-KBS53WOE.js";
103
+ import "../chunk-VSCSZ2LI.js";
105
104
  import {
106
105
  UsageError
107
106
  } from "../chunk-7QLSKOSU.js";
@@ -111,7 +110,9 @@ import {
111
110
  import {
112
111
  getBaseUrl
113
112
  } from "../chunk-2UMNXADU.js";
114
- import "../chunk-DMW54VWK.js";
113
+ import {
114
+ CURSOR_GATE_EVENTS
115
+ } from "../chunk-3JL64GVE.js";
115
116
 
116
117
  // bin/pushary-doctor.ts
117
118
  import { existsSync, readFileSync, writeFileSync } from "fs";
@@ -27,7 +27,7 @@ import {
27
27
  hookWaitDeadline,
28
28
  parseAgentQuestionAnswers,
29
29
  renderElicitationOutput
30
- } from "../chunk-DMW54VWK.js";
30
+ } from "../chunk-3JL64GVE.js";
31
31
 
32
32
  // bin/pushary-elicitation-hook.ts
33
33
  import { basename } from "path";
@@ -5,19 +5,19 @@ import {
5
5
  postLiveSession,
6
6
  postLiveSessionUntilAccepted,
7
7
  startLiveSessionHeartbeat
8
- } from "../chunk-TV3UFGT7.js";
9
- import "../chunk-QLMX5LLV.js";
8
+ } from "../chunk-XFHMGVMX.js";
9
+ import "../chunk-LEYXXXRN.js";
10
10
  import {
11
11
  startProcessOwnership,
12
12
  withSpawnProcessOwnership
13
- } from "../chunk-BFBAHOGR.js";
13
+ } from "../chunk-3B3PYTKH.js";
14
14
  import {
15
15
  spawnClaude
16
16
  } from "../chunk-XHKBHWLX.js";
17
17
  import {
18
18
  resolveBinary
19
19
  } from "../chunk-VT4IVERX.js";
20
- import "../chunk-NAPRGHZ3.js";
20
+ import "../chunk-VHHVGVFQ.js";
21
21
  import "../chunk-GIRT7677.js";
22
22
  import {
23
23
  getMachineId
@@ -27,7 +27,7 @@ import {
27
27
  getApiKey,
28
28
  getBaseUrl
29
29
  } from "../chunk-2UMNXADU.js";
30
- import "../chunk-DMW54VWK.js";
30
+ import "../chunk-3JL64GVE.js";
31
31
 
32
32
  // bin/pushary-gemini-bridge.ts
33
33
  import { existsSync } from "fs";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  isGatingMoment,
4
4
  recordKeylessMoment
5
- } from "../chunk-VIHRP25S.js";
5
+ } from "../chunk-4VYELDAH.js";
6
6
  import {
7
7
  readHookInput
8
8
  } from "../chunk-6CUUA7HO.js";
@@ -21,7 +21,7 @@ import {
21
21
  readLastUserPrompt,
22
22
  repoKeyFor,
23
23
  reportEvent
24
- } from "../chunk-VOE4SYPR.js";
24
+ } from "../chunk-MNXG6IIM.js";
25
25
  import {
26
26
  DEFAULT_SESSION,
27
27
  askUser,
@@ -36,13 +36,13 @@ import {
36
36
  deriveToolTarget,
37
37
  describeToolCall,
38
38
  scopePathFor
39
- } from "../chunk-7J67NYK4.js";
39
+ } from "../chunk-F5W3AY6L.js";
40
40
  import {
41
41
  getMachineId
42
42
  } from "../chunk-RN3NOEJF.js";
43
43
  import "../chunk-BSZYIAZL.js";
44
44
  import "../chunk-SAF6HGAA.js";
45
- import "../chunk-KBS53WOE.js";
45
+ import "../chunk-VSCSZ2LI.js";
46
46
  import "../chunk-7QLSKOSU.js";
47
47
  import "../chunk-KZERVKTD.js";
48
48
  import {
@@ -56,7 +56,7 @@ import {
56
56
  hookWaitClamped,
57
57
  hookWaitDeadline,
58
58
  resolveGate
59
- } from "../chunk-DMW54VWK.js";
59
+ } from "../chunk-3JL64GVE.js";
60
60
 
61
61
  // bin/pushary-gemini-hook.ts
62
62
  import { basename } from "path";
@@ -286,6 +286,12 @@ var toCanonicalResult = (toolResponse) => {
286
286
  const error = toolResponse.error;
287
287
  return error ? { error } : {};
288
288
  };
289
+ var emitContext = (event, additionalContext) => {
290
+ if (!additionalContext) return;
291
+ process.stdout.write(JSON.stringify({
292
+ hookSpecificOutput: { hookEventName: event, additionalContext }
293
+ }));
294
+ };
289
295
  var emit = (wire) => {
290
296
  if (wire) process.stdout.write(JSON.stringify(wire));
291
297
  };
@@ -301,22 +307,22 @@ var main = async () => {
301
307
  break;
302
308
  case "AfterTool": {
303
309
  const lookup = toGeminiPolicyLookup(input.tool_name ?? "", input.tool_input ?? {});
304
- await handlePostToolUse({
310
+ emitContext("AfterTool", await handlePostToolUse({
305
311
  tool_name: lookup.tool,
306
312
  tool_input: lookup.input,
307
313
  tool_result: toCanonicalResult(input.tool_response),
308
314
  cwd: input.cwd,
309
315
  session_id: input.session_id,
310
316
  transcript_path: input.transcript_path
311
- }, GEMINI_AGENT);
317
+ }, GEMINI_AGENT));
312
318
  break;
313
319
  }
314
320
  case "BeforeAgent":
315
- await handleUserPrompt({
321
+ emitContext("BeforeAgent", await handleUserPrompt({
316
322
  prompt: input.prompt,
317
323
  cwd: input.cwd,
318
324
  session_id: input.session_id
319
- }, GEMINI_AGENT);
325
+ }, GEMINI_AGENT));
320
326
  break;
321
327
  case "SessionEnd":
322
328
  if (geminiOwnsLifecycle(process.env.PUSHARY_GEMINI_BRIDGE)) {