hive-intelligence 1.1.3 → 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 (174) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +315 -85
  3. package/agent-skills/.claude-plugin/plugin.json +10 -4
  4. package/agent-skills/.mcp.json +8 -0
  5. package/agent-skills/AGENTS.md +37 -0
  6. package/agent-skills/README.md +28 -23
  7. package/agent-skills/SKILL.md +40 -10
  8. package/agent-skills/evals/trigger-queries.json +270 -0
  9. package/agent-skills/package.json +4 -4
  10. package/agent-skills/packs/hive-build/SKILL.md +54 -25
  11. package/agent-skills/packs/hive-build/evals/evals.json +16 -3
  12. package/agent-skills/packs/hive-build/evals/triggers.json +50 -0
  13. package/agent-skills/packs/hive-build-onboarding/SKILL.md +27 -34
  14. package/agent-skills/packs/hive-build-onboarding/evals/evals.json +1 -1
  15. package/agent-skills/packs/hive-build-onboarding/evals/triggers.json +50 -0
  16. package/agent-skills/packs/hive-cli/SKILL.md +33 -35
  17. package/agent-skills/packs/hive-cli/evals/evals.json +1 -1
  18. package/agent-skills/packs/hive-cli/evals/triggers.json +50 -0
  19. package/agent-skills/packs/hive-defi-research/SKILL.md +105 -19
  20. package/agent-skills/packs/hive-defi-research/evals/evals.json +6 -3
  21. package/agent-skills/packs/hive-defi-research/evals/triggers.json +50 -0
  22. package/agent-skills/packs/hive-dex-pool-analysis/SKILL.md +106 -16
  23. package/agent-skills/packs/hive-dex-pool-analysis/evals/evals.json +5 -3
  24. package/agent-skills/packs/hive-dex-pool-analysis/evals/triggers.json +50 -0
  25. package/agent-skills/packs/hive-market-research/SKILL.md +130 -21
  26. package/agent-skills/packs/hive-market-research/evals/evals.json +15 -2
  27. package/agent-skills/packs/hive-market-research/evals/triggers.json +50 -0
  28. package/agent-skills/packs/hive-mcp/SKILL.md +98 -153
  29. package/agent-skills/packs/hive-mcp/evals/evals.json +4 -3
  30. package/agent-skills/packs/hive-mcp/evals/triggers.json +50 -0
  31. package/agent-skills/packs/hive-mcp/references/client-install-matrix.md +62 -35
  32. package/agent-skills/packs/hive-mcp/references/clients.md +154 -0
  33. package/agent-skills/packs/hive-network-infrastructure/SKILL.md +105 -20
  34. package/agent-skills/packs/hive-network-infrastructure/evals/evals.json +4 -2
  35. package/agent-skills/packs/hive-network-infrastructure/evals/triggers.json +50 -0
  36. package/agent-skills/packs/hive-nft-research/SKILL.md +105 -18
  37. package/agent-skills/packs/hive-nft-research/evals/evals.json +4 -2
  38. package/agent-skills/packs/hive-nft-research/evals/triggers.json +50 -0
  39. package/agent-skills/packs/hive-prediction-markets/SKILL.md +108 -21
  40. package/agent-skills/packs/hive-prediction-markets/evals/evals.json +4 -2
  41. package/agent-skills/packs/hive-prediction-markets/evals/triggers.json +50 -0
  42. package/agent-skills/packs/hive-query/SKILL.md +80 -33
  43. package/agent-skills/packs/hive-query/evals/evals.json +7 -5
  44. package/agent-skills/packs/hive-query/evals/triggers.json +50 -0
  45. package/agent-skills/packs/hive-query/references/root-mcp-workflow.md +39 -18
  46. package/agent-skills/packs/hive-security-risk/SKILL.md +110 -19
  47. package/agent-skills/packs/hive-security-risk/evals/evals.json +4 -2
  48. package/agent-skills/packs/hive-security-risk/evals/triggers.json +50 -0
  49. package/agent-skills/packs/hive-solana-analysis/SKILL.md +115 -19
  50. package/agent-skills/packs/hive-solana-analysis/evals/evals.json +4 -2
  51. package/agent-skills/packs/hive-solana-analysis/evals/triggers.json +50 -0
  52. package/agent-skills/packs/hive-stateful-monitoring/SKILL.md +120 -0
  53. package/agent-skills/packs/hive-stateful-monitoring/evals/evals.json +54 -0
  54. package/agent-skills/packs/hive-stateful-monitoring/evals/triggers.json +50 -0
  55. package/agent-skills/packs/hive-stateful-monitoring/references/b2b-subject-context.md +53 -0
  56. package/agent-skills/packs/hive-token-diligence/SKILL.md +119 -21
  57. package/agent-skills/packs/hive-token-diligence/evals/evals.json +6 -4
  58. package/agent-skills/packs/hive-token-diligence/evals/triggers.json +50 -0
  59. package/agent-skills/packs/hive-tool-discovery/SKILL.md +48 -19
  60. package/agent-skills/packs/hive-tool-discovery/evals/evals.json +17 -3
  61. package/agent-skills/packs/hive-tool-discovery/evals/triggers.json +50 -0
  62. package/agent-skills/packs/hive-tool-discovery/references/discovery-surfaces.md +31 -6
  63. package/agent-skills/packs/hive-wallet-investigation/SKILL.md +111 -18
  64. package/agent-skills/packs/hive-wallet-investigation/evals/evals.json +5 -3
  65. package/agent-skills/packs/hive-wallet-investigation/evals/triggers.json +50 -0
  66. package/agent-skills/references/agents-routing.md +19 -7
  67. package/agent-skills/scripts/validate-agent-skills-package.mjs +116 -18
  68. package/agent-skills/skills.sh.json +3 -2
  69. package/bin/hive-mcp.js +5 -5
  70. package/build/{alias-CZ3DEYHF.js → alias-BKAVOYQV.js} +2 -3
  71. package/build/{api-client-I23XLSHU.js → api-client-FTVDFW5V.js} +4 -4
  72. package/build/{auth-KKINNBXT.js → auth-EZFJ5RYB.js} +3 -4
  73. package/build/{browser-auth-EEFGRHWY.js → browser-auth-OJSUNFBI.js} +2 -3
  74. package/build/{cache-EGNMENNA.js → cache-TBDQ7QBU.js} +2 -3
  75. package/build/{chunk-V77LO4RO.js → chunk-6PC3HUAK.js} +10 -4
  76. package/build/{chunk-XYBEFFZ3.js → chunk-725R3KLJ.js} +26 -4
  77. package/build/{chunk-PGBVNMNZ.js → chunk-7GD2MFYI.js} +57 -7
  78. package/build/{chunk-IDZD2NVG.js → chunk-AEU43ACS.js} +33 -10
  79. package/build/chunk-EPF36Q3Z.js +71 -0
  80. package/build/chunk-I5Z6FZRL.js +178 -0
  81. package/build/{chunk-KBVPIZS4.js → chunk-ILVPOLA7.js} +12 -4
  82. package/build/{chunk-B6G222LS.js → chunk-L326MQZP.js} +22 -6
  83. package/build/{chunk-QNCI4DEB.js → chunk-M6REON2I.js} +35 -21
  84. package/build/chunk-N32UIHBU.js +125 -0
  85. package/build/{chunk-IZTN7WFH.js → chunk-Q7VBYLX7.js} +12 -3
  86. package/build/chunk-QDZ7MAVN.js +447 -0
  87. package/build/{chunk-KGYBTXIN.js → chunk-R6YZTFQL.js} +2 -1
  88. package/build/{chunk-DYJBTKNR.js → chunk-RU6QOFHH.js} +9 -10
  89. package/build/{chunk-RKICZ6DZ.js → chunk-RUHO24SX.js} +16 -10
  90. package/build/{chunk-MPIUUE3T.js → chunk-TNQ7GJ6Q.js} +0 -60
  91. package/build/{chunk-2X3U4DFK.js → chunk-W2QL7LYI.js} +43586 -21498
  92. package/build/chunk-ZXKFJQDE.js +20 -0
  93. package/build/cli.js +3342 -3410
  94. package/build/{completion-BELZL7ND.js → completion-7KBW243H.js} +4 -5
  95. package/build/{config-TDX4VUGW.js → config-KAEUX6RM.js} +23 -4
  96. package/build/{config-dir-V43W2WIA.js → config-dir-5IH7MOOT.js} +2 -3
  97. package/build/{doctor-5K5UWHNX.js → doctor-ORDOCGLM.js} +34 -10
  98. package/build/{errors-E6MVUBNA.js → errors-HGHUF575.js} +2 -3
  99. package/build/{format-TSFSI2K7.js → format-H7FOQSYY.js} +1 -2
  100. package/build/{init-YQ5NBICF.js → init-UCTCUYFA.js} +52 -9
  101. package/build/init-all-BVWW3JVK.js +408 -0
  102. package/build/mcpServer-RUEOTTF7.js +34 -0
  103. package/build/monitor-worker.js +1396 -0
  104. package/build/{namespace-PVHBFDW2.js → namespace-L5DGCY7K.js} +2 -3
  105. package/build/{open-YUIJP37F.js → open-V2RNA3QT.js} +2 -3
  106. package/build/{output-IYJBFCYK.js → output-ITGLBKIG.js} +2 -3
  107. package/build/release.json +8 -0
  108. package/build/{serve-KWNJK6EY.js → serve-DKLR2WQH.js} +9 -4
  109. package/build/server.js +5399 -2945
  110. package/build/{setup-YTUKMPNP.js → setup-PTYFMTK5.js} +60 -56
  111. package/build/stdio.js +10 -8
  112. package/build/{telemetry-5IPRKZBL.js → telemetry-HPLDYR7U.js} +5 -4
  113. package/build/{tools-PJHWFCAG.js → tools-I7GLWTV6.js} +15 -15
  114. package/build/{uninstall-HWXEIP6K.js → uninstall-SAOIPL6K.js} +19 -11
  115. package/build/update-check-IEXPOYYR.js +18 -0
  116. package/build/upgrade-J4HIGCKE.js +171 -0
  117. package/build/version-Z4HJL4VV.js +16 -0
  118. package/build/{watch-KZ5EDZK3.js → watch-WVR4CGCD.js} +8 -7
  119. package/package.json +82 -41
  120. package/agent-skills/packs/hive-defi-research/references/workflow.md +0 -41
  121. package/agent-skills/packs/hive-dex-pool-analysis/references/workflow.md +0 -42
  122. package/agent-skills/packs/hive-market-research/references/workflow.md +0 -47
  123. package/agent-skills/packs/hive-network-infrastructure/references/workflow.md +0 -41
  124. package/agent-skills/packs/hive-nft-research/references/workflow.md +0 -42
  125. package/agent-skills/packs/hive-prediction-markets/references/workflow.md +0 -42
  126. package/agent-skills/packs/hive-security-risk/references/workflow.md +0 -46
  127. package/agent-skills/packs/hive-solana-analysis/references/workflow.md +0 -42
  128. package/agent-skills/packs/hive-token-diligence/references/workflow.md +0 -45
  129. package/agent-skills/packs/hive-wallet-investigation/references/workflow.md +0 -45
  130. package/build/alias-CZ3DEYHF.js.map +0 -1
  131. package/build/api-client-I23XLSHU.js.map +0 -1
  132. package/build/auth-KKINNBXT.js.map +0 -1
  133. package/build/browser-auth-EEFGRHWY.js.map +0 -1
  134. package/build/cache-EGNMENNA.js.map +0 -1
  135. package/build/chunk-2MYMHMBF.js +0 -340
  136. package/build/chunk-2MYMHMBF.js.map +0 -1
  137. package/build/chunk-2X3U4DFK.js.map +0 -1
  138. package/build/chunk-B6G222LS.js.map +0 -1
  139. package/build/chunk-DYJBTKNR.js.map +0 -1
  140. package/build/chunk-IDZD2NVG.js.map +0 -1
  141. package/build/chunk-IZTN7WFH.js.map +0 -1
  142. package/build/chunk-KBVPIZS4.js.map +0 -1
  143. package/build/chunk-KGYBTXIN.js.map +0 -1
  144. package/build/chunk-MPIUUE3T.js.map +0 -1
  145. package/build/chunk-PGBVNMNZ.js.map +0 -1
  146. package/build/chunk-QNCI4DEB.js.map +0 -1
  147. package/build/chunk-RKICZ6DZ.js.map +0 -1
  148. package/build/chunk-UKHZIVDT.js +0 -44
  149. package/build/chunk-UKHZIVDT.js.map +0 -1
  150. package/build/chunk-V77LO4RO.js.map +0 -1
  151. package/build/chunk-XYBEFFZ3.js.map +0 -1
  152. package/build/cli.js.map +0 -1
  153. package/build/completion-BELZL7ND.js.map +0 -1
  154. package/build/config-TDX4VUGW.js.map +0 -1
  155. package/build/config-dir-V43W2WIA.js.map +0 -1
  156. package/build/doctor-5K5UWHNX.js.map +0 -1
  157. package/build/errors-E6MVUBNA.js.map +0 -1
  158. package/build/format-TSFSI2K7.js.map +0 -1
  159. package/build/init-YQ5NBICF.js.map +0 -1
  160. package/build/init-all-6OWEQALB.js +0 -274
  161. package/build/init-all-6OWEQALB.js.map +0 -1
  162. package/build/mcpServer-AEX3RQ4U.js +0 -20
  163. package/build/mcpServer-AEX3RQ4U.js.map +0 -1
  164. package/build/namespace-PVHBFDW2.js.map +0 -1
  165. package/build/open-YUIJP37F.js.map +0 -1
  166. package/build/output-IYJBFCYK.js.map +0 -1
  167. package/build/serve-KWNJK6EY.js.map +0 -1
  168. package/build/server.js.map +0 -1
  169. package/build/setup-YTUKMPNP.js.map +0 -1
  170. package/build/stdio.js.map +0 -1
  171. package/build/telemetry-5IPRKZBL.js.map +0 -1
  172. package/build/tools-PJHWFCAG.js.map +0 -1
  173. package/build/uninstall-HWXEIP6K.js.map +0 -1
  174. package/build/watch-KZ5EDZK3.js.map +0 -1
