@pushary/agent-hooks 0.97.0 → 0.99.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 (80) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/bin/pushary-bell-hook.js +20 -19
  3. package/dist/bin/pushary-bell.js +7 -6
  4. package/dist/bin/pushary-claude.js +21 -20
  5. package/dist/bin/pushary-clean.js +19 -18
  6. package/dist/bin/pushary-codex-bridge.js +11 -10
  7. package/dist/bin/pushary-codex-hook.js +33 -23
  8. package/dist/bin/pushary-codex.js +8 -7
  9. package/dist/bin/pushary-connect.js +7 -6
  10. package/dist/bin/pushary-cowork.js +3 -3
  11. package/dist/bin/pushary-daemon.js +24 -23
  12. package/dist/bin/pushary-disconnect.js +6 -6
  13. package/dist/bin/pushary-doctor.js +22 -21
  14. package/dist/bin/pushary-elicitation-hook.js +19 -18
  15. package/dist/bin/pushary-gemini-bridge.js +10 -9
  16. package/dist/bin/pushary-gemini-hook.js +22 -21
  17. package/dist/bin/pushary-hook.js +24 -23
  18. package/dist/bin/pushary-login.js +8 -7
  19. package/dist/bin/pushary-logout.js +5 -4
  20. package/dist/bin/pushary-mode.js +3 -3
  21. package/dist/bin/pushary-notification-hook.js +21 -20
  22. package/dist/bin/pushary-opencode-hook.js +22 -21
  23. package/dist/bin/pushary-permission-denied-hook.js +25 -24
  24. package/dist/bin/pushary-permission-hook.js +24 -23
  25. package/dist/bin/pushary-post-hook.js +21 -20
  26. package/dist/bin/pushary-prompt-hook.js +21 -20
  27. package/dist/bin/pushary-session-end-hook.js +21 -20
  28. package/dist/bin/pushary-session-start-hook.js +24 -23
  29. package/dist/bin/pushary-setup.js +38 -28
  30. package/dist/bin/pushary-stats.js +2 -2
  31. package/dist/bin/pushary-status.js +11 -10
  32. package/dist/bin/pushary-stop-hook.js +21 -20
  33. package/dist/bin/pushary-stopfailure-hook.js +21 -20
  34. package/dist/bin/pushary-transcript-register.js +18 -17
  35. package/dist/bin/pushary-transcripts.js +6 -5
  36. package/dist/bin/pushary-upgrade.js +15 -14
  37. package/dist/bin/pushary-wait.js +3 -3
  38. package/dist/{chunk-SW37HB27.js → chunk-3RVCQDC4.js} +1 -1
  39. package/dist/{chunk-AXSDMDJI.js → chunk-3ZAEUPM4.js} +1 -1
  40. package/dist/{chunk-B3557BDL.js → chunk-4C4XFAGJ.js} +2 -2
  41. package/dist/{chunk-VTUN7WSG.js → chunk-4LL6LG5X.js} +1 -43
  42. package/dist/{chunk-VF7YOT2W.js → chunk-4PBCNVI3.js} +4 -2
  43. package/dist/{chunk-IZKCA35M.js → chunk-562UJ2DA.js} +2 -2
  44. package/dist/{chunk-ROTIPRM4.js → chunk-5KLAETSU.js} +1 -1
  45. package/dist/{chunk-DGUMR5LZ.js → chunk-64WARXGV.js} +5 -5
  46. package/dist/{chunk-VDTC5DEM.js → chunk-6C6MS57P.js} +1 -1
  47. package/dist/{chunk-KDPYXMUI.js → chunk-6IFUXNFX.js} +2 -2
  48. package/dist/{chunk-XDMHLQMH.js → chunk-6KLCP7VF.js} +4 -4
  49. package/dist/{chunk-VCKQ45QA.js → chunk-A76GNRIK.js} +1 -1
  50. package/dist/{chunk-ICUBJNFL.js → chunk-CP34FI4B.js} +2 -2
  51. package/dist/{chunk-LYWTLNMG.js → chunk-CRFLU455.js} +4 -4
  52. package/dist/{chunk-WIKEADOS.js → chunk-EXHXR2X5.js} +1 -1
  53. package/dist/chunk-GCD3SQSV.js +44 -0
  54. package/dist/{chunk-EHQC3GWL.js → chunk-HB2KB7QL.js} +1 -1
  55. package/dist/{chunk-C2FYSFTQ.js → chunk-ID5FDKDZ.js} +1 -1
  56. package/dist/{chunk-BYH75I7Y.js → chunk-IRLTW6KF.js} +1 -1
  57. package/dist/{chunk-67RNDRKL.js → chunk-JBJBVERL.js} +111 -31
  58. package/dist/{chunk-3SNTEHOH.js → chunk-JL33EDN7.js} +4 -4
  59. package/dist/{chunk-FU5SQKAY.js → chunk-JXELRCU5.js} +16 -23
  60. package/dist/{chunk-YRXVC4HL.js → chunk-K4XFCEVI.js} +1 -1
  61. package/dist/{chunk-GGYH6LIE.js → chunk-K6BASBQJ.js} +1 -1
  62. package/dist/{chunk-H4VNAOCG.js → chunk-LBNAGGLV.js} +1 -1
  63. package/dist/{chunk-DOKFLZWL.js → chunk-LWKPMSBB.js} +69 -46
  64. package/dist/{chunk-6VXZKOBB.js → chunk-NSFNEDCT.js} +8 -8
  65. package/dist/{chunk-5ODZEFP3.js → chunk-O3LZQEQP.js} +1 -1
  66. package/dist/{chunk-QFAZ6QCT.js → chunk-OPR2BPD4.js} +1 -1
  67. package/dist/{chunk-HUZW6SEO.js → chunk-OUAE3GKO.js} +2 -2
  68. package/dist/{chunk-IBRX7LRE.js → chunk-PD6JY33P.js} +9 -8
  69. package/dist/{chunk-6WJKYD3Q.js → chunk-QS55LDX4.js} +11 -8
  70. package/dist/{chunk-4AXWBCCO.js → chunk-RALVI7OF.js} +4 -4
  71. package/dist/{chunk-OYTOLQ3N.js → chunk-SI7GYBQP.js} +1 -1
  72. package/dist/{chunk-YX3U2CLP.js → chunk-T3JZZUAR.js} +6 -6
  73. package/dist/{chunk-K7MLXXPY.js → chunk-V262ATS5.js} +3 -3
  74. package/dist/{chunk-DNLFSRCF.js → chunk-WGV3VY7O.js} +2 -2
  75. package/dist/{chunk-VOC55PQV.js → chunk-XOOWC62T.js} +1 -1
  76. package/dist/{chunk-CDSA3NTB.js → chunk-XPPXOKIG.js} +1 -1
  77. package/dist/{chunk-A4AIISZZ.js → chunk-YKLCWWEI.js} +1 -1
  78. package/dist/reapply-HQ264ZTR.js +30 -0
  79. package/dist/src/index.js +11 -10
  80. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.99.0
4
+
5
+ Nothing to run. This release is the part that runs itself: the repairs below happen on the next session start, on the machine that already has them wrong.
6
+
7
+ - Switch on a hold that an older release registered without its proof. `PermissionDenied` and Codex's `Stop` hold only when their registration carries `--hold-budget`, and a registration written before 0.97.0 is present and looks correct, so nothing noticed it had stopped holding. Until now the repair was `pushary upgrade`, run by hand. Claude Code's registration is now checked on every session start whether or not Claude Code itself has changed, and Codex's is checked on its own session start, which had no repair of any kind before this. An auto-mode block or an auto-reviewer denial can be answered again without anyone being told to run a command.
8
+ - Hooks the macOS app wrote are still left to the app, on both agents. It repairs its own, and rewriting them here would point them at a binary the app does not install.
9
+ - Read a hold budget that is not this release's as no proof, which is what the Mac app has always done. `pushary doctor` says a hook "carries no current hold budget" rather than that it predates one, because now it can mean either.
10
+ - Never replace an absolute path in a hook command with a bare name. When the bin directory cannot be found, which is what a GUI-launched agent or an nvm switch does to `npm prefix -g`, the rewrite is refused and the registration you already have is left alone. A hold that does not hold still works less well than it should; a hook command that no longer resolves does nothing at all, and the rewrite touches every event at once. `pushary upgrade` is a person at a prompt and is unchanged.
11
+ - Write Codex's `config.toml` atomically, carrying its permissions over. It is now written from a session-start hook, and two sessions starting at once must not leave it half written. An atomic write replaces the file rather than its bytes, so the mode is copied across by hand: this file holds your API key, Codex creates it private to you, and it stays that way.
12
+
13
+ ## 0.98.0
14
+
15
+ Run `pushary setup` so the instruction block in Codex's AGENTS.md, GEMINI.md and OpenCode's AGENTS.md carries the new line. `pushary upgrade` rewrites hooks and trust, not instruction files.
16
+
17
+ - Say the Codex rescue in your own voice. When you allow a command the auto-reviewer denied, the turn now resumes with "I approved this command in Pushary after the auto-reviewer denied it", because Codex hands that text to the model as your own turn. The old third-person wording read as a tool claiming someone else's permission and the model refused to run the command again.
18
+ - In the instructions Pushary writes, say that rerunning the exact command you approved after a denial is the approved path and not a bypass of an enforced gate. It sits beside the line that says never to bypass one, which is what the old wording collided with. Tied to the hook result rather than to "when Pushary reports", so a page or a diff reciting the sentence beside a command is not a rule telling the model to run it.
19
+ - Register the Cursor gate where it already sits, like every other writer, instead of taking it out and adding a fresh one on the end.
20
+ - Drop the Codex trust key of a duplicate of ours when a rewrite collapses it. Otherwise the tool that moves up into that index inherits a hash it cannot match, and Codex reads its hook as Modified and silently stops running it.
21
+ - `pushary doctor` no longer says another tool's hook "runs before ours" or "runs after ours". No agent runs the hooks on an event in a defined order, so the line names who else holds the event and for how long, and claims nothing about which goes first.
22
+
3
23
  ## 0.97.0
4
24
 
5
25
  Requires the Codex auto-reviewer handling in `POST /api/agent/gate`, Codex bodies on `POST /api/agent/blocked-action/claim`, the `blocked-action/v2` Claude identity and `sessionCwd` on the gate request before rollout. Run `pushary upgrade` so Claude Code's `PermissionDenied` and Codex's `Stop` are registered with the hold budget, Codex gives `Stop` the full hook budget, and Codex trusts it again.
@@ -1,34 +1,35 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  handleBell
4
- } from "../chunk-GGYH6LIE.js";
4
+ } from "../chunk-K6BASBQJ.js";
5
5
  import {
6
6
  readHookInput
7
- } from "../chunk-5ODZEFP3.js";
8
- import "../chunk-6VXZKOBB.js";
9
- import "../chunk-A4AIISZZ.js";
10
- import "../chunk-4AXWBCCO.js";
11
- import "../chunk-H4VNAOCG.js";
12
- import "../chunk-BYH75I7Y.js";
13
- import "../chunk-FU5SQKAY.js";
14
- import "../chunk-LYWTLNMG.js";
15
- import "../chunk-IBRX7LRE.js";
16
- import "../chunk-WIKEADOS.js";
17
- import "../chunk-CDSA3NTB.js";
7
+ } from "../chunk-O3LZQEQP.js";
8
+ import "../chunk-NSFNEDCT.js";
9
+ import "../chunk-YKLCWWEI.js";
10
+ import "../chunk-RALVI7OF.js";
11
+ import "../chunk-LBNAGGLV.js";
12
+ import "../chunk-IRLTW6KF.js";
13
+ import "../chunk-JXELRCU5.js";
14
+ import "../chunk-CRFLU455.js";
15
+ import "../chunk-PD6JY33P.js";
16
+ import "../chunk-EXHXR2X5.js";
17
+ import "../chunk-XPPXOKIG.js";
18
18
  import "../chunk-EQRS3SGM.js";
19
- import "../chunk-C2FYSFTQ.js";
19
+ import "../chunk-ID5FDKDZ.js";
20
20
  import "../chunk-XHKBHWLX.js";
21
- import "../chunk-QFAZ6QCT.js";
22
- import "../chunk-IZKCA35M.js";
23
- import "../chunk-67RNDRKL.js";
21
+ import "../chunk-OPR2BPD4.js";
22
+ import "../chunk-562UJ2DA.js";
23
+ import "../chunk-JBJBVERL.js";
24
24
  import "../chunk-GMXKITVA.js";
25
25
  import "../chunk-DINDL2CF.js";
26
- import "../chunk-VF7YOT2W.js";
26
+ import "../chunk-4PBCNVI3.js";
27
27
  import "../chunk-7QLSKOSU.js";
28
28
  import "../chunk-KZERVKTD.js";
29
- import "../chunk-VTUN7WSG.js";
29
+ import "../chunk-GCD3SQSV.js";
30
+ import "../chunk-4LL6LG5X.js";
30
31
  import "../chunk-2UMNXADU.js";
31
- import "../chunk-HUZW6SEO.js";
32
+ import "../chunk-OUAE3GKO.js";
32
33
 
33
34
  // bin/pushary-bell-hook.ts
34
35
  var main = async () => {
@@ -5,15 +5,15 @@ import {
5
5
  liveAgentCount,
6
6
  ring,
7
7
  upgradeThreshold
8
- } from "../chunk-GGYH6LIE.js";
8
+ } from "../chunk-K6BASBQJ.js";
9
9
  import {
10
10
  addBellHooks,
11
11
  bellInstalled,
12
12
  removeBellHooks
13
- } from "../chunk-WIKEADOS.js";
13
+ } from "../chunk-EXHXR2X5.js";
14
14
  import {
15
15
  claudeSettings
16
- } from "../chunk-67RNDRKL.js";
16
+ } from "../chunk-JBJBVERL.js";
17
17
  import {
18
18
  createIo
19
19
  } from "../chunk-5RUIFDTP.js";
@@ -25,17 +25,18 @@ import {
25
25
  parseFlags
26
26
  } from "../chunk-GMXKITVA.js";
27
27
  import "../chunk-DINDL2CF.js";
28
- import "../chunk-VF7YOT2W.js";
28
+ import "../chunk-4PBCNVI3.js";
29
29
  import "../chunk-7QLSKOSU.js";
30
30
  import {
31
31
  EXIT
32
32
  } from "../chunk-KZERVKTD.js";
33
+ import "../chunk-GCD3SQSV.js";
33
34
  import {
34
35
  readJsonSafe,
35
36
  writeJsonAtomic
36
- } from "../chunk-VTUN7WSG.js";
37
+ } from "../chunk-4LL6LG5X.js";
37
38
  import "../chunk-2UMNXADU.js";
38
- import "../chunk-HUZW6SEO.js";
39
+ import "../chunk-OUAE3GKO.js";
39
40
 
40
41
  // bin/pushary-bell.ts
41
42
  exitOnHelpFlag("bell");
@@ -8,7 +8,7 @@ import {
8
8
  describeIdleWindow,
9
9
  startProcessOwnership,
10
10
  withSpawnProcessOwnership
11
- } from "../chunk-KDPYXMUI.js";
11
+ } from "../chunk-6IFUXNFX.js";
12
12
  import {
13
13
  isDeferAnswer
14
14
  } from "../chunk-YHG74UFF.js";
@@ -17,24 +17,24 @@ import {
17
17
  loadSessionKey,
18
18
  registerTranscript,
19
19
  registeredTranscriptEnabled
20
- } from "../chunk-6VXZKOBB.js";
21
- import "../chunk-A4AIISZZ.js";
22
- import "../chunk-4AXWBCCO.js";
23
- import "../chunk-H4VNAOCG.js";
24
- import "../chunk-BYH75I7Y.js";
25
- import "../chunk-FU5SQKAY.js";
20
+ } from "../chunk-NSFNEDCT.js";
21
+ import "../chunk-YKLCWWEI.js";
22
+ import "../chunk-RALVI7OF.js";
23
+ import "../chunk-LBNAGGLV.js";
24
+ import "../chunk-IRLTW6KF.js";
25
+ import "../chunk-JXELRCU5.js";
26
26
  import {
27
27
  ensureDaemonRunning
28
- } from "../chunk-LYWTLNMG.js";
29
- import "../chunk-IBRX7LRE.js";
30
- import "../chunk-WIKEADOS.js";
28
+ } from "../chunk-CRFLU455.js";
29
+ import "../chunk-PD6JY33P.js";
30
+ import "../chunk-EXHXR2X5.js";
31
31
  import {
32
32
  encryptRecord
33
- } from "../chunk-CDSA3NTB.js";
33
+ } from "../chunk-XPPXOKIG.js";
34
34
  import "../chunk-EQRS3SGM.js";
35
35
  import {
36
36
  transcriptsEnabled
37
- } from "../chunk-C2FYSFTQ.js";
37
+ } from "../chunk-ID5FDKDZ.js";
38
38
  import {
39
39
  needsShell,
40
40
  spawnClaude
@@ -52,14 +52,14 @@ import {
52
52
  repoKeyFor,
53
53
  reportEvent,
54
54
  savePendingCommand
55
- } from "../chunk-DGUMR5LZ.js";
55
+ } from "../chunk-64WARXGV.js";
56
56
  import {
57
57
  UNNAMED_ACTION,
58
58
  deriveToolTarget,
59
59
  describeToolCall,
60
60
  scopePathFor
61
- } from "../chunk-VCKQ45QA.js";
62
- import "../chunk-QFAZ6QCT.js";
61
+ } from "../chunk-A76GNRIK.js";
62
+ import "../chunk-OPR2BPD4.js";
63
63
  import {
64
64
  DECISION_STOP_REASON,
65
65
  askUser,
@@ -72,16 +72,17 @@ import {
72
72
  } from "../chunk-LGXUGYUH.js";
73
73
  import {
74
74
  getMachineId
75
- } from "../chunk-IZKCA35M.js";
76
- import "../chunk-67RNDRKL.js";
75
+ } from "../chunk-562UJ2DA.js";
76
+ import "../chunk-JBJBVERL.js";
77
77
  import "../chunk-GMXKITVA.js";
78
78
  import "../chunk-DINDL2CF.js";
79
- import "../chunk-VF7YOT2W.js";
79
+ import "../chunk-4PBCNVI3.js";
80
80
  import "../chunk-EYRGBYZG.js";
81
81
  import "../chunk-SAF6HGAA.js";
82
82
  import "../chunk-7QLSKOSU.js";
83
83
  import "../chunk-KZERVKTD.js";
84
- import "../chunk-VTUN7WSG.js";
84
+ import "../chunk-GCD3SQSV.js";
85
+ import "../chunk-4LL6LG5X.js";
85
86
  import {
86
87
  getApiKey,
87
88
  getBaseUrl
@@ -90,7 +91,7 @@ import {
90
91
  KILL_REASON,
91
92
  redactSecrets,
92
93
  resolveGate
93
- } from "../chunk-HUZW6SEO.js";
94
+ } from "../chunk-OUAE3GKO.js";
94
95
 
95
96
  // src/wrapper/localPassthrough.ts
96
97
  var SIGNAL_NUMBERS = {
@@ -5,14 +5,14 @@ import {
5
5
  createGuards,
6
6
  resolveHermesPython,
7
7
  runHermesPythonScript
8
- } from "../chunk-AXSDMDJI.js";
8
+ } from "../chunk-3ZAEUPM4.js";
9
9
  import "../chunk-KBITFQST.js";
10
10
  import {
11
11
  removeInstructionBlock,
12
12
  shortenHome,
13
13
  unregisterPluginLocation,
14
14
  vscodeSettingsTargets
15
- } from "../chunk-K7MLXXPY.js";
15
+ } from "../chunk-V262ATS5.js";
16
16
  import {
17
17
  OPENCODE_PLUGIN_SIBLING,
18
18
  OPENCODE_PLUGIN_SIBLING_CONTENTS,
@@ -22,35 +22,35 @@ import {
22
22
  openCodePluginDir,
23
23
  openCodePluginFile,
24
24
  removeOpenCodeMcpServer
25
- } from "../chunk-EHQC3GWL.js";
25
+ } from "../chunk-HB2KB7QL.js";
26
26
  import {
27
27
  isClaudeMcpSnapshot,
28
28
  removeClaudeMcpServers,
29
29
  removePusharySettings,
30
30
  restoreClaudeMcpServer
31
- } from "../chunk-6WJKYD3Q.js";
31
+ } from "../chunk-QS55LDX4.js";
32
32
  import {
33
33
  hookOwnerOf,
34
34
  isHookTakeoverReceipt,
35
35
  restoreHookTakeover,
36
36
  restoreMcpServer
37
- } from "../chunk-4AXWBCCO.js";
38
- import "../chunk-H4VNAOCG.js";
39
- import "../chunk-BYH75I7Y.js";
37
+ } from "../chunk-RALVI7OF.js";
38
+ import "../chunk-LBNAGGLV.js";
39
+ import "../chunk-IRLTW6KF.js";
40
40
  import {
41
41
  pusharyHookExecutable
42
- } from "../chunk-FU5SQKAY.js";
42
+ } from "../chunk-JXELRCU5.js";
43
43
  import {
44
44
  disableDaemonService
45
- } from "../chunk-LYWTLNMG.js";
45
+ } from "../chunk-CRFLU455.js";
46
46
  import {
47
47
  removeGeminiSettings
48
- } from "../chunk-IBRX7LRE.js";
49
- import "../chunk-WIKEADOS.js";
48
+ } from "../chunk-PD6JY33P.js";
49
+ import "../chunk-EXHXR2X5.js";
50
50
  import "../chunk-XHKBHWLX.js";
51
- import "../chunk-VCKQ45QA.js";
52
- import "../chunk-QFAZ6QCT.js";
53
- import "../chunk-IZKCA35M.js";
51
+ import "../chunk-A76GNRIK.js";
52
+ import "../chunk-OPR2BPD4.js";
53
+ import "../chunk-562UJ2DA.js";
54
54
  import {
55
55
  bridgeAgentKey,
56
56
  claudeJson,
@@ -79,7 +79,7 @@ import {
79
79
  restoreCodexHookTrust,
80
80
  vscodePluginDir,
81
81
  vscodePluginMcp
82
- } from "../chunk-67RNDRKL.js";
82
+ } from "../chunk-JBJBVERL.js";
83
83
  import {
84
84
  exitOnHelpFlag
85
85
  } from "../chunk-GOQHN2UH.js";
@@ -90,18 +90,19 @@ import {
90
90
  import "../chunk-DINDL2CF.js";
91
91
  import {
92
92
  removeClaudeAlias
93
- } from "../chunk-VF7YOT2W.js";
93
+ } from "../chunk-4PBCNVI3.js";
94
94
  import "../chunk-7QLSKOSU.js";
95
95
  import {
96
96
  EXIT
97
97
  } from "../chunk-KZERVKTD.js";
98
- import "../chunk-VTUN7WSG.js";
98
+ import "../chunk-GCD3SQSV.js";
99
+ import "../chunk-4LL6LG5X.js";
99
100
  import "../chunk-2UMNXADU.js";
100
101
  import {
101
102
  CURSOR_GATE_EVENTS,
102
103
  HOOK_LOCATOR_BINARY,
103
104
  isValidApiKey
104
- } from "../chunk-HUZW6SEO.js";
105
+ } from "../chunk-OUAE3GKO.js";
105
106
 
106
107
  // bin/pushary-clean.ts
107
108
  import { existsSync, readFileSync, copyFileSync, readdirSync } from "fs";
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
- import "../chunk-DNLFSRCF.js";
2
+ import "../chunk-WGV3VY7O.js";
3
3
  import {
4
4
  LiveTranscriptRelay,
5
5
  liveSessionSleep,
6
6
  postLiveSession,
7
7
  postLiveSessionUntilAccepted,
8
8
  startLiveSessionHeartbeat
9
- } from "../chunk-ROTIPRM4.js";
9
+ } from "../chunk-5KLAETSU.js";
10
10
  import {
11
11
  SESSION_IDLE_TIMEOUT_MS,
12
12
  describeIdleWindow,
13
13
  idleDeadlinePassed,
14
14
  startProcessOwnership,
15
15
  withSpawnProcessOwnership
16
- } from "../chunk-KDPYXMUI.js";
17
- import "../chunk-CDSA3NTB.js";
16
+ } from "../chunk-6IFUXNFX.js";
17
+ import "../chunk-XPPXOKIG.js";
18
18
  import "../chunk-EQRS3SGM.js";
19
19
  import {
20
20
  transcriptsEnabled
21
- } from "../chunk-C2FYSFTQ.js";
21
+ } from "../chunk-ID5FDKDZ.js";
22
22
  import {
23
23
  spawnClaude
24
24
  } from "../chunk-XHKBHWLX.js";
@@ -28,18 +28,19 @@ import {
28
28
  } from "../chunk-LGXUGYUH.js";
29
29
  import {
30
30
  getMachineId
31
- } from "../chunk-IZKCA35M.js";
31
+ } from "../chunk-562UJ2DA.js";
32
32
  import {
33
33
  resolveBinary
34
- } from "../chunk-67RNDRKL.js";
35
- import "../chunk-VF7YOT2W.js";
34
+ } from "../chunk-JBJBVERL.js";
35
+ import "../chunk-4PBCNVI3.js";
36
36
  import {
37
37
  callMcpTool
38
38
  } from "../chunk-EYRGBYZG.js";
39
39
  import "../chunk-SAF6HGAA.js";
40
40
  import "../chunk-7QLSKOSU.js";
41
41
  import "../chunk-KZERVKTD.js";
42
- import "../chunk-VTUN7WSG.js";
42
+ import "../chunk-GCD3SQSV.js";
43
+ import "../chunk-4LL6LG5X.js";
43
44
  import {
44
45
  getApiKey,
45
46
  getBaseUrl
@@ -47,7 +48,7 @@ import {
47
48
  import {
48
49
  parseAgentQuestion,
49
50
  parseAgentQuestionAnswers
50
- } from "../chunk-HUZW6SEO.js";
51
+ } from "../chunk-OUAE3GKO.js";
51
52
 
52
53
  // bin/pushary-codex-bridge.ts
53
54
  import { existsSync } from "fs";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  takeHookHoldBudget
4
- } from "../chunk-OYTOLQ3N.js";
4
+ } from "../chunk-SI7GYBQP.js";
5
5
  import {
6
6
  blockedActionFingerprint,
7
7
  codexCallKey,
@@ -12,30 +12,30 @@ import {
12
12
  recordBlockedActionHint,
13
13
  recordCodexCallDecision,
14
14
  userScope
15
- } from "../chunk-XDMHLQMH.js";
15
+ } from "../chunk-6KLCP7VF.js";
16
16
  import {
17
17
  isGatingMoment,
18
18
  recordKeylessMoment
19
- } from "../chunk-VOC55PQV.js";
19
+ } from "../chunk-XOOWC62T.js";
20
20
  import {
21
21
  readHookInput
22
- } from "../chunk-5ODZEFP3.js";
22
+ } from "../chunk-O3LZQEQP.js";
23
23
  import {
24
24
  denyReasonFrom,
25
25
  isDeferAnswer
26
26
  } from "../chunk-YHG74UFF.js";
27
- import "../chunk-6VXZKOBB.js";
28
- import "../chunk-A4AIISZZ.js";
29
- import "../chunk-4AXWBCCO.js";
30
- import "../chunk-H4VNAOCG.js";
31
- import "../chunk-BYH75I7Y.js";
32
- import "../chunk-FU5SQKAY.js";
33
- import "../chunk-LYWTLNMG.js";
34
- import "../chunk-IBRX7LRE.js";
35
- import "../chunk-WIKEADOS.js";
36
- import "../chunk-CDSA3NTB.js";
27
+ import "../chunk-NSFNEDCT.js";
28
+ import "../chunk-YKLCWWEI.js";
29
+ import "../chunk-RALVI7OF.js";
30
+ import "../chunk-LBNAGGLV.js";
31
+ import "../chunk-IRLTW6KF.js";
32
+ import "../chunk-JXELRCU5.js";
33
+ import "../chunk-CRFLU455.js";
34
+ import "../chunk-PD6JY33P.js";
35
+ import "../chunk-EXHXR2X5.js";
36
+ import "../chunk-XPPXOKIG.js";
37
37
  import "../chunk-EQRS3SGM.js";
38
- import "../chunk-C2FYSFTQ.js";
38
+ import "../chunk-ID5FDKDZ.js";
39
39
  import "../chunk-XHKBHWLX.js";
40
40
  import {
41
41
  CODEX_AGENT,
@@ -61,7 +61,7 @@ import {
61
61
  toCodexWire,
62
62
  toPolicyLookup,
63
63
  toPolicyLookups
64
- } from "../chunk-DGUMR5LZ.js";
64
+ } from "../chunk-64WARXGV.js";
65
65
  import {
66
66
  UNNAMED_ACTION,
67
67
  codexReviewerDenialsSince,
@@ -74,8 +74,8 @@ import {
74
74
  scanCodexGuardianReviews,
75
75
  scopePathFor,
76
76
  sessionIdentityOf
77
- } from "../chunk-VCKQ45QA.js";
78
- import "../chunk-QFAZ6QCT.js";
77
+ } from "../chunk-A76GNRIK.js";
78
+ import "../chunk-OPR2BPD4.js";
79
79
  import {
80
80
  DECISION_STOP_REASON,
81
81
  askUser,
@@ -90,20 +90,21 @@ import {
90
90
  } from "../chunk-LGXUGYUH.js";
91
91
  import {
92
92
  getMachineId
93
- } from "../chunk-IZKCA35M.js";
93
+ } from "../chunk-562UJ2DA.js";
94
94
  import {
95
95
  canonicalJson
96
- } from "../chunk-67RNDRKL.js";
96
+ } from "../chunk-JBJBVERL.js";
97
97
  import "../chunk-GMXKITVA.js";
98
98
  import "../chunk-DINDL2CF.js";
99
- import "../chunk-VF7YOT2W.js";
99
+ import "../chunk-4PBCNVI3.js";
100
100
  import "../chunk-EYRGBYZG.js";
101
101
  import "../chunk-SAF6HGAA.js";
102
102
  import "../chunk-7QLSKOSU.js";
103
103
  import "../chunk-KZERVKTD.js";
104
+ import "../chunk-GCD3SQSV.js";
104
105
  import {
105
106
  writeFileAtomic
106
- } from "../chunk-VTUN7WSG.js";
107
+ } from "../chunk-4LL6LG5X.js";
107
108
  import {
108
109
  getApiKey
109
110
  } from "../chunk-2UMNXADU.js";
@@ -119,7 +120,7 @@ import {
119
120
  hookWaitClamped,
120
121
  hookWaitDeadline,
121
122
  resolveGate
122
- } from "../chunk-HUZW6SEO.js";
123
+ } from "../chunk-OUAE3GKO.js";
123
124
 
124
125
  // bin/pushary-codex-hook.ts
125
126
  import { basename } from "path";
@@ -733,6 +734,14 @@ var decidePreToolUse = async (input) => {
733
734
  return codexPass();
734
735
  }
735
736
  };
737
+ var repairCodexHoldsQuietly = async () => {
738
+ try {
739
+ const { repairCodexHolds } = await import("../reapply-HQ264ZTR.js");
740
+ repairCodexHolds();
741
+ } catch {
742
+ return;
743
+ }
744
+ };
736
745
  var reportSessionStart = async (input, action = "Session started") => {
737
746
  try {
738
747
  await reportEvent({
@@ -803,6 +812,7 @@ var main = async () => {
803
812
  break;
804
813
  }
805
814
  case "SessionStart":
815
+ await repairCodexHoldsQuietly();
806
816
  await reportSessionStart(input);
807
817
  break;
808
818
  case "SessionEnd":
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reportEvent
4
- } from "../chunk-DGUMR5LZ.js";
5
- import "../chunk-VCKQ45QA.js";
6
- import "../chunk-QFAZ6QCT.js";
4
+ } from "../chunk-64WARXGV.js";
5
+ import "../chunk-A76GNRIK.js";
6
+ import "../chunk-OPR2BPD4.js";
7
7
  import {
8
8
  askUser,
9
9
  isDecisionStopped,
@@ -11,17 +11,18 @@ import {
11
11
  } from "../chunk-LGXUGYUH.js";
12
12
  import {
13
13
  getMachineId
14
- } from "../chunk-IZKCA35M.js";
15
- import "../chunk-67RNDRKL.js";
14
+ } from "../chunk-562UJ2DA.js";
15
+ import "../chunk-JBJBVERL.js";
16
16
  import "../chunk-EYRGBYZG.js";
17
17
  import "../chunk-SAF6HGAA.js";
18
18
  import "../chunk-7QLSKOSU.js";
19
19
  import "../chunk-KZERVKTD.js";
20
- import "../chunk-VTUN7WSG.js";
20
+ import "../chunk-GCD3SQSV.js";
21
+ import "../chunk-4LL6LG5X.js";
21
22
  import {
22
23
  getApiKey
23
24
  } from "../chunk-2UMNXADU.js";
24
- import "../chunk-HUZW6SEO.js";
25
+ import "../chunk-OUAE3GKO.js";
25
26
 
26
27
  // bin/pushary-codex.ts
27
28
  import { basename } from "path";
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  printKeyCheck
4
- } from "../chunk-VDTC5DEM.js";
4
+ } from "../chunk-6C6MS57P.js";
5
5
  import {
6
6
  connectDevice,
7
7
  connectExistingApp,
8
8
  printConnectInstructions
9
- } from "../chunk-B3557BDL.js";
9
+ } from "../chunk-4C4XFAGJ.js";
10
10
  import "../chunk-3EGEA4KH.js";
11
11
  import {
12
12
  checkApiKey
13
- } from "../chunk-SW37HB27.js";
13
+ } from "../chunk-3RVCQDC4.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-VF7YOT2W.js";
28
+ } from "../chunk-4PBCNVI3.js";
29
29
  import "../chunk-EYRGBYZG.js";
30
30
  import "../chunk-SAF6HGAA.js";
31
31
  import {
@@ -34,9 +34,10 @@ import {
34
34
  import {
35
35
  EXIT
36
36
  } from "../chunk-KZERVKTD.js";
37
- import "../chunk-VTUN7WSG.js";
37
+ import "../chunk-GCD3SQSV.js";
38
+ import "../chunk-4LL6LG5X.js";
38
39
  import "../chunk-2UMNXADU.js";
39
- import "../chunk-HUZW6SEO.js";
40
+ import "../chunk-OUAE3GKO.js";
40
41
 
41
42
  // bin/pushary-connect.ts
42
43
  exitOnHelpFlag("connect");
@@ -2,12 +2,12 @@
2
2
  import {
3
3
  coworkOutput,
4
4
  parseCoworkOptions
5
- } from "../chunk-ICUBJNFL.js";
5
+ } from "../chunk-CP34FI4B.js";
6
6
  import {
7
7
  canOpenBrowser,
8
8
  openInBrowser
9
9
  } from "../chunk-PUZZELE6.js";
10
- import "../chunk-H4VNAOCG.js";
10
+ import "../chunk-LBNAGGLV.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-HUZW6SEO.js";
25
+ } from "../chunk-OUAE3GKO.js";
26
26
 
27
27
  // bin/pushary-cowork.ts
28
28
  exitOnHelpFlag("cowork");