hive-intelligence 1.6.3 → 1.7.1
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.
- package/README.md +10 -4
- package/agent-skills/.claude-plugin/plugin.json +10 -0
- package/agent-skills/README.md +2 -0
- package/agent-skills/SKILL.md +18 -6
- package/agent-skills/evals/trigger-queries.json +70 -0
- package/agent-skills/package.json +3 -1
- package/agent-skills/packs/hive/SKILL.md +382 -0
- package/agent-skills/packs/hive/evals/evals.json +50 -0
- package/agent-skills/packs/hive/evals/triggers.json +15 -0
- package/agent-skills/packs/hive-build-onboarding/SKILL.md +1 -1
- package/agent-skills/packs/hive-cli/SKILL.md +2 -2
- package/agent-skills/packs/hive-mcp/SKILL.md +9 -5
- package/agent-skills/packs/hive-prediction-markets/SKILL.md +145 -0
- package/agent-skills/packs/hive-prediction-markets/evals/evals.json +29 -0
- package/agent-skills/packs/hive-prediction-markets/evals/triggers.json +14 -0
- package/agent-skills/packs/hive-query/SKILL.md +2 -1
- package/agent-skills/packs/hive-stateful-monitoring/SKILL.md +3 -3
- package/agent-skills/references/agents-routing.md +4 -1
- package/agent-skills/scripts/validate-agent-skills-package.mjs +2 -0
- package/agent-skills/skills.sh.json +9 -1
- package/build/{api-client-6AM3HVHQ.js → api-client-UGNFUZ2L.js} +12 -3
- package/build/{auth-4LPSQJXD.js → auth-5TLYP2DC.js} +1 -1
- package/build/call-args-NVOYX6DL.js +27 -0
- package/build/{chunk-XZJICKAL.js → chunk-2C5FBG7B.js} +4 -3
- package/build/{chunk-IJ5KOZH5.js → chunk-3SQPLZW6.js} +42730 -39105
- package/build/{chunk-S4HBVZ7O.js → chunk-3Z5VR53Z.js} +36 -7
- package/build/{chunk-GADPH72D.js → chunk-4QDGA6GP.js} +52 -1
- package/build/{chunk-2SPCKQBJ.js → chunk-5QAXJON7.js} +71 -0
- package/build/{chunk-GYVF75XB.js → chunk-FQNW6SZ6.js} +1 -1
- package/build/{chunk-LW2DHE32.js → chunk-L4KVJDA7.js} +1 -1
- package/build/chunk-POPAEM4E.js +474 -0
- package/build/{chunk-P7NLFSZQ.js → chunk-TWYGJEVN.js} +100 -9
- package/build/{chunk-32NRUWXA.js → chunk-UPWYFTTJ.js} +3 -3
- package/build/{chunk-KUF754NT.js → chunk-WII7MTYZ.js} +52 -12
- package/build/chunk-XN3T6YOG.js +32 -0
- package/build/chunk-XT6RURQV.js +394 -0
- package/build/{chunk-LP5ECG7A.js → chunk-ZDXMZPC6.js} +26 -2
- package/build/cli.js +120 -48
- package/build/{completion-YVSWWF6D.js → completion-ROZAH667.js} +1 -1
- package/build/{doctor-YBCU5FLQ.js → doctor-44WSVNGJ.js} +42 -5
- package/build/{errors-EL6UMXNJ.js → errors-W3GXQN34.js} +7 -1
- package/build/feedback-FRRLZDAF.js +113 -0
- package/build/{init-all-54G3CVZA.js → init-all-LYRFE2YQ.js} +5 -5
- package/build/{mcpServer-V4XUSCX7.js → mcpServer-43LTLURB.js} +2 -2
- package/build/monitor-worker.js +62 -10
- package/build/{namespace-PA2IDNRT.js → namespace-XMFFW47T.js} +1 -1
- package/build/{output-XGTE4EWJ.js → output-BBHBJI32.js} +5 -1
- package/build/release.json +4 -4
- package/build/routing-CP43PP5F.js +43 -0
- package/build/{serve-SU67DIY3.js → serve-LTMDRKXS.js} +1 -1
- package/build/server.js +295 -41
- package/build/stdio.js +2 -2
- package/build/{tools-FNPMELSU.js → tools-VA7JXD3K.js} +81 -33
- package/build/{uninstall-P3JJZCXT.js → uninstall-3KJLHTNM.js} +26 -7
- package/build/{upgrade-ATIFZANV.js → upgrade-3NR3LAGU.js} +2 -2
- package/build/{watch-FG2C5Y2Z.js → watch-HJOTI32P.js} +5 -3
- package/package.json +1 -1
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
fetchToolCatalog
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TWYGJEVN.js";
|
|
5
|
+
import {
|
|
6
|
+
canonicalParamName,
|
|
7
|
+
describeParameters
|
|
8
|
+
} from "./chunk-XT6RURQV.js";
|
|
9
|
+
import "./chunk-3Z5VR53Z.js";
|
|
5
10
|
import "./chunk-ZXKFJQDE.js";
|
|
6
11
|
import {
|
|
7
12
|
info,
|
|
8
13
|
shouldOutputJson,
|
|
9
14
|
successEnvelope,
|
|
10
15
|
writeOutput
|
|
11
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-ZDXMZPC6.js";
|
|
12
17
|
import "./chunk-6PC3HUAK.js";
|
|
13
18
|
import "./chunk-OMO7XLC5.js";
|
|
14
19
|
|
|
@@ -20,12 +25,9 @@ async function loadToolCatalog() {
|
|
|
20
25
|
const response = await fetchToolCatalog();
|
|
21
26
|
if (!response.ok) {
|
|
22
27
|
const msg = response.error && typeof response.error === "object" && "message" in response.error ? String(response.error.message) : "Failed to fetch tool catalog";
|
|
23
|
-
const { CliError } = await import("./errors-
|
|
24
|
-
const { outputError } = await import("./output-
|
|
25
|
-
await outputError(
|
|
26
|
-
new CliError("API_ERROR", msg, "Check: hive doctor"),
|
|
27
|
-
{}
|
|
28
|
-
);
|
|
28
|
+
const { CliError } = await import("./errors-W3GXQN34.js");
|
|
29
|
+
const { outputError } = await import("./output-BBHBJI32.js");
|
|
30
|
+
await outputError(new CliError("API_ERROR", msg, "Check: hive doctor"), {});
|
|
29
31
|
return [];
|
|
30
32
|
}
|
|
31
33
|
const data = response.data;
|
|
@@ -40,7 +42,7 @@ async function listTools(opts) {
|
|
|
40
42
|
tools = tools.filter((t) => t.name.toLowerCase().startsWith(prefix + "_"));
|
|
41
43
|
}
|
|
42
44
|
if (opts.category) {
|
|
43
|
-
const { NAMESPACE } = await import("./namespace-
|
|
45
|
+
const { NAMESPACE } = await import("./namespace-XMFFW47T.js");
|
|
44
46
|
const cat = opts.category.toLowerCase();
|
|
45
47
|
const ns = NAMESPACE.find(
|
|
46
48
|
(d) => d.name === cat || d.description.toLowerCase().includes(cat)
|
|
@@ -118,52 +120,96 @@ ${matches.length} matches for "${query}"
|
|
|
118
120
|
)
|
|
119
121
|
);
|
|
120
122
|
}
|
|
121
|
-
|
|
123
|
+
function renderToolInfo(tool, reservedNames, table) {
|
|
124
|
+
const lines = [];
|
|
125
|
+
const schema = tool.inputSchema;
|
|
126
|
+
const rows = describeParameters(schema);
|
|
127
|
+
lines.push("Parameters:");
|
|
128
|
+
if (rows.length === 0) {
|
|
129
|
+
lines.push(" no parameters");
|
|
130
|
+
} else {
|
|
131
|
+
lines.push(
|
|
132
|
+
table(
|
|
133
|
+
["Name", "Type", "Required", "Enum", "Default", "Description"],
|
|
134
|
+
rows.map((row) => [
|
|
135
|
+
row.name,
|
|
136
|
+
row.type,
|
|
137
|
+
row.required ? "yes" : "",
|
|
138
|
+
row.enumValues.join("|"),
|
|
139
|
+
row.defaultValue,
|
|
140
|
+
row.description
|
|
141
|
+
])
|
|
142
|
+
)
|
|
143
|
+
);
|
|
144
|
+
for (const row of rows) {
|
|
145
|
+
if (!row.nested) continue;
|
|
146
|
+
lines.push("");
|
|
147
|
+
lines.push(
|
|
148
|
+
`${row.name}: nested schema, pass it as JSON (--${row.name} '<json>' or --args):`
|
|
149
|
+
);
|
|
150
|
+
lines.push(JSON.stringify(row.nested, null, 2));
|
|
151
|
+
}
|
|
152
|
+
const reservedCanonical = new Set(
|
|
153
|
+
[...reservedNames].map(canonicalParamName)
|
|
154
|
+
);
|
|
155
|
+
const viaArgs = rows.map((row) => row.name).filter((n) => reservedCanonical.has(canonicalParamName(n)));
|
|
156
|
+
if (viaArgs.length > 0) {
|
|
157
|
+
lines.push("");
|
|
158
|
+
lines.push(
|
|
159
|
+
`Note: ${viaArgs.join(", ")} share a name with a CLI option; pass them through --args '<json>'.`
|
|
160
|
+
);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
lines.push("");
|
|
164
|
+
if (tool.outputSchema !== void 0 && tool.outputSchema !== null) {
|
|
165
|
+
lines.push("Response schema:");
|
|
166
|
+
lines.push(JSON.stringify(tool.outputSchema, null, 2));
|
|
167
|
+
} else {
|
|
168
|
+
lines.push("no response schema published");
|
|
169
|
+
}
|
|
170
|
+
return lines;
|
|
171
|
+
}
|
|
172
|
+
async function toolInfo(name, reservedNames = /* @__PURE__ */ new Set()) {
|
|
122
173
|
const allTools = await loadToolCatalog();
|
|
123
|
-
const tool = allTools.find((
|
|
174
|
+
const tool = allTools.find((t) => t.name === name);
|
|
124
175
|
if (!tool) {
|
|
125
|
-
const { CliError, suggestSimilarTools } = await import("./errors-
|
|
126
|
-
const { outputError } = await import("./output-
|
|
176
|
+
const { CliError, suggestSimilarTools } = await import("./errors-W3GXQN34.js");
|
|
177
|
+
const { outputError } = await import("./output-BBHBJI32.js");
|
|
127
178
|
const similar = suggestSimilarTools(
|
|
128
179
|
name,
|
|
129
|
-
allTools.map((
|
|
180
|
+
allTools.map((t) => t.name)
|
|
130
181
|
);
|
|
131
182
|
const suggestion = similar.length > 0 ? `Did you mean: ${similar.join(", ")}?` : `Run: hive tools search "${name}"`;
|
|
132
183
|
await outputError(
|
|
133
184
|
new CliError("TOOL_NOT_FOUND", `Tool "${name}" not found`, suggestion),
|
|
134
185
|
{ tool: name }
|
|
135
186
|
);
|
|
187
|
+
return;
|
|
136
188
|
}
|
|
137
|
-
const t = tool;
|
|
138
|
-
const data = {
|
|
139
|
-
name: t.name,
|
|
140
|
-
title: t.title,
|
|
141
|
-
provider: t.provider ?? null,
|
|
142
|
-
readOnly: t.annotations?.readOnlyHint ?? null,
|
|
143
|
-
description: t.description,
|
|
144
|
-
inputSchema: t.inputSchema
|
|
145
|
-
};
|
|
146
189
|
if (shouldOutputJson()) {
|
|
190
|
+
const data = {
|
|
191
|
+
...tool,
|
|
192
|
+
provider: tool.provider ?? null,
|
|
193
|
+
readOnly: tool.annotations?.readOnlyHint ?? null
|
|
194
|
+
};
|
|
147
195
|
await writeOutput(successEnvelope(data, { tool: name }));
|
|
148
196
|
return;
|
|
149
197
|
}
|
|
198
|
+
const { table } = await import("./format-O2WH35IA.js");
|
|
150
199
|
info(`
|
|
151
|
-
${
|
|
152
|
-
info(`Name: ${
|
|
153
|
-
if (
|
|
154
|
-
info(`Read-only: ${
|
|
200
|
+
${tool.title ?? tool.name}`);
|
|
201
|
+
info(`Name: ${tool.name}`);
|
|
202
|
+
if (tool.provider) info(`Provider: ${tool.provider}`);
|
|
203
|
+
info(`Read-only: ${tool.annotations?.readOnlyHint ?? "unknown"}`);
|
|
155
204
|
info(`
|
|
156
205
|
Description:
|
|
157
|
-
${
|
|
206
|
+
${tool.description}
|
|
158
207
|
`);
|
|
159
|
-
|
|
160
|
-
info("Input Schema:");
|
|
161
|
-
info(JSON.stringify(t.inputSchema, null, 2));
|
|
162
|
-
}
|
|
208
|
+
for (const line of renderToolInfo(tool, reservedNames, table)) info(line);
|
|
163
209
|
}
|
|
164
210
|
async function refreshTools() {
|
|
165
211
|
const { clearCache } = await import("./cache-IDP4TLKY.js");
|
|
166
|
-
const { info: printInfo } = await import("./output-
|
|
212
|
+
const { info: printInfo } = await import("./output-BBHBJI32.js");
|
|
167
213
|
clearCache();
|
|
168
214
|
printInfo("Cache cleared. Fetching fresh tool catalog...\n");
|
|
169
215
|
const tools = await loadToolCatalog();
|
|
@@ -172,7 +218,9 @@ async function refreshTools() {
|
|
|
172
218
|
}
|
|
173
219
|
export {
|
|
174
220
|
listTools,
|
|
221
|
+
loadToolCatalog,
|
|
175
222
|
refreshTools,
|
|
223
|
+
renderToolInfo,
|
|
176
224
|
searchTools,
|
|
177
225
|
toolInfo
|
|
178
226
|
};
|
|
@@ -2,7 +2,10 @@ import { createRequire } from 'node:module'; const require = createRequire(impor
|
|
|
2
2
|
import {
|
|
3
3
|
detectClients,
|
|
4
4
|
removeSkillsForClients
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-FQNW6SZ6.js";
|
|
6
|
+
import {
|
|
7
|
+
removeRecordedRoutingBlocks
|
|
8
|
+
} from "./chunk-POPAEM4E.js";
|
|
6
9
|
import {
|
|
7
10
|
removeClaudeCodeUserConfig,
|
|
8
11
|
removeClaudeDesktopConfig,
|
|
@@ -12,13 +15,14 @@ import {
|
|
|
12
15
|
removeVscodeConfig,
|
|
13
16
|
removeWindsurfConfig
|
|
14
17
|
} from "./chunk-QDZ7MAVN.js";
|
|
15
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-3Z5VR53Z.js";
|
|
19
|
+
import "./chunk-4QDGA6GP.js";
|
|
16
20
|
import {
|
|
17
21
|
bold,
|
|
18
22
|
dim,
|
|
19
23
|
green,
|
|
20
24
|
yellow
|
|
21
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-ZDXMZPC6.js";
|
|
22
26
|
import "./chunk-6PC3HUAK.js";
|
|
23
27
|
import "./chunk-OMO7XLC5.js";
|
|
24
28
|
|
|
@@ -48,6 +52,7 @@ async function runUninstall(opts = {}) {
|
|
|
48
52
|
const summary = {
|
|
49
53
|
cleaned: [],
|
|
50
54
|
skills: [],
|
|
55
|
+
routing: [],
|
|
51
56
|
dryRun: Boolean(opts.dryRun)
|
|
52
57
|
};
|
|
53
58
|
if (!opts.json) {
|
|
@@ -66,7 +71,11 @@ async function runUninstall(opts = {}) {
|
|
|
66
71
|
}
|
|
67
72
|
if (summary.dryRun) {
|
|
68
73
|
info(`Would clean ${c.configPath}`);
|
|
69
|
-
summary.cleaned.push({
|
|
74
|
+
summary.cleaned.push({
|
|
75
|
+
client: c.id,
|
|
76
|
+
path: c.configPath,
|
|
77
|
+
removed: false
|
|
78
|
+
});
|
|
70
79
|
clientIds.push(c.id);
|
|
71
80
|
continue;
|
|
72
81
|
}
|
|
@@ -87,9 +96,7 @@ async function runUninstall(opts = {}) {
|
|
|
87
96
|
}
|
|
88
97
|
clientIds.push(c.id);
|
|
89
98
|
} catch (err) {
|
|
90
|
-
warn(
|
|
91
|
-
`${c.name} failed: ${err instanceof Error ? err.message : err}`
|
|
92
|
-
);
|
|
99
|
+
warn(`${c.name} failed: ${err instanceof Error ? err.message : err}`);
|
|
93
100
|
}
|
|
94
101
|
}
|
|
95
102
|
if (!opts.json) w(bold("\nRemoving skill packs"));
|
|
@@ -105,6 +112,18 @@ async function runUninstall(opts = {}) {
|
|
|
105
112
|
}
|
|
106
113
|
}
|
|
107
114
|
}
|
|
115
|
+
if (!opts.json) w(bold("\nRemoving routing blocks"));
|
|
116
|
+
for (const r of removeRecordedRoutingBlocks({ dryRun: summary.dryRun })) {
|
|
117
|
+
const { content: _content, exitCode: _exitCode, ...rest } = r;
|
|
118
|
+
summary.routing.push(rest);
|
|
119
|
+
if (opts.json) continue;
|
|
120
|
+
if (r.status === "removed" || r.status === "dry-run") ok(r.message);
|
|
121
|
+
else if (r.status === "refused") warn(r.message);
|
|
122
|
+
else info(r.message);
|
|
123
|
+
}
|
|
124
|
+
if (!opts.json && summary.routing.length === 0) {
|
|
125
|
+
info("No routing blocks recorded");
|
|
126
|
+
}
|
|
108
127
|
if (opts.json) {
|
|
109
128
|
process.stdout.write(JSON.stringify(summary, null, 2) + "\n");
|
|
110
129
|
} else {
|
|
@@ -2,10 +2,10 @@ import { createRequire } from 'node:module'; const require = createRequire(impor
|
|
|
2
2
|
import {
|
|
3
3
|
detectInstallMode,
|
|
4
4
|
runUpgrade
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-L4KVJDA7.js";
|
|
6
6
|
import "./chunk-M6REON2I.js";
|
|
7
7
|
import "./chunk-ZXKFJQDE.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-ZDXMZPC6.js";
|
|
9
9
|
import "./chunk-6PC3HUAK.js";
|
|
10
10
|
import "./chunk-OMO7XLC5.js";
|
|
11
11
|
export {
|
|
@@ -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-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-WII7MTYZ.js";
|
|
5
|
+
import "./chunk-XN3T6YOG.js";
|
|
6
|
+
import "./chunk-TWYGJEVN.js";
|
|
6
7
|
import "./chunk-RU6QOFHH.js";
|
|
8
|
+
import "./chunk-3Z5VR53Z.js";
|
|
7
9
|
import "./chunk-EPF36Q3Z.js";
|
|
8
10
|
import "./chunk-ZXKFJQDE.js";
|
|
9
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-ZDXMZPC6.js";
|
|
10
12
|
import "./chunk-6PC3HUAK.js";
|
|
11
13
|
import "./chunk-OMO7XLC5.js";
|
|
12
14
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hive-intelligence",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.1",
|
|
4
4
|
"description": "Evidence-backed crypto due diligence for AI agents, with sources, freshness, and a runtime receipt on every call.",
|
|
5
5
|
"mcpName": "xyz.hiveintelligence/mcp",
|
|
6
6
|
"type": "module",
|