@@ -1,31 +1,24 @@
1
1
  import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
- import {
3
- resolveApiKey
4
- } from "./chunk-V77LO4RO.js";
5
- import "./chunk-KBVPIZS4.js";
2
+ import "./chunk-ILVPOLA7.js";
6
3
 
7
4
  // src/cli/setup.ts
8
5
  import { createInterface } from "readline";
9
6
  var CLIENTS = [
10
7
  { name: "Claude Desktop", value: "claude-desktop" },
11
8
  { name: "Claude Code", value: "claude-code" },
9
+ { name: "OpenAI Codex", value: "codex" },
12
10
  { name: "Cursor", value: "cursor" },
13
- { name: "VS Code", value: "vscode" }
11
+ { name: "VS Code", value: "vscode" },
12
+ { name: "Grok", value: "grok" }
14
13
  ];
15
14
  async function runSetup(client) {
16
- const apiKey = resolveApiKey();
17
- if (!apiKey) {
18
- process.stderr.write("\nNo API key found. Let's log in first.\n");
19
- const { runLogin } = await import("./auth-KKINNBXT.js");
20
- await runLogin({ manual: false });
21
- }
22
15
  let selectedClient;
23
16
  if (client && CLIENTS.some((c) => c.value === client)) {
24
17
  selectedClient = client;
25
18
  } else {
26
19
  if (!process.stdin.isTTY) {
27
20
  process.stderr.write(
28
- "Error: specify a client (claude-desktop, claude-code, cursor, vscode)\n"
21
+ "Error: specify a client (claude-desktop, claude-code, codex, cursor, vscode, grok)\n"
29
22
  );
30
23
  process.exit(1);
31
24
  }
@@ -39,7 +32,8 @@ async function runSetup(client) {
39
32
  output: process.stderr
40
33
  });
41
34
  const answer = await new Promise(
42
- (resolve) => rl.question("\nChoice (1-4): ", resolve)
35
+ (resolve) => rl.question(`
36
+ Choice (1-${CLIENTS.length}): `, resolve)
43
37
  );
44
38
  rl.close();
45
39
  const idx = parseInt(answer.trim(), 10) - 1;
@@ -50,82 +44,93 @@ async function runSetup(client) {
50
44
  selectedClient = CLIENTS[idx].value;
51
45
  }
52
46
  const {
53
- writeClaudeDesktopConfig,
47
+ configClaudeDesktop,
48
+ getCodexInstructions,
49
+ getGrokInstructions,
50
+ getVscodeInstructions,
51
+ writeCodexConfig,
54
52
  writeCursorConfig,
55
53
  writeVscodeConfig,
56
54
  writeClaudeCodeConfig
57
- } = await import("./config-TDX4VUGW.js");
55
+ } = await import("./config-KAEUX6RM.js");
58
56
  switch (selectedClient) {
59
57
  case "claude-desktop": {
60
- const result = writeClaudeDesktopConfig();
61
- if (result.written) {
62
- process.stderr.write(`
63
- Config written to ${result.path}
64
- `);
65
- process.stderr.write(` Restart Claude Desktop to connect.
66
-
67
- `);
68
- } else {
69
- process.stderr.write(
70
- `
71
- No API key available. Run 'hive auth login' first.
72
- `
73
- );
74
- }
58
+ configClaudeDesktop();
75
59
  break;
76
60
  }
77
61
  case "cursor": {
78
62
  const result = writeCursorConfig();
79
- if (result.written) {
80
- process.stderr.write(`
63
+ process.stderr.write(`
81
64
  Config written to ${result.path}
82
65
  `);
83
- process.stderr.write(` Restart Cursor to connect.
66
+ process.stderr.write(` Restart Cursor and complete browser sign-in.
84
67
 
85
68
  `);
86
- } else {
87
- process.stderr.write(
88
- `
89
- No API key available. Run 'hive auth login' first.
90
- `
91
- );
92
- }
93
69
  break;
94
70
  }
95
71
  case "vscode": {
96
72
  const result = writeVscodeConfig();
97
73
  if (result.written) {
98
- process.stderr.write(`
99
- Config written to ${result.path}
100
- `);
101
- process.stderr.write(` Reload VS Code to connect.
102
-
103
- `);
74
+ process.stderr.write(
75
+ `
76
+ Installed in ${result.path} using code --add-mcp.
77
+ `
78
+ );
79
+ process.stderr.write(
80
+ " Open VS Code, review Hive, and complete browser sign-in.\n\n"
81
+ );
104
82
  } else {
105
83
  process.stderr.write(
106
84
  `
107
- No API key available. Run 'hive auth login' first.
85
+ VS Code CLI install did not complete: ${result.error}
108
86
  `
109
87
  );
88
+ for (const step of getVscodeInstructions().steps) {
89
+ process.stderr.write(` - ${step}
90
+ `);
91
+ }
92
+ process.stderr.write("\n");
110
93
  }
111
94
  break;
112
95
  }
113
96
  case "claude-code": {
114
- const currentKey = resolveApiKey();
115
- if (!currentKey) {
97
+ const result = writeClaudeCodeConfig();
98
+ process.stderr.write(`
99
+ Run this command:
100
+ ${result.command}
101
+ `);
102
+ process.stderr.write(" Then complete browser sign-in.\n\n");
103
+ break;
104
+ }
105
+ case "codex": {
106
+ const result = writeCodexConfig();
107
+ if (result.written && result.authenticated) {
116
108
  process.stderr.write(
117
109
  `
118
- No API key available. Run 'hive auth login' first.
110
+ Hive installed in ${result.path}; Codex OAuth completed.
111
+
119
112
  `
120
113
  );
121
114
  } else {
122
- const result = writeClaudeCodeConfig();
123
- process.stderr.write(`
124
- Run this command:
125
- ${result.command}
126
-
115
+ process.stderr.write(
116
+ `
117
+ Codex setup did not complete: ${result.error || "unknown error"}
118
+ `
119
+ );
120
+ for (const step of getCodexInstructions().steps) {
121
+ process.stderr.write(` - ${step}
122
+ `);
123
+ }
124
+ process.stderr.write("\n");
125
+ }
126
+ break;
127
+ }
128
+ case "grok": {
129
+ for (const step of getGrokInstructions().steps) {
130
+ process.stderr.write(` - ${step}
127
131
  `);
128
132
  }
133
+ process.stderr.write("\n");
129
134
  break;
130
135
  }
131
136
  }
@@ -133,4 +138,3 @@ async function runSetup(client) {
133
138
  export {
134
139
  runSetup
135
140
  };
136
- //# sourceMappingURL=setup-YTUKMPNP.js.map
package/build/stdio.js CHANGED
@@ -2,16 +2,19 @@
2
2
  import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
3
3
  import {
4
4
  checkForUpdates
5
- } from "./chunk-QNCI4DEB.js";
5
+ } from "./chunk-M6REON2I.js";
6
6
  import {
7
- SERVER_NAME,
8
- SERVER_VERSION,
9
7
  createHiveMcpServer,
10
8
  secureLogger
11
- } from "./chunk-2X3U4DFK.js";
12
- import "./chunk-B6G222LS.js";
13
- import "./chunk-V77LO4RO.js";
14
- import "./chunk-KBVPIZS4.js";
9
+ } from "./chunk-W2QL7LYI.js";
10
+ import "./chunk-L326MQZP.js";
11
+ import "./chunk-EPF36Q3Z.js";
12
+ import {
13
+ SERVER_NAME,
14
+ SERVER_VERSION
15
+ } from "./chunk-ZXKFJQDE.js";
16
+ import "./chunk-6PC3HUAK.js";
17
+ import "./chunk-ILVPOLA7.js";
15
18
 
16
19
  // src/stdio.ts
17
20
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
@@ -28,4 +31,3 @@ main().catch((error) => {
28
31
  secureLogger.error("Failed to start Hive MCP stdio server", error);
29
32
  process.exit(1);
30
33
  });
31
- //# sourceMappingURL=stdio.js.map
@@ -5,9 +5,11 @@ import {
5
5
  isTelemetryEnabled,
6
6
  telemetryStatus,
7
7
  trackCommand
8
- } from "./chunk-DYJBTKNR.js";
9
- import "./chunk-V77LO4RO.js";
10
- import "./chunk-KBVPIZS4.js";
8
+ } from "./chunk-RU6QOFHH.js";
9
+ import "./chunk-EPF36Q3Z.js";
10
+ import "./chunk-ZXKFJQDE.js";
11
+ import "./chunk-6PC3HUAK.js";
12
+ import "./chunk-ILVPOLA7.js";
11
13
  export {
12
14
  disableTelemetry,
13
15
  enableTelemetry,
@@ -15,4 +17,3 @@ export {
15
17
  telemetryStatus,
16
18
  trackCommand
17
19
  };
18
- //# sourceMappingURL=telemetry-5IPRKZBL.js.map
@@ -1,26 +1,27 @@
1
1
  import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
2
  import {
3
3
  fetchToolCatalog
4
- } from "./chunk-IZTN7WFH.js";
4
+ } from "./chunk-Q7VBYLX7.js";
5
+ import "./chunk-ZXKFJQDE.js";
5
6
  import {
6
7
  info,
7
8
  shouldOutputJson,
8
9
  successEnvelope,
9
10
  writeOutput
10
- } from "./chunk-XYBEFFZ3.js";
11
- import "./chunk-V77LO4RO.js";
12
- import "./chunk-KBVPIZS4.js";
11
+ } from "./chunk-725R3KLJ.js";
12
+ import "./chunk-6PC3HUAK.js";
13
+ import "./chunk-ILVPOLA7.js";
13
14
 
14
15
  // src/cli/tools.ts
15
16
  async function loadToolCatalog() {
16
- const { getCachedTools, setCachedTools } = await import("./cache-EGNMENNA.js");
17
+ const { getCachedTools, setCachedTools } = await import("./cache-TBDQ7QBU.js");
17
18
  const cached = getCachedTools();
18
19
  if (cached) return cached;
19
20
  const response = await fetchToolCatalog();
20
21
  if (!response.ok) {
21
22
  const msg = response.error && typeof response.error === "object" && "message" in response.error ? String(response.error.message) : "Failed to fetch tool catalog";
22
- const { CliError } = await import("./errors-E6MVUBNA.js");
23
- const { outputError } = await import("./output-IYJBFCYK.js");
23
+ const { CliError } = await import("./errors-HGHUF575.js");
24
+ const { outputError } = await import("./output-ITGLBKIG.js");
24
25
  await outputError(
25
26
  new CliError("API_ERROR", msg, "Check: hive doctor"),
26
27
  {}
@@ -39,7 +40,7 @@ async function listTools(opts) {
39
40
  tools = tools.filter((t) => t.name.toLowerCase().startsWith(prefix + "_"));
40
41
  }
41
42
  if (opts.category) {
42
- const { NAMESPACE } = await import("./namespace-PVHBFDW2.js");
43
+ const { NAMESPACE } = await import("./namespace-L5DGCY7K.js");
43
44
  const cat = opts.category.toLowerCase();
44
45
  const ns = NAMESPACE.find(
45
46
  (d) => d.name === cat || d.description.toLowerCase().includes(cat)
@@ -73,7 +74,7 @@ async function listTools(opts) {
73
74
  await writeOutput(successEnvelope(data, {}));
74
75
  return;
75
76
  }
76
- const { table } = await import("./format-TSFSI2K7.js");
77
+ const { table } = await import("./format-H7FOQSYY.js");
77
78
  const rangeStart = totalFiltered === 0 ? 0 : offset + 1;
78
79
  const rangeEnd = offset + items.length;
79
80
  info(`
@@ -102,7 +103,7 @@ async function searchTools(query) {
102
103
  await writeOutput(successEnvelope(data, {}));
103
104
  return;
104
105
  }
105
- const { table } = await import("./format-TSFSI2K7.js");
106
+ const { table } = await import("./format-H7FOQSYY.js");
106
107
  info(`
107
108
  ${matches.length} matches for "${query}"
108
109
  `);
@@ -121,8 +122,8 @@ async function toolInfo(name) {
121
122
  const allTools = await loadToolCatalog();
122
123
  const tool = allTools.find((t2) => t2.name === name);
123
124
  if (!tool) {
124
- const { CliError, suggestSimilarTools } = await import("./errors-E6MVUBNA.js");
125
- const { outputError } = await import("./output-IYJBFCYK.js");
125
+ const { CliError, suggestSimilarTools } = await import("./errors-HGHUF575.js");
126
+ const { outputError } = await import("./output-ITGLBKIG.js");
126
127
  const similar = suggestSimilarTools(
127
128
  name,
128
129
  allTools.map((t2) => t2.name)
@@ -161,8 +162,8 @@ ${t.description}
161
162
  }
162
163
  }
163
164
  async function refreshTools() {
164
- const { clearCache } = await import("./cache-EGNMENNA.js");
165
- const { info: printInfo } = await import("./output-IYJBFCYK.js");
165
+ const { clearCache } = await import("./cache-TBDQ7QBU.js");
166
+ const { info: printInfo } = await import("./output-ITGLBKIG.js");
166
167
  clearCache();
167
168
  printInfo("Cache cleared. Fetching fresh tool catalog...\n");
168
169
  const tools = await loadToolCatalog();
@@ -175,4 +176,3 @@ export {
175
176
  searchTools,
176
177
  toolInfo
177
178
  };
178
- //# sourceMappingURL=tools-PJHWFCAG.js.map
@@ -2,24 +2,25 @@ import { createRequire } from 'node:module'; const require = createRequire(impor
2
2
  import {
3
3
  detectClients,
4
4
  removeSkillsForClients
5
- } from "./chunk-IDZD2NVG.js";
5
+ } from "./chunk-AEU43ACS.js";
6
6
  import {
7
7
  removeClaudeCodeUserConfig,
8
8
  removeClaudeDesktopConfig,
9
+ removeCodexConfig,
9
10
  removeCursorConfig,
10
11
  removeGeminiCliConfig,
11
12
  removeVscodeConfig,
12
13
  removeWindsurfConfig
13
- } from "./chunk-2MYMHMBF.js";
14
- import "./chunk-B6G222LS.js";
14
+ } from "./chunk-QDZ7MAVN.js";
15
+ import "./chunk-L326MQZP.js";
15
16
  import {
16
17
  bold,
17
18
  dim,
18
19
  green,
19
20
  yellow
20
- } from "./chunk-XYBEFFZ3.js";
21
- import "./chunk-V77LO4RO.js";
22
- import "./chunk-KBVPIZS4.js";
21
+ } from "./chunk-725R3KLJ.js";
22
+ import "./chunk-6PC3HUAK.js";
23
+ import "./chunk-ILVPOLA7.js";
23
24
 
24
25
  // src/cli/uninstall.ts
25
26
  function w(line) {
@@ -37,6 +38,7 @@ function warn(line) {
37
38
  var REMOVERS = {
38
39
  "claude-code": removeClaudeCodeUserConfig,
39
40
  "claude-desktop": removeClaudeDesktopConfig,
41
+ codex: removeCodexConfig,
40
42
  cursor: removeCursorConfig,
41
43
  vscode: removeVscodeConfig,
42
44
  windsurf: removeWindsurfConfig,
@@ -56,8 +58,10 @@ async function runUninstall(opts = {}) {
56
58
  if (!opts.json) w(bold("\nRemoving from client configs"));
57
59
  const clientIds = [];
58
60
  for (const c of clients) {
59
- if (c.id === "chatgpt-desktop") {
60
- info("ChatGPT Desktop \u2014 remove manually via Settings \u2192 Connectors");
61
+ if (c.id === "chatgpt-desktop" || c.id === "grok") {
62
+ info(
63
+ c.id === "grok" ? "Grok \u2014 remove Hive once at grok.com/connectors" : "OpenAI / ChatGPT apps \u2014 remove the Hive app connector manually"
64
+ );
61
65
  continue;
62
66
  }
63
67
  if (summary.dryRun) {
@@ -72,10 +76,15 @@ async function runUninstall(opts = {}) {
72
76
  summary.cleaned.push({
73
77
  client: c.id,
74
78
  path: result.path,
75
- removed: result.removed
79
+ removed: result.removed,
80
+ ...result.manual && { manual: true },
81
+ ...result.instructions && { instructions: result.instructions }
76
82
  });
77
83
  if (result.removed) ok(`${c.name} ${dim("(" + result.path + ")")}`);
78
- else info(`${c.name} \u2014 no Hive entry to remove`);
84
+ else if (!result.manual) info(`${c.name} \u2014 no Hive entry to remove`);
85
+ if (result.manual && result.instructions) {
86
+ warn(`${c.name} \u2014 finish in the app: ${result.instructions}`);
87
+ }
79
88
  clientIds.push(c.id);
80
89
  } catch (err) {
81
90
  warn(
@@ -112,4 +121,3 @@ async function runUninstall(opts = {}) {
112
121
  export {
113
122
  runUninstall
114
123
  };
115
- //# sourceMappingURL=uninstall-HWXEIP6K.js.map
@@ -0,0 +1,18 @@
1
+ import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ checkForUpdates,
4
+ fetchLatestVersion,
5
+ getPendingUpdateVersion,
6
+ isNewerVersion,
7
+ shouldSkipUpdateCheck
8
+ } from "./chunk-M6REON2I.js";
9
+ import "./chunk-ZXKFJQDE.js";
10
+ import "./chunk-6PC3HUAK.js";
11
+ import "./chunk-ILVPOLA7.js";
12
+ export {
13
+ checkForUpdates,
14
+ fetchLatestVersion,
15
+ getPendingUpdateVersion,
16
+ isNewerVersion,
17
+ shouldSkipUpdateCheck
18
+ };
@@ -0,0 +1,171 @@
1
+ import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ fetchLatestVersion,
4
+ isNewerVersion
5
+ } from "./chunk-M6REON2I.js";
6
+ import {
7
+ REGISTRY_PACKAGE,
8
+ SERVER_VERSION
9
+ } from "./chunk-ZXKFJQDE.js";
10
+ import {
11
+ info,
12
+ shouldOutputJson,
13
+ successEnvelope,
14
+ writeOutput
15
+ } from "./chunk-725R3KLJ.js";
16
+ import "./chunk-6PC3HUAK.js";
17
+ import "./chunk-ILVPOLA7.js";
18
+
19
+ // src/cli/upgrade.ts
20
+ import { spawnSync } from "child_process";
21
+ import { readdirSync, rmSync, existsSync } from "fs";
22
+ import { join } from "path";
23
+ import { homedir } from "os";
24
+ import { fileURLToPath } from "url";
25
+ function detectInstallMode(execPath, cwd = process.cwd()) {
26
+ const p = execPath.replace(/\\/g, "/");
27
+ if (p.includes("/_npx/")) return "npx";
28
+ if (p.includes("/lib/node_modules/")) return "global";
29
+ const c = cwd.replace(/\\/g, "/");
30
+ if (p.includes("/node_modules/") && !p.startsWith(c)) return "global";
31
+ return "local";
32
+ }
33
+ function resolveExecPath() {
34
+ try {
35
+ return fileURLToPath(import.meta.url);
36
+ } catch {
37
+ return process.argv[1] ?? "";
38
+ }
39
+ }
40
+ function npxCacheDir() {
41
+ const base = process.env.npm_config_cache || join(homedir(), ".npm");
42
+ return join(base, "_npx");
43
+ }
44
+ function bustNpxCache() {
45
+ const dir = npxCacheDir();
46
+ if (!existsSync(dir)) return 0;
47
+ let cleared = 0;
48
+ let entries = [];
49
+ try {
50
+ entries = readdirSync(dir);
51
+ } catch {
52
+ return 0;
53
+ }
54
+ for (const entry of entries) {
55
+ const pkgPath = join(dir, entry, "node_modules", REGISTRY_PACKAGE);
56
+ if (existsSync(pkgPath)) {
57
+ try {
58
+ rmSync(join(dir, entry), { recursive: true, force: true });
59
+ cleared++;
60
+ } catch {
61
+ }
62
+ }
63
+ }
64
+ return cleared;
65
+ }
66
+ function updateGlobal() {
67
+ const result = spawnSync(
68
+ "npm",
69
+ ["install", "-g", `${REGISTRY_PACKAGE}@latest`],
70
+ { stdio: shouldOutputJson() ? "ignore" : "inherit" }
71
+ );
72
+ return result.status === 0;
73
+ }
74
+ async function runUpgrade() {
75
+ const mode = detectInstallMode(resolveExecPath());
76
+ const latest = await fetchLatestVersion(8e3);
77
+ const actions = [];
78
+ if (latest === null) {
79
+ if (shouldOutputJson()) {
80
+ await writeOutput(
81
+ successEnvelope(
82
+ {
83
+ current: SERVER_VERSION,
84
+ latest: null,
85
+ updateAvailable: false,
86
+ mode,
87
+ actions,
88
+ note: "Could not reach the npm registry to check for updates."
89
+ },
90
+ {}
91
+ )
92
+ );
93
+ return;
94
+ }
95
+ info(
96
+ "Could not reach the npm registry to check for updates. Try again later.\n"
97
+ );
98
+ return;
99
+ }
100
+ const updateAvailable = isNewerVersion(latest, SERVER_VERSION);
101
+ if (!updateAvailable) {
102
+ if (shouldOutputJson()) {
103
+ await writeOutput(
104
+ successEnvelope(
105
+ {
106
+ current: SERVER_VERSION,
107
+ latest,
108
+ updateAvailable: false,
109
+ mode,
110
+ actions
111
+ },
112
+ {}
113
+ )
114
+ );
115
+ return;
116
+ }
117
+ info(`Hive is up to date (v${SERVER_VERSION}).
118
+ `);
119
+ return;
120
+ }
121
+ if (mode === "global") {
122
+ const ok = updateGlobal();
123
+ actions.push(ok ? "updated global install" : "global update failed");
124
+ }
125
+ const cleared = bustNpxCache();
126
+ if (cleared > 0)
127
+ actions.push(
128
+ `cleared ${cleared} npx cache entr${cleared === 1 ? "y" : "ies"}`
129
+ );
130
+ if (shouldOutputJson()) {
131
+ await writeOutput(
132
+ successEnvelope(
133
+ {
134
+ current: SERVER_VERSION,
135
+ latest,
136
+ updateAvailable: true,
137
+ mode,
138
+ actions
139
+ },
140
+ {}
141
+ )
142
+ );
143
+ return;
144
+ }
145
+ info(`
146
+ Update available: ${SERVER_VERSION} -> ${latest}
147
+ `);
148
+ if (mode === "global") {
149
+ info(
150
+ actions.includes("updated global install") ? `Updated global hive-intelligence to ${latest}.
151
+ ` : `Global update failed \u2014 run: npm install -g ${REGISTRY_PACKAGE}@latest
152
+ `
153
+ );
154
+ }
155
+ if (cleared > 0) {
156
+ info(`Cleared npx cache so the next run pulls ${latest}.
157
+ `);
158
+ }
159
+ if (mode === "local") {
160
+ info(
161
+ "Running from a local checkout \u2014 pull the latest source with git instead.\n"
162
+ );
163
+ }
164
+ info(
165
+ "Restart your MCP client (Claude, Cursor, VS Code) to load the new version.\n"
166
+ );
167
+ }
168
+ export {
169
+ detectInstallMode,
170
+ runUpgrade
171
+ };
@@ -0,0 +1,16 @@
1
+ import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ CLI_BINARY,
4
+ PUBLIC_MCP_REGISTRY_ID,
5
+ REGISTRY_PACKAGE,
6
+ SERVER_NAME,
7
+ SERVER_VERSION
8
+ } from "./chunk-ZXKFJQDE.js";
9
+ import "./chunk-ILVPOLA7.js";
10
+ export {
11
+ CLI_BINARY,
12
+ PUBLIC_MCP_REGISTRY_ID,
13
+ REGISTRY_PACKAGE,
14
+ SERVER_NAME,
15
+ SERVER_VERSION
16
+ };
@@ -1,12 +1,14 @@
1
1
  import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
2
2
  import {
3
3
  executeTool
4
- } from "./chunk-UKHZIVDT.js";
5
- import "./chunk-DYJBTKNR.js";
6
- import "./chunk-IZTN7WFH.js";
7
- import "./chunk-XYBEFFZ3.js";
8
- import "./chunk-V77LO4RO.js";
9
- import "./chunk-KBVPIZS4.js";
4
+ } from "./chunk-N32UIHBU.js";
5
+ import "./chunk-Q7VBYLX7.js";
6
+ import "./chunk-RU6QOFHH.js";
7
+ import "./chunk-EPF36Q3Z.js";
8
+ import "./chunk-ZXKFJQDE.js";
9
+ import "./chunk-725R3KLJ.js";
10
+ import "./chunk-6PC3HUAK.js";
11
+ import "./chunk-ILVPOLA7.js";
10
12
 
11
13
  // src/cli/watch.ts
12
14
  var MAX_CONSECUTIVE_FAILURES = 10;
@@ -64,4 +66,3 @@ Aborting watch: ${MAX_CONSECUTIVE_FAILURES} consecutive failures.
64
66
  export {
65
67
  runWatch
66
68
  };
67
- //# sourceMappingURL=watch-KZ5EDZK3.js.map