@pushary/agent-hooks 1.9.10 → 1.9.12

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 (102) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +1 -1
  3. package/dist/bin/pushary-bell-hook.js +25 -21
  4. package/dist/bin/pushary-bell.js +9 -9
  5. package/dist/bin/pushary-claude.js +31 -34
  6. package/dist/bin/pushary-clean.js +35 -37
  7. package/dist/bin/pushary-codex-bridge.js +20 -22
  8. package/dist/bin/pushary-codex-hook.js +33 -36
  9. package/dist/bin/pushary-codex.js +12 -14
  10. package/dist/bin/pushary-connect.js +25 -27
  11. package/dist/bin/pushary-cowork.js +5 -5
  12. package/dist/bin/pushary-daemon.js +42 -39
  13. package/dist/bin/pushary-disconnect.js +33 -33
  14. package/dist/bin/pushary-doctor.js +39 -41
  15. package/dist/bin/pushary-elicitation-hook.js +26 -26
  16. package/dist/bin/pushary-gemini-bridge.js +13 -13
  17. package/dist/bin/pushary-gemini-hook.js +30 -33
  18. package/dist/bin/pushary-hook.js +31 -33
  19. package/dist/bin/pushary-login.js +12 -12
  20. package/dist/bin/pushary-logout.js +10 -10
  21. package/dist/bin/pushary-mcp.js +9 -9
  22. package/dist/bin/pushary-mode.js +12 -12
  23. package/dist/bin/pushary-notification-hook.js +24 -26
  24. package/dist/bin/pushary-opencode-hook.js +29 -32
  25. package/dist/bin/pushary-permission-denied-hook.js +29 -31
  26. package/dist/bin/pushary-permission-hook.js +28 -30
  27. package/dist/bin/pushary-post-hook.js +24 -26
  28. package/dist/bin/pushary-prompt-hook.js +24 -26
  29. package/dist/bin/pushary-session-end-hook.js +24 -26
  30. package/dist/bin/pushary-session-start-hook.js +28 -30
  31. package/dist/bin/pushary-setup.js +47 -44
  32. package/dist/bin/pushary-stats.js +5 -5
  33. package/dist/bin/pushary-status.js +27 -29
  34. package/dist/bin/pushary-stop-hook.js +24 -26
  35. package/dist/bin/pushary-stopfailure-hook.js +24 -26
  36. package/dist/bin/pushary-suggestions.js +12 -12
  37. package/dist/bin/pushary-transcript-register.js +17 -17
  38. package/dist/bin/pushary-transcripts.js +7 -7
  39. package/dist/bin/pushary-upgrade.js +30 -32
  40. package/dist/bin/pushary-wait.js +12 -12
  41. package/dist/bin/pushary.js +6 -6
  42. package/dist/{chunk-XKMGHVXW.js → chunk-2GBUL4NP.js} +6 -6
  43. package/dist/{chunk-H4F5O3RE.js → chunk-2NKTEA42.js} +1 -1
  44. package/dist/{chunk-RPQLZLKC.js → chunk-2QJ6K2SR.js} +7 -6
  45. package/dist/{chunk-GTZ4HIHU.js → chunk-3VPS7JPH.js} +2 -2
  46. package/dist/{chunk-AKPHYSEL.js → chunk-4DWQNP52.js} +4 -4
  47. package/dist/{chunk-SMVMLWCD.js → chunk-5HPC3RNE.js} +1 -1
  48. package/dist/{chunk-Z2Q2VH43.js → chunk-5VUB6VVO.js} +15 -3
  49. package/dist/{chunk-LDQGURCF.js → chunk-7U26QSMF.js} +514 -313
  50. package/dist/{chunk-C6QTMWJZ.js → chunk-A2DW2RNT.js} +4 -4
  51. package/dist/{chunk-UJZ7AGSC.js → chunk-AWD2SLNA.js} +4 -4
  52. package/dist/{chunk-2HXG2QDI.js → chunk-BNQKHPEC.js} +4 -4
  53. package/dist/{chunk-7HGR5GNY.js → chunk-BOHDM4T7.js} +46 -21
  54. package/dist/{chunk-PNC5ZQFS.js → chunk-BX2R7SIY.js} +6 -6
  55. package/dist/{chunk-I3W7GJ5R.js → chunk-CATIBZQH.js} +3 -3
  56. package/dist/{chunk-SJDMULE7.js → chunk-CKUACXAX.js} +5 -5
  57. package/dist/{chunk-XXLCYKVS.js → chunk-CMZ4CW5J.js} +3 -3
  58. package/dist/{chunk-5OP5MQI7.js → chunk-CPUEZAE2.js} +1 -1
  59. package/dist/{chunk-DWO4RLYK.js → chunk-CXKY5FGY.js} +8 -8
  60. package/dist/{chunk-ZSGJYSF2.js → chunk-DWHCF4RH.js} +136 -8
  61. package/dist/{chunk-BTFUSQFB.js → chunk-DYQ5QIDN.js} +2 -2
  62. package/dist/{chunk-CJYM4ZHV.js → chunk-E2FGVADR.js} +3 -5
  63. package/dist/{chunk-EVC765EO.js → chunk-EYLQVCME.js} +2 -2
  64. package/dist/{chunk-YUQHUGTH.js → chunk-FLPXTN3Q.js} +1 -1
  65. package/dist/{chunk-BVPPYR7B.js → chunk-FSCWOYK6.js} +3 -3
  66. package/dist/{chunk-2S34OPHS.js → chunk-GP44LTXN.js} +1 -1
  67. package/dist/{chunk-2HFSKYLN.js → chunk-GTM7C36Y.js} +2 -2
  68. package/dist/{chunk-U5FP5JIS.js → chunk-J5XCHLP4.js} +2 -2
  69. package/dist/{chunk-MD4SVNT6.js → chunk-JKGTASA2.js} +1 -1
  70. package/dist/{chunk-GQYX24UC.js → chunk-JNDELCH5.js} +1 -1
  71. package/dist/{chunk-PR2VDVCP.js → chunk-KXCWWHYO.js} +3 -3
  72. package/dist/{chunk-OL2Z7WI4.js → chunk-LBDMCNQY.js} +2 -2
  73. package/dist/{chunk-QGRENWJL.js → chunk-M2P3HQA3.js} +1 -1
  74. package/dist/{chunk-DAOQT4WK.js → chunk-MEHDBT5H.js} +2 -2
  75. package/dist/{chunk-ZGADIZDS.js → chunk-NDZKDJQU.js} +1 -1
  76. package/dist/{chunk-S2DAKKQQ.js → chunk-OBGZUD73.js} +3 -3
  77. package/dist/{chunk-APP43AW7.js → chunk-PKQ435Z2.js} +1 -1
  78. package/dist/{chunk-BVSIM4EF.js → chunk-PMUOEEUE.js} +2 -2
  79. package/dist/{chunk-DL6QHS7V.js → chunk-PNBJAYSL.js} +1 -1
  80. package/dist/{chunk-5RGA636G.js → chunk-QOBOIFGG.js} +231 -17
  81. package/dist/{chunk-IIVZZMSO.js → chunk-RBBMGCSZ.js} +1 -1
  82. package/dist/{chunk-TCXL5FQQ.js → chunk-RYBAJXV4.js} +1 -1
  83. package/dist/{chunk-SIHYBIEN.js → chunk-SJ7M37RL.js} +5 -5
  84. package/dist/{chunk-LXA236ZQ.js → chunk-SQJUXVLW.js} +2 -2
  85. package/dist/{chunk-6KNC6KLL.js → chunk-TSGQYARU.js} +4 -4
  86. package/dist/{chunk-BOSXFI7L.js → chunk-TZCHW6KR.js} +4 -4
  87. package/dist/{chunk-T6ZN4TEF.js → chunk-UEQWLVJB.js} +1 -1
  88. package/dist/{chunk-5MQYA3YL.js → chunk-VDPU4YQN.js} +19 -16
  89. package/dist/{chunk-UM5WXBKN.js → chunk-WBSL4FBX.js} +3 -3
  90. package/dist/{chunk-Q3UMWSE4.js → chunk-WKP2KRTU.js} +2 -2
  91. package/dist/{chunk-Y7JM47CI.js → chunk-YZWUTWDG.js} +2 -2
  92. package/dist/{chunk-QAGWWDXQ.js → chunk-Z6VYZSVA.js} +5 -5
  93. package/dist/{chunk-2M52CFVO.js → chunk-ZC6EVOX6.js} +1 -1
  94. package/dist/{chunk-MISUKJGW.js → chunk-ZHF4JDVE.js} +1 -1
  95. package/dist/{global-upgrade-PUM44JUH.js → global-upgrade-OCZWEF3A.js} +6 -6
  96. package/dist/{paths-U2MJGNBT.js → paths-SOGZJICO.js} +2 -2
  97. package/dist/{reapply-PRKV4EO7.js → reapply-DFG5IE6N.js} +20 -22
  98. package/dist/src/index.js +19 -21
  99. package/dist/{upgrade-lock-QZSVLEM7.js → upgrade-lock-XLE5GVWS.js} +3 -3
  100. package/package.json +1 -1
  101. package/dist/chunk-N6IOSZOE.js +0 -185
  102. package/dist/chunk-NQ67AF3V.js +0 -142
@@ -1,34 +1,32 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  reportEvent
4
- } from "../chunk-LDQGURCF.js";
5
- import "../chunk-N6IOSZOE.js";
6
- import "../chunk-MD4SVNT6.js";
4
+ } from "../chunk-7U26QSMF.js";
5
+ import "../chunk-JKGTASA2.js";
7
6
  import {
8
7
  askUser,
9
8
  isDecisionStopped,
10
9
  waitForAnswer
11
- } from "../chunk-ZSGJYSF2.js";
12
- import "../chunk-I3W7GJ5R.js";
13
- import "../chunk-XXLCYKVS.js";
14
- import "../chunk-NQ67AF3V.js";
10
+ } from "../chunk-DWHCF4RH.js";
15
11
  import "../chunk-POFBE6ZY.js";
16
- import "../chunk-UM5WXBKN.js";
12
+ import "../chunk-CATIBZQH.js";
13
+ import "../chunk-CMZ4CW5J.js";
14
+ import "../chunk-WBSL4FBX.js";
17
15
  import {
18
16
  getMachineId
19
- } from "../chunk-H4F5O3RE.js";
17
+ } from "../chunk-2NKTEA42.js";
20
18
  import "../chunk-7QLSKOSU.js";
21
19
  import "../chunk-KZERVKTD.js";
22
- import "../chunk-Q3UMWSE4.js";
23
- import "../chunk-UJZ7AGSC.js";
20
+ import "../chunk-WKP2KRTU.js";
21
+ import "../chunk-AWD2SLNA.js";
24
22
  import "../chunk-T7E75EKA.js";
25
23
  import {
26
24
  getApiKey
27
- } from "../chunk-2M52CFVO.js";
25
+ } from "../chunk-ZC6EVOX6.js";
28
26
  import {
29
27
  NPX_LATEST_COMMAND
30
- } from "../chunk-TCXL5FQQ.js";
31
- import "../chunk-5RGA636G.js";
28
+ } from "../chunk-RYBAJXV4.js";
29
+ import "../chunk-QOBOIFGG.js";
32
30
 
33
31
  // bin/pushary-codex.ts
34
32
  import { basename } from "path";
@@ -3,63 +3,61 @@ import {
3
3
  connectDevice,
4
4
  connectExistingApp,
5
5
  printConnectInstructions
6
- } from "../chunk-6KNC6KLL.js";
6
+ } from "../chunk-TSGQYARU.js";
7
7
  import "../chunk-3EGEA4KH.js";
8
8
  import "../chunk-QCGNGEGE.js";
9
9
  import {
10
10
  printKeyCheck
11
- } from "../chunk-AKPHYSEL.js";
11
+ } from "../chunk-4DWQNP52.js";
12
12
  import {
13
13
  CONNECTED_THROUGH_MAC_APP,
14
14
  PAIR_FROM_MAC_APP,
15
15
  readMacAppConnection
16
- } from "../chunk-BOSXFI7L.js";
17
- import "../chunk-LXA236ZQ.js";
18
- import "../chunk-QAGWWDXQ.js";
19
- import "../chunk-7HGR5GNY.js";
16
+ } from "../chunk-TZCHW6KR.js";
17
+ import "../chunk-SQJUXVLW.js";
18
+ import "../chunk-Z6VYZSVA.js";
20
19
  import {
21
20
  createIo
22
21
  } from "../chunk-U4TMAANR.js";
23
22
  import {
24
23
  exitOnHelpFlag
25
- } from "../chunk-2HFSKYLN.js";
26
- import "../chunk-SIHYBIEN.js";
27
- import "../chunk-PR2VDVCP.js";
28
- import "../chunk-ZGADIZDS.js";
29
- import "../chunk-GQYX24UC.js";
24
+ } from "../chunk-GTM7C36Y.js";
25
+ import "../chunk-BOHDM4T7.js";
26
+ import "../chunk-SJ7M37RL.js";
27
+ import "../chunk-KXCWWHYO.js";
28
+ import "../chunk-NDZKDJQU.js";
29
+ import "../chunk-JNDELCH5.js";
30
30
  import {
31
31
  parseFlags
32
32
  } from "../chunk-GMXKITVA.js";
33
33
  import "../chunk-6ICPEJY5.js";
34
34
  import {
35
35
  readKeySource
36
- } from "../chunk-GTZ4HIHU.js";
37
- import "../chunk-LDQGURCF.js";
38
- import "../chunk-N6IOSZOE.js";
39
- import "../chunk-MD4SVNT6.js";
40
- import "../chunk-ZSGJYSF2.js";
41
- import "../chunk-I3W7GJ5R.js";
36
+ } from "../chunk-3VPS7JPH.js";
37
+ import "../chunk-7U26QSMF.js";
38
+ import "../chunk-JKGTASA2.js";
39
+ import "../chunk-DWHCF4RH.js";
40
+ import "../chunk-POFBE6ZY.js";
41
+ import "../chunk-CATIBZQH.js";
42
42
  import {
43
43
  checkApiKey
44
- } from "../chunk-XXLCYKVS.js";
45
- import "../chunk-NQ67AF3V.js";
46
- import "../chunk-POFBE6ZY.js";
47
- import "../chunk-UM5WXBKN.js";
48
- import "../chunk-H4F5O3RE.js";
44
+ } from "../chunk-CMZ4CW5J.js";
45
+ import "../chunk-WBSL4FBX.js";
46
+ import "../chunk-2NKTEA42.js";
49
47
  import {
50
48
  UsageError
51
49
  } from "../chunk-7QLSKOSU.js";
52
50
  import {
53
51
  EXIT
54
52
  } from "../chunk-KZERVKTD.js";
55
- import "../chunk-Q3UMWSE4.js";
56
- import "../chunk-UJZ7AGSC.js";
53
+ import "../chunk-WKP2KRTU.js";
54
+ import "../chunk-AWD2SLNA.js";
57
55
  import "../chunk-T7E75EKA.js";
58
- import "../chunk-2M52CFVO.js";
56
+ import "../chunk-ZC6EVOX6.js";
59
57
  import {
60
58
  isInvocationOf
61
- } from "../chunk-TCXL5FQQ.js";
62
- import "../chunk-5RGA636G.js";
59
+ } from "../chunk-RYBAJXV4.js";
60
+ import "../chunk-QOBOIFGG.js";
63
61
 
64
62
  // bin/pushary-connect.ts
65
63
  exitOnHelpFlag("pair");
@@ -2,15 +2,15 @@
2
2
  import {
3
3
  coworkOutput,
4
4
  parseCoworkOptions
5
- } from "../chunk-BVPPYR7B.js";
5
+ } from "../chunk-FSCWOYK6.js";
6
6
  import {
7
7
  canOpenBrowser,
8
8
  openInBrowser
9
9
  } from "../chunk-PUZZELE6.js";
10
10
  import {
11
11
  exitOnHelpFlag
12
- } from "../chunk-2HFSKYLN.js";
13
- import "../chunk-ZGADIZDS.js";
12
+ } from "../chunk-GTM7C36Y.js";
13
+ import "../chunk-NDZKDJQU.js";
14
14
  import "../chunk-GMXKITVA.js";
15
15
  import {
16
16
  UsageError
@@ -18,10 +18,10 @@ import {
18
18
  import {
19
19
  EXIT
20
20
  } from "../chunk-KZERVKTD.js";
21
- import "../chunk-TCXL5FQQ.js";
21
+ import "../chunk-RYBAJXV4.js";
22
22
  import {
23
23
  CLAUDE_CONNECTOR_GUIDE
24
- } from "../chunk-5RGA636G.js";
24
+ } from "../chunk-QOBOIFGG.js";
25
25
 
26
26
  // bin/pushary-cowork.ts
27
27
  exitOnHelpFlag("cowork");
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  inspectConfiguredManagedProviders
4
- } from "../chunk-PNC5ZQFS.js";
5
- import "../chunk-Y7JM47CI.js";
4
+ } from "../chunk-BX2R7SIY.js";
5
+ import "../chunk-YZWUTWDG.js";
6
6
  import {
7
7
  HEARTBEAT_INTERVAL_MS,
8
8
  sendHeartbeat
9
- } from "../chunk-XKMGHVXW.js";
9
+ } from "../chunk-2GBUL4NP.js";
10
10
  import {
11
11
  codexBinaryIsBroken,
12
12
  detectProviderLiveCapabilities,
@@ -15,7 +15,7 @@ import {
15
15
  launchableProviders,
16
16
  resolveControlPolicy,
17
17
  trackProviderInventory
18
- } from "../chunk-EVC765EO.js";
18
+ } from "../chunk-EYLQVCME.js";
19
19
  import "../chunk-RIVNNBEK.js";
20
20
  import {
21
21
  SESSION_REAP_SILENCE_MS,
@@ -24,10 +24,10 @@ import {
24
24
  listProcessProofs,
25
25
  ownsLiveProcess,
26
26
  silentSpawnedProofs
27
- } from "../chunk-2S34OPHS.js";
27
+ } from "../chunk-GP44LTXN.js";
28
28
  import {
29
29
  startRegisteredTranscripts
30
- } from "../chunk-DWO4RLYK.js";
30
+ } from "../chunk-CXKY5FGY.js";
31
31
  import "../chunk-SGZJ5LYH.js";
32
32
  import {
33
33
  DAEMON_LEASE_RENEW_INTERVAL_MS,
@@ -45,10 +45,10 @@ import {
45
45
  requestDaemonHandoff,
46
46
  stopDaemonRunning,
47
47
  writeDaemonNeedsLogin
48
- } from "../chunk-RPQLZLKC.js";
49
- import "../chunk-APP43AW7.js";
50
- import "../chunk-MISUKJGW.js";
51
- import "../chunk-QGRENWJL.js";
48
+ } from "../chunk-2QJ6K2SR.js";
49
+ import "../chunk-PKQ435Z2.js";
50
+ import "../chunk-ZHF4JDVE.js";
51
+ import "../chunk-M2P3HQA3.js";
52
52
  import {
53
53
  spawnClaude
54
54
  } from "../chunk-XHKBHWLX.js";
@@ -57,48 +57,46 @@ import {
57
57
  } from "../chunk-QCGNGEGE.js";
58
58
  import {
59
59
  readSignedOutDiagnosis
60
- } from "../chunk-LXA236ZQ.js";
61
- import "../chunk-QAGWWDXQ.js";
62
- import "../chunk-7HGR5GNY.js";
60
+ } from "../chunk-SQJUXVLW.js";
61
+ import "../chunk-Z6VYZSVA.js";
63
62
  import {
64
63
  exitOnHelpFlag
65
- } from "../chunk-2HFSKYLN.js";
66
- import "../chunk-SIHYBIEN.js";
67
- import "../chunk-PR2VDVCP.js";
68
- import "../chunk-ZGADIZDS.js";
69
- import "../chunk-GQYX24UC.js";
64
+ } from "../chunk-GTM7C36Y.js";
65
+ import "../chunk-BOHDM4T7.js";
66
+ import "../chunk-SJ7M37RL.js";
67
+ import "../chunk-KXCWWHYO.js";
68
+ import "../chunk-NDZKDJQU.js";
69
+ import "../chunk-JNDELCH5.js";
70
70
  import "../chunk-GMXKITVA.js";
71
71
  import "../chunk-6ICPEJY5.js";
72
72
  import {
73
73
  readControlMode
74
- } from "../chunk-GTZ4HIHU.js";
75
- import "../chunk-LDQGURCF.js";
76
- import "../chunk-N6IOSZOE.js";
77
- import "../chunk-MD4SVNT6.js";
78
- import "../chunk-ZSGJYSF2.js";
79
- import "../chunk-I3W7GJ5R.js";
80
- import "../chunk-XXLCYKVS.js";
81
- import "../chunk-NQ67AF3V.js";
74
+ } from "../chunk-3VPS7JPH.js";
75
+ import "../chunk-7U26QSMF.js";
76
+ import "../chunk-JKGTASA2.js";
77
+ import "../chunk-DWHCF4RH.js";
82
78
  import "../chunk-POFBE6ZY.js";
83
- import "../chunk-UM5WXBKN.js";
79
+ import "../chunk-CATIBZQH.js";
80
+ import "../chunk-CMZ4CW5J.js";
81
+ import "../chunk-WBSL4FBX.js";
84
82
  import {
85
83
  getMachineId
86
- } from "../chunk-H4F5O3RE.js";
84
+ } from "../chunk-2NKTEA42.js";
87
85
  import "../chunk-7QLSKOSU.js";
88
86
  import {
89
87
  EXIT
90
88
  } from "../chunk-KZERVKTD.js";
91
- import "../chunk-Q3UMWSE4.js";
89
+ import "../chunk-WKP2KRTU.js";
92
90
  import {
93
91
  resolveBinary
94
- } from "../chunk-UJZ7AGSC.js";
92
+ } from "../chunk-AWD2SLNA.js";
95
93
  import "../chunk-T7E75EKA.js";
96
94
  import {
97
95
  getApiKey,
98
96
  getBaseUrl
99
- } from "../chunk-2M52CFVO.js";
100
- import "../chunk-TCXL5FQQ.js";
101
- import "../chunk-5RGA636G.js";
97
+ } from "../chunk-ZC6EVOX6.js";
98
+ import "../chunk-RYBAJXV4.js";
99
+ import "../chunk-QOBOIFGG.js";
102
100
 
103
101
  // src/spawn-daemon.ts
104
102
  import { execFileSync, spawn } from "child_process";
@@ -148,15 +146,23 @@ var SLOW_POLL_MS = 3e4;
148
146
  var FAST_DECAY_TICKS = 3;
149
147
  var MAX_ERROR_BACKOFF_MS = 12e4;
150
148
  var MAX_ERROR_STREAK = 6;
149
+ var JITTER_FLOOR = 0.85;
150
+ var JITTER_SPREAD = 0.3;
151
151
  var REQUEST_TIMEOUT_MS = 1e4;
152
152
  var STOP_PROTOCOL_VERSION = 2;
153
153
  var MAX_SPAWNS_PER_WINDOW = 5;
154
154
  var SPAWN_WINDOW_MS = 6e4;
155
155
  var VERSION_CHECK_INTERVAL_MS = 2e3;
156
156
  var CONTROL_PROBE_INTERVAL_MS = 6e4;
157
+ var FLAG_SHAPED_PROMPT_MESSAGE = "The prompt looks like a command-line flag";
157
158
  var MAX_TRACKED_PROCESSES = 100;
158
159
  var MAX_COMPLETED_STOPS = 20;
159
160
  var SESSION_REAP_INTERVAL_MS = 6e4;
161
+ var spawnPollDelay = (idleTicks, errorStreak) => {
162
+ if (errorStreak > 0) return Math.min(SLOW_POLL_MS * 2 ** (errorStreak - 1), MAX_ERROR_BACKOFF_MS);
163
+ return idleTicks >= FAST_DECAY_TICKS ? SLOW_POLL_MS : FAST_POLL_MS;
164
+ };
165
+ var jitteredDelay = (ms, unit) => Math.max(1, Math.round(ms * (JITTER_FLOOR + unit * JITTER_SPREAD)));
160
166
  var controlProbeDue = (lastProbeAt, at = Date.now()) => lastProbeAt === 0 || at - lastProbeAt >= CONTROL_PROBE_INTERVAL_MS;
161
167
  var parseControlProbe = (value) => {
162
168
  if (typeof value !== "object" || value === null) return null;
@@ -477,7 +483,7 @@ var runSpawnDaemon = async () => {
477
483
  geminiBridgeEntry
478
484
  });
479
485
  if (!plan) {
480
- return Promise.reject(new Error("The prompt looks like a command-line flag"));
486
+ return Promise.reject(new Error(FLAG_SHAPED_PROMPT_MESSAGE));
481
487
  }
482
488
  return new Promise((resolve, reject) => {
483
489
  try {
@@ -675,11 +681,8 @@ var runSpawnDaemon = async () => {
675
681
  daemonLease.recordError(`spawn ${request.id}: ${message}`);
676
682
  }
677
683
  });
678
- const nextDelay = () => {
679
- if (errorStreak > 0) return Math.min(SLOW_POLL_MS * 2 ** (errorStreak - 1), MAX_ERROR_BACKOFF_MS);
680
- return idleTicks >= FAST_DECAY_TICKS ? SLOW_POLL_MS : FAST_POLL_MS;
681
- };
682
- const jitter = (ms) => Math.max(1, Math.round(ms * (0.85 + Math.random() * 0.3)));
684
+ const nextDelay = () => spawnPollDelay(idleTicks, errorStreak);
685
+ const jitter = (ms) => jitteredDelay(ms, Math.random());
683
686
  const tick = async () => {
684
687
  if (stopped) return;
685
688
  if (!daemonLease.isOwner()) {
@@ -2,16 +2,16 @@
2
2
  import {
3
3
  declinedAgentsFile,
4
4
  recordDeclinedAgent
5
- } from "../chunk-C6QTMWJZ.js";
5
+ } from "../chunk-A2DW2RNT.js";
6
6
  import {
7
7
  isCursorPluginLeftover,
8
8
  isPusharyCursorPluginManifest
9
- } from "../chunk-BVSIM4EF.js";
9
+ } from "../chunk-PMUOEEUE.js";
10
10
  import {
11
11
  planFxRemoval,
12
12
  removeInstructionBlock
13
- } from "../chunk-2HXG2QDI.js";
14
- import "../chunk-OL2Z7WI4.js";
13
+ } from "../chunk-BNQKHPEC.js";
14
+ import "../chunk-LBDMCNQY.js";
15
15
  import {
16
16
  OPENCODE_PLUGIN_SIBLING,
17
17
  OPENCODE_PLUGIN_SIBLING_CONTENTS,
@@ -23,7 +23,10 @@ import {
23
23
  openCodePluginDir,
24
24
  openCodePluginFile,
25
25
  removeOpenCodeMcpServer
26
- } from "../chunk-QAGWWDXQ.js";
26
+ } from "../chunk-Z6VYZSVA.js";
27
+ import {
28
+ exitOnHelpFlag
29
+ } from "../chunk-GTM7C36Y.js";
27
30
  import {
28
31
  compatibleConfigFile,
29
32
  compatibleInstructionsFile,
@@ -36,34 +39,29 @@ import {
36
39
  removePusharySettings,
37
40
  removePusharyToolPermissions,
38
41
  restoreClaudeMcpServer
39
- } from "../chunk-7HGR5GNY.js";
40
- import {
41
- exitOnHelpFlag
42
- } from "../chunk-2HFSKYLN.js";
43
- import "../chunk-SIHYBIEN.js";
42
+ } from "../chunk-BOHDM4T7.js";
43
+ import "../chunk-SJ7M37RL.js";
44
44
  import {
45
45
  removeGeminiSettings
46
- } from "../chunk-PR2VDVCP.js";
47
- import "../chunk-ZGADIZDS.js";
48
- import "../chunk-GQYX24UC.js";
46
+ } from "../chunk-KXCWWHYO.js";
47
+ import "../chunk-NDZKDJQU.js";
48
+ import "../chunk-JNDELCH5.js";
49
49
  import "../chunk-GMXKITVA.js";
50
50
  import "../chunk-6ICPEJY5.js";
51
- import "../chunk-GTZ4HIHU.js";
52
- import "../chunk-LDQGURCF.js";
53
- import "../chunk-N6IOSZOE.js";
54
- import "../chunk-MD4SVNT6.js";
55
- import "../chunk-ZSGJYSF2.js";
56
- import "../chunk-I3W7GJ5R.js";
57
- import "../chunk-XXLCYKVS.js";
58
- import "../chunk-NQ67AF3V.js";
51
+ import "../chunk-3VPS7JPH.js";
52
+ import "../chunk-7U26QSMF.js";
53
+ import "../chunk-JKGTASA2.js";
54
+ import "../chunk-DWHCF4RH.js";
59
55
  import "../chunk-POFBE6ZY.js";
60
- import "../chunk-UM5WXBKN.js";
61
- import "../chunk-H4F5O3RE.js";
56
+ import "../chunk-CATIBZQH.js";
57
+ import "../chunk-CMZ4CW5J.js";
58
+ import "../chunk-WBSL4FBX.js";
59
+ import "../chunk-2NKTEA42.js";
62
60
  import "../chunk-7QLSKOSU.js";
63
61
  import {
64
62
  EXIT
65
63
  } from "../chunk-KZERVKTD.js";
66
- import "../chunk-Q3UMWSE4.js";
64
+ import "../chunk-WKP2KRTU.js";
67
65
  import {
68
66
  claudeJson,
69
67
  claudeMcpReceipt,
@@ -85,18 +83,18 @@ import {
85
83
  geminiSettings,
86
84
  removeCodexHooks,
87
85
  removeCodexSettings
88
- } from "../chunk-UJZ7AGSC.js";
86
+ } from "../chunk-AWD2SLNA.js";
89
87
  import "../chunk-T7E75EKA.js";
90
- import "../chunk-2M52CFVO.js";
88
+ import "../chunk-ZC6EVOX6.js";
91
89
  import {
92
90
  isInvocationOf
93
- } from "../chunk-TCXL5FQQ.js";
91
+ } from "../chunk-RYBAJXV4.js";
94
92
  import {
95
93
  DISCONNECTABLE_AGENTS,
96
94
  DISCONNECT_AGENT_IDS,
97
95
  hookCompatibleProfileBySource,
98
96
  normalizeAgentId
99
- } from "../chunk-5RGA636G.js";
97
+ } from "../chunk-QOBOIFGG.js";
100
98
 
101
99
  // bin/pushary-disconnect.ts
102
100
  import { readdirSync, readFileSync, rmSync, writeFileSync } from "fs";
@@ -163,6 +161,7 @@ var disconnectPlan = (agent) => {
163
161
  case "qoder":
164
162
  case "droid":
165
163
  case "devin":
164
+ case "antigravity":
166
165
  return compatibleDisconnectPlan(agent);
167
166
  }
168
167
  };
@@ -215,7 +214,8 @@ var disconnectInstructionFile = (agent) => {
215
214
  case "codebuddy":
216
215
  case "qoder":
217
216
  case "droid":
218
- case "devin": {
217
+ case "devin":
218
+ case "antigravity": {
219
219
  const profile = hookCompatibleProfileBySource(agent);
220
220
  return profile ? compatibleInstructionsFile(profile) : null;
221
221
  }
@@ -359,8 +359,8 @@ if (requested === null) {
359
359
  console.error("Setup ids such as claude_code and gemini_cli work too.");
360
360
  process.exit(EXIT.FAILED);
361
361
  }
362
+ var decline = recordDeclinedAgent(requested);
362
363
  if (isDisconnectableAgent(requested)) {
363
- const decline = recordDeclinedAgent(requested);
364
364
  const result = disconnectAgent(requested, {
365
365
  read: (path) => {
366
366
  try {
@@ -384,9 +384,6 @@ if (isDisconnectableAgent(requested)) {
384
384
  removeInstructionBlock
385
385
  });
386
386
  printResult(requested, result.changed, result.kept);
387
- if (decline !== "unchanged" && macAppBridgeAvailable()) {
388
- console.log(decline === "changed" ? MAC_APP_LEAVES_IT_OFF(requested) : MAC_APP_MAY_RESTORE_IT(requested, declinedAgentsFile()));
389
- }
390
387
  } else {
391
388
  const result = disconnectFx({
392
389
  write: (path, contents) => writeFileSync(path, contents, "utf-8"),
@@ -395,3 +392,6 @@ if (isDisconnectableAgent(requested)) {
395
392
  });
396
393
  printResult(requested, result.changed, result.kept);
397
394
  }
395
+ if (decline !== "unchanged" && macAppBridgeAvailable()) {
396
+ console.log(decline === "changed" ? MAC_APP_LEAVES_IT_OFF(requested) : MAC_APP_MAY_RESTORE_IT(requested, declinedAgentsFile()));
397
+ }