hive-intelligence 1.1.4 → 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 (130) hide show
  1. package/README.md +182 -73
  2. package/agent-skills/.claude-plugin/plugin.json +4 -4
  3. package/agent-skills/.mcp.json +1 -4
  4. package/agent-skills/README.md +16 -10
  5. package/agent-skills/SKILL.md +30 -12
  6. package/agent-skills/package.json +1 -1
  7. package/agent-skills/packs/hive-build/SKILL.md +47 -19
  8. package/agent-skills/packs/hive-build/evals/evals.json +16 -3
  9. package/agent-skills/packs/hive-build/evals/triggers.json +50 -0
  10. package/agent-skills/packs/hive-build-onboarding/SKILL.md +27 -34
  11. package/agent-skills/packs/hive-build-onboarding/evals/evals.json +1 -1
  12. package/agent-skills/packs/hive-build-onboarding/evals/triggers.json +50 -0
  13. package/agent-skills/packs/hive-cli/SKILL.md +33 -35
  14. package/agent-skills/packs/hive-cli/evals/evals.json +1 -1
  15. package/agent-skills/packs/hive-cli/evals/triggers.json +50 -0
  16. package/agent-skills/packs/hive-defi-research/SKILL.md +105 -19
  17. package/agent-skills/packs/hive-defi-research/evals/evals.json +6 -3
  18. package/agent-skills/packs/hive-defi-research/evals/triggers.json +50 -0
  19. package/agent-skills/packs/hive-dex-pool-analysis/SKILL.md +106 -16
  20. package/agent-skills/packs/hive-dex-pool-analysis/evals/evals.json +5 -3
  21. package/agent-skills/packs/hive-dex-pool-analysis/evals/triggers.json +50 -0
  22. package/agent-skills/packs/hive-market-research/SKILL.md +130 -21
  23. package/agent-skills/packs/hive-market-research/evals/evals.json +15 -2
  24. package/agent-skills/packs/hive-market-research/evals/triggers.json +50 -0
  25. package/agent-skills/packs/hive-mcp/SKILL.md +69 -47
  26. package/agent-skills/packs/hive-mcp/evals/evals.json +3 -2
  27. package/agent-skills/packs/hive-mcp/evals/triggers.json +50 -0
  28. package/agent-skills/packs/hive-mcp/references/client-install-matrix.md +62 -35
  29. package/agent-skills/packs/hive-mcp/references/clients.md +81 -68
  30. package/agent-skills/packs/hive-network-infrastructure/SKILL.md +105 -20
  31. package/agent-skills/packs/hive-network-infrastructure/evals/evals.json +4 -2
  32. package/agent-skills/packs/hive-network-infrastructure/evals/triggers.json +50 -0
  33. package/agent-skills/packs/hive-nft-research/SKILL.md +105 -18
  34. package/agent-skills/packs/hive-nft-research/evals/evals.json +4 -2
  35. package/agent-skills/packs/hive-nft-research/evals/triggers.json +50 -0
  36. package/agent-skills/packs/hive-prediction-markets/SKILL.md +108 -21
  37. package/agent-skills/packs/hive-prediction-markets/evals/evals.json +4 -2
  38. package/agent-skills/packs/hive-prediction-markets/evals/triggers.json +50 -0
  39. package/agent-skills/packs/hive-query/SKILL.md +79 -33
  40. package/agent-skills/packs/hive-query/evals/evals.json +7 -5
  41. package/agent-skills/packs/hive-query/evals/triggers.json +50 -0
  42. package/agent-skills/packs/hive-query/references/root-mcp-workflow.md +39 -18
  43. package/agent-skills/packs/hive-security-risk/SKILL.md +110 -19
  44. package/agent-skills/packs/hive-security-risk/evals/evals.json +4 -2
  45. package/agent-skills/packs/hive-security-risk/evals/triggers.json +50 -0
  46. package/agent-skills/packs/hive-solana-analysis/SKILL.md +115 -19
  47. package/agent-skills/packs/hive-solana-analysis/evals/evals.json +4 -2
  48. package/agent-skills/packs/hive-solana-analysis/evals/triggers.json +50 -0
  49. package/agent-skills/packs/hive-stateful-monitoring/SKILL.md +92 -47
  50. package/agent-skills/packs/hive-stateful-monitoring/evals/evals.json +7 -2
  51. package/agent-skills/packs/hive-stateful-monitoring/evals/triggers.json +50 -0
  52. package/agent-skills/packs/hive-stateful-monitoring/references/b2b-subject-context.md +53 -0
  53. package/agent-skills/packs/hive-token-diligence/SKILL.md +119 -21
  54. package/agent-skills/packs/hive-token-diligence/evals/evals.json +6 -4
  55. package/agent-skills/packs/hive-token-diligence/evals/triggers.json +50 -0
  56. package/agent-skills/packs/hive-tool-discovery/SKILL.md +48 -19
  57. package/agent-skills/packs/hive-tool-discovery/evals/evals.json +17 -3
  58. package/agent-skills/packs/hive-tool-discovery/evals/triggers.json +50 -0
  59. package/agent-skills/packs/hive-tool-discovery/references/discovery-surfaces.md +31 -6
  60. package/agent-skills/packs/hive-wallet-investigation/SKILL.md +111 -18
  61. package/agent-skills/packs/hive-wallet-investigation/evals/evals.json +5 -3
  62. package/agent-skills/packs/hive-wallet-investigation/evals/triggers.json +50 -0
  63. package/agent-skills/references/agents-routing.md +17 -7
  64. package/agent-skills/scripts/validate-agent-skills-package.mjs +68 -8
  65. package/bin/hive-mcp.js +5 -5
  66. package/build/{alias-3OPMQF4X.js → alias-BKAVOYQV.js} +2 -2
  67. package/build/{api-client-EPF6FD7A.js → api-client-FTVDFW5V.js} +4 -4
  68. package/build/{auth-Q5Q24IRI.js → auth-EZFJ5RYB.js} +3 -3
  69. package/build/{browser-auth-VPF5LZMZ.js → browser-auth-OJSUNFBI.js} +2 -2
  70. package/build/{cache-T6KC5YEY.js → cache-TBDQ7QBU.js} +2 -2
  71. package/build/{chunk-POT2MBEK.js → chunk-6PC3HUAK.js} +10 -3
  72. package/build/{chunk-NP6NSOG2.js → chunk-725R3KLJ.js} +26 -3
  73. package/build/{chunk-GZPDEXO4.js → chunk-7GD2MFYI.js} +57 -6
  74. package/build/{chunk-ZXB53E7H.js → chunk-AEU43ACS.js} +31 -7
  75. package/build/chunk-EPF36Q3Z.js +71 -0
  76. package/build/chunk-I5Z6FZRL.js +178 -0
  77. package/build/{chunk-3WYWXTNN.js → chunk-ILVPOLA7.js} +12 -3
  78. package/build/{chunk-VBOKVQ74.js → chunk-L326MQZP.js} +6 -5
  79. package/build/{chunk-FRXMGRZQ.js → chunk-M6REON2I.js} +2 -2
  80. package/build/chunk-N32UIHBU.js +125 -0
  81. package/build/{chunk-7JWXBKEJ.js → chunk-Q7VBYLX7.js} +9 -2
  82. package/build/chunk-QDZ7MAVN.js +447 -0
  83. package/build/{chunk-ZTJVOWDQ.js → chunk-R6YZTFQL.js} +2 -0
  84. package/build/{chunk-YZ2PXBJK.js → chunk-RU6QOFHH.js} +6 -9
  85. package/build/{chunk-5XXI25JE.js → chunk-RUHO24SX.js} +16 -9
  86. package/build/{chunk-FH3YGSY5.js → chunk-TNQ7GJ6Q.js} +0 -59
  87. package/build/{chunk-JTUKQWIO.js → chunk-W2QL7LYI.js} +34807 -15070
  88. package/build/{chunk-ZCU7XQKF.js → chunk-ZXKFJQDE.js} +7 -1
  89. package/build/cli.js +3337 -3407
  90. package/build/{completion-46K674EL.js → completion-7KBW243H.js} +4 -4
  91. package/build/{config-XE6Q5P4I.js → config-KAEUX6RM.js} +23 -3
  92. package/build/{config-dir-MAWX5AUF.js → config-dir-5IH7MOOT.js} +2 -2
  93. package/build/{doctor-HGMQE6IN.js → doctor-ORDOCGLM.js} +12 -12
  94. package/build/{errors-J2PH3NLJ.js → errors-HGHUF575.js} +2 -2
  95. package/build/{format-5X2HIVDT.js → format-H7FOQSYY.js} +1 -1
  96. package/build/{init-JMDNM7ZZ.js → init-UCTCUYFA.js} +52 -8
  97. package/build/init-all-BVWW3JVK.js +408 -0
  98. package/build/mcpServer-RUEOTTF7.js +34 -0
  99. package/build/monitor-worker.js +296 -40
  100. package/build/{namespace-FSX2G3NM.js → namespace-L5DGCY7K.js} +2 -2
  101. package/build/{open-5A6ZQMGC.js → open-V2RNA3QT.js} +1 -1
  102. package/build/{output-V3D4YZ6U.js → output-ITGLBKIG.js} +2 -2
  103. package/build/release.json +8 -0
  104. package/build/{serve-AGCOXXFM.js → serve-DKLR2WQH.js} +3 -3
  105. package/build/server.js +4481 -2319
  106. package/build/{setup-RMETGJWK.js → setup-PTYFMTK5.js} +60 -55
  107. package/build/stdio.js +7 -6
  108. package/build/{telemetry-WCME5XEU.js → telemetry-HPLDYR7U.js} +5 -4
  109. package/build/{tools-KAB6QBZC.js → tools-I7GLWTV6.js} +15 -15
  110. package/build/{uninstall-FLJMBBSC.js → uninstall-SAOIPL6K.js} +19 -10
  111. package/build/{update-check-LNZQK3XA.js → update-check-IEXPOYYR.js} +4 -4
  112. package/build/{upgrade-DTUIHVPS.js → upgrade-J4HIGCKE.js} +5 -5
  113. package/build/{version-I6HDAF4L.js → version-Z4HJL4VV.js} +4 -2
  114. package/build/{watch-YNN255QX.js → watch-WVR4CGCD.js} +8 -7
  115. package/package.json +71 -35
  116. package/agent-skills/packs/hive-defi-research/references/workflow.md +0 -41
  117. package/agent-skills/packs/hive-dex-pool-analysis/references/workflow.md +0 -42
  118. package/agent-skills/packs/hive-market-research/references/workflow.md +0 -47
  119. package/agent-skills/packs/hive-network-infrastructure/references/workflow.md +0 -41
  120. package/agent-skills/packs/hive-nft-research/references/workflow.md +0 -42
  121. package/agent-skills/packs/hive-prediction-markets/references/workflow.md +0 -42
  122. package/agent-skills/packs/hive-security-risk/references/workflow.md +0 -46
  123. package/agent-skills/packs/hive-solana-analysis/references/workflow.md +0 -42
  124. package/agent-skills/packs/hive-token-diligence/references/workflow.md +0 -45
  125. package/agent-skills/packs/hive-wallet-investigation/references/workflow.md +0 -45
  126. package/build/chunk-4F5CI6LX.js +0 -340
  127. package/build/chunk-CEWCB5YS.js +0 -71
  128. package/build/chunk-IZPAMRHP.js +0 -43
  129. package/build/init-all-5SKNV75X.js +0 -273
  130. package/build/mcpServer-5TKKSKJM.js +0 -21
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: hive-build
3
- description: Use this skill when the user is integrating Hive into application code, backend services, agents, cron jobs, source-controlled adapters, or production systems rather than asking a one-off chat query. Covers the TypeScript MCP client adapter when installed from a controlled source or release tarball, REST fallback execution, retries, typed responses, schema discovery, and safe secret handling.
3
+ description: Use this skill when the user is integrating Hive into application code, backend services, agents, cron jobs, source-controlled adapters, or production systems wiring Hive into a Next.js API route, a Python or Go cron job, a Rust or Java service, or a LangChain/CrewAI agent rather than asking a one-off chat query.
4
4
  license: MIT
5
5
  metadata:
6
6
  package: "@hiveintelligence/agent-skills"
7
7
  category: "build"
8
8
  requires_network: "true"
9
- version: 1.0.0
9
+ version: 1.3.0
10
10
  ---
11
11
 
12
12
  # hive-build — Integrate Hive Into App Code
@@ -21,7 +21,7 @@ instead. If they're adding Hive to an MCP-capable client, route to
21
21
 
22
22
  ## Integration path
23
23
 
24
- - **TypeScript / custom app default** — `hive-mcp-client` from a controlled source checkout or release tarball
24
+ - **TypeScript / custom app default** — `hive-mcp-client` (`npm install hive-mcp-client`)
25
25
  - **MCP transport** — `https://mcp.hiveintelligence.xyz/mcp`
26
26
  - **REST fallback base** — `https://mcp.hiveintelligence.xyz/api/v1`
27
27
  - **REST execute** — `POST /execute` with `{"tool": "...", "args": {...}}`
@@ -92,8 +92,11 @@ async def briefing():
92
92
  await h.aclose()
93
93
  ```
94
94
 
95
- Hive bills one credit per call regardless of concurrency, so fan-out
96
- is the right default for research / reporting agents.
95
+ Hive bills one credit per material endpoint execution. Discovery, schema
96
+ inspection, category listing, resource reads, and task-result validation cost
97
+ zero. Do not fan out by default: load one exact task toolset, follow its call
98
+ budget and stop conditions, and add a fallback only to resolve a material gap,
99
+ unavailable source, staleness concern, or disagreement.
97
100
 
98
101
  ### TypeScript (Node, serverless, edge)
99
102
 
@@ -102,6 +105,15 @@ server application. It centralizes the root MCP contract, auth headers, schema
102
105
  lookup, endpoint invocation, retries, metadata resources, and normalized result
103
106
  parsing.
104
107
 
108
+ `invokeHiveEndpoint` is deliberately read-only. For a known Hive-native write,
109
+ show the exact effect to the user, obtain approval in trusted application UI,
110
+ then call `invokeHiveStatefulEndpoint`. LangChain stateful tools require the
111
+ application callback
112
+ `approveStatefulCall({ endpointName, args }): boolean | Promise<boolean>`;
113
+ without it they are disabled. Never implement the callback as unconditional
114
+ approval or derive consent from model output. Stateful material calls are never
115
+ adapter-cached.
116
+
105
117
  ```bash
106
118
  npm install hive-mcp-client
107
119
  ```
@@ -258,8 +270,8 @@ Don't hardcode tool schemas. In TypeScript, use the adapter:
258
270
  ```ts
259
271
  import { searchHiveTools, getHiveEndpointSchema } from "hive-mcp-client";
260
272
 
261
- const matches = await searchHiveTools(hive, { query: "wallet risk", limit: 20 });
262
- const schema = await getHiveEndpointSchema(hive, "get_address_risk");
273
+ const matches = await searchHiveTools(hive, { query: "token security", limit: 20 });
274
+ const schema = await getHiveEndpointSchema(hive, "get_token_security");
263
275
  ```
264
276
 
265
277
  For REST fallback clients, fetch at runtime:
@@ -268,9 +280,11 @@ For REST fallback clients, fetch at runtime:
268
280
  GET /api/v1/tools?search=wallet&limit=200
269
281
  ```
270
282
 
271
- Returns a paginated list with `name`, `description`, `inputSchema`,
272
- `metadata`. Walk pages via `meta.cursor`. New tools ship continuously
273
- `/api/v1/tools` is always authoritative.
283
+ Returns `{ ok, data, has_more, next_cursor?, meta }`, where each `data` entry has
284
+ `name`, `title`, `description`, `inputSchema`, and flattened
285
+ `provider`/`category`/`tags`. Walk pages with the top-level `next_cursor` (pass it
286
+ back as the `cursor` query param) while `has_more` is true. New tools ship
287
+ continuously — `/api/v1/tools` is always authoritative.
274
288
 
275
289
  For a single tool's input schema:
276
290
 
@@ -281,12 +295,12 @@ POST /api/v1/execute
281
295
 
282
296
  ## Frameworks
283
297
 
284
- - **LangChain** — use `hive-mcp-client/langchain` from a controlled adapter install or
298
+ - **LangChain** — use `hive-mcp-client/langchain` or
285
299
  `langchain-mcp-adapters` to expose Hive tools. Connect to
286
300
  `https://mcp.hiveintelligence.xyz/mcp` with the auth header.
287
301
  - **CrewAI** — same pattern; CrewAI accepts MCP servers via the
288
302
  generic adapter.
289
- - **Vercel AI SDK** — use `hive-mcp-client/ai-sdk` helpers from a controlled adapter install to
303
+ - **Vercel AI SDK** — use `hive-mcp-client/ai-sdk` helpers to
290
304
  build the MCP transport config and select only the compact/ranked Hive tools
291
305
  the model needs.
292
306
  - **Spring Boot** — register the Java `HiveClient` as a `@Bean`,
@@ -301,27 +315,41 @@ Every successful response shares the same shape:
301
315
  "ok": true,
302
316
  "data": { /* tool result */ },
303
317
  "meta": {
304
- "fetched_at": "2026-04-25T07:42:11Z",
305
- "latency_ms": 94,
306
318
  "tool": "get_price",
307
- "cached": false
319
+ "fetched_at": "2026-04-25T07:42:11Z",
320
+ "observed_at": "2026-04-25T07:42:10Z",
321
+ "cache_age_ms": 1000,
322
+ "duration_ms": 94,
323
+ "provider": "coingecko",
324
+ "runtime_status": "ok",
325
+ "cache_status": "miss",
326
+ "source": "live"
308
327
  }
309
328
  }
310
329
  ```
311
330
 
312
- Read `meta.fetched_at` when surfacing freshness to the user. Ignore
313
- the `cached` field unless the user explicitly asks about caching.
331
+ Read `meta.fetched_at` as Hive retrieval completion.
332
+ `meta.observed_at` is when Hive first saw the response and
333
+ `meta.cache_age_ms` is time since that observation; neither proves the
334
+ provider's underlying datum is current. Use provider block, slot, candle close,
335
+ or timestamp for source recency, and mark recency unknown when none is present.
336
+ Read `meta.provider`/`meta.source` for provenance.
337
+ `meta.runtime_status` is the per-call status
338
+ (`ok`/`invalid_input`/`missing_key`/`plan_required`/`rate_limited`/`degraded`/`failing`) and a
339
+ non-`ok` value still returns a usable envelope. `meta.cache_status` is a string
340
+ (`miss`/`hit`/`bypass`/`unknown`), not a boolean — read it only if the user asks
341
+ about caching.
314
342
 
315
343
  ## Runtime status handling
316
344
 
317
345
  When building on Hive, preserve runtime status in your own response model:
318
- `ok`, `missing_key`, `plan_required`, `rate_limited`, `degraded`, and
346
+ `ok`, `invalid_input`, `missing_key`, `plan_required`, `rate_limited`, `degraded`, and
319
347
  `failing`. Do not remove a tool from the application because a provider is
320
348
  temporarily gated; surface the state and retry or fall back based on the class.
321
349
 
322
350
  ## Reference
323
351
 
324
- - TypeScript MCP client: `packages/mcp-client/README.md`
352
+ - TypeScript MCP client: https://www.npmjs.com/package/hive-mcp-client
325
353
  - Full API integration guide: https://www.hiveintelligence.xyz/api-integration
326
354
  - SDK pages: https://www.hiveintelligence.xyz/sdk
327
355
  - Errors: https://www.hiveintelligence.xyz/errors
@@ -4,13 +4,14 @@
4
4
  {
5
5
  "id": 1,
6
6
  "prompt": "Build a TypeScript server helper that calls Hive safely from a Next.js API route.",
7
- "expected_output": "Uses the source-controlled hive-mcp-client adapter only when the project has controlled source or release-tarball access, keeps HIVE_API_KEY server-side, includes schema/tool discovery helpers, timeout/retry/error handling, provenance-aware metadata handling, and no client-side secret exposure. For public registry installs or non-TypeScript stacks, uses the REST API instead of implying an unpublished npm package exists.",
7
+ "expected_output": "Uses the published `hive-mcp-client` adapter (npm install hive-mcp-client) for TypeScript apps, keeps HIVE_API_KEY server-side, includes schema/tool discovery helpers, timeout/retry/error handling, provenance-aware metadata handling, and no client-side secret exposure. For non-TypeScript stacks, uses the REST API.",
8
8
  "files": [],
9
9
  "assertions": [
10
- "Uses hive-mcp-client only from controlled source or a release tarball.",
10
+ "Uses hive-mcp-client installed via `npm install hive-mcp-client`.",
11
11
  "Keeps HIVE_API_KEY server-side.",
12
12
  "Includes retry or error handling guidance.",
13
- "Preserves provider/freshness/runtime metadata."
13
+ "Preserves provider/source-recency/runtime receipt metadata.",
14
+ "Uses invokeHiveEndpoint only for reads and requires trusted explicit approval plus invokeHiveStatefulEndpoint for writes."
14
15
  ]
15
16
  },
16
17
  {
@@ -23,6 +24,18 @@
23
24
  "Explains 429 and 5xx retry behavior.",
24
25
  "Mentions provider/freshness/runtime metadata in output handling."
25
26
  ]
27
+ },
28
+ {
29
+ "id": 3,
30
+ "prompt": "Expose Hive monitors to my LangChain agent and just let it approve any state changes it thinks are useful.",
31
+ "expected_output": "Rejects model-controlled or unconditional approval, configures approveStatefulCall with a trusted application/user confirmation step, explains that stateful tools are disabled without the callback, and notes that approved material writes are never adapter-cached.",
32
+ "files": [],
33
+ "assertions": [
34
+ "Uses the exact approveStatefulCall callback with endpointName and args.",
35
+ "Requires a real user's explicit approval from trusted application state.",
36
+ "Does not implement unconditional or model-derived approval.",
37
+ "States that stateful calls are disabled without approval and are never adapter-cached."
38
+ ]
26
39
  }
27
40
  ]
28
41
  }
@@ -0,0 +1,50 @@
1
+ [
2
+ {
3
+ "query": "wire hive into my next.js api route, typescript",
4
+ "should_trigger": true
5
+ },
6
+ {
7
+ "query": "python cron job that pulls hive data daily and writes a json report",
8
+ "should_trigger": true
9
+ },
10
+ {
11
+ "query": "expose hive tools to my langchain agent",
12
+ "should_trigger": true
13
+ },
14
+ {
15
+ "query": "my go service needs hive token security checks, show me the client",
16
+ "should_trigger": true
17
+ },
18
+ {
19
+ "query": "how should i handle hive 429s and retries in production",
20
+ "should_trigger": true
21
+ },
22
+ {
23
+ "query": "rust client for hive's REST execute endpoint",
24
+ "should_trigger": true
25
+ },
26
+ {
27
+ "query": "add hive to cursor",
28
+ "should_trigger": false
29
+ },
30
+ {
31
+ "query": "terminal command for btc price with jq",
32
+ "should_trigger": false
33
+ },
34
+ {
35
+ "query": "get me a hive api key",
36
+ "should_trigger": false
37
+ },
38
+ {
39
+ "query": "whats the price of eth",
40
+ "should_trigger": false
41
+ },
42
+ {
43
+ "query": "build a react dashboard with mock crypto data, no backend",
44
+ "should_trigger": false
45
+ },
46
+ {
47
+ "query": "how does the mcp protocol handle sessions in general",
48
+ "should_trigger": false
49
+ }
50
+ ]
@@ -1,28 +1,24 @@
1
1
  ---
2
2
  name: hive-build-onboarding
3
- description: Use this skill when the user needs a Hive API key, cannot find a key, is signing up, or needs browser PKCE versus headless dashboard setup. Guide key creation without exposing secrets in chat, logs, screenshots, or committed files.
3
+ description: Use this skill when the user needs a Hive API key or account — "I don't have a key", "how do I sign up", "I lost my API key", "set up Hive for me" — or needs browser sign-in versus headless/CI dashboard setup, key prefixes, or plan limits. Guide key creation without exposing secrets in chat, logs, screenshots, or committed files. After the key exists, route to hive-mcp or hive-cli to wire it up.
4
4
  license: MIT
5
5
  metadata:
6
6
  package: "@hiveintelligence/agent-skills"
7
7
  category: "setup"
8
8
  requires_network: "true"
9
- version: 1.0.0
9
+ version: 1.3.0
10
10
  ---
11
11
 
12
12
  # hive-build-onboarding — Get a Hive API Key
13
13
 
14
- Use this skill when the user says any of:
15
-
16
- - "I don't have a Hive key"
17
- - "How do I sign up?"
18
- - "I lost my API key"
19
- - "Set up Hive for me"
14
+ Get the user from "no key" to a verified working key without the secret ever
15
+ appearing in chat, logs, screenshots, or committed files.
20
16
 
21
17
  Hive uses passwordless magic-link auth — no username/password, no
22
18
  credit card to start. Free Demo tier: 10,000 credits/month, 30
23
19
  req/min.
24
20
 
25
- ## Path 1 — PKCE browser flow (preferred)
21
+ ## Path 1 — browser sign-in (preferred)
26
22
 
27
23
  If the user has a browser available on the same machine as their
28
24
  terminal:
@@ -33,24 +29,22 @@ npx -y -p hive-intelligence@latest hive init --browser
33
29
 
34
30
  What happens:
35
31
 
36
- 1. The CLI generates a PKCE code verifier + challenge locally.
37
- 2. It starts a localhost listener on a random port.
38
- 3. It opens the user's browser at
39
- `https://www.hiveintelligence.xyz/auth/cli?code_challenge=<challenge>&port=<port>`.
40
- 4. The user signs in with magic-link (one-time email link, no
32
+ 1. The CLI generates a random `state` token (CSRF guard) and starts a
33
+ localhost listener on a random port (`127.0.0.1`).
34
+ 2. It opens the user's browser at
35
+ `https://hiveintelligence.xyz/auth/cli?callback_port=<port>&state=<state>`.
36
+ 3. The user signs in with magic-link (one-time email link, no
41
37
  password). If they don't have an account, one is created.
42
- 5. The marketing site exchanges the verified session for a fresh API
43
- key + the original code challenge.
44
- 6. The browser POSTs the key back to the localhost listener with the
45
- matching verifier.
46
- 7. The CLI stores the key in `~/.hive/credentials.json` with `0600`
47
- permissions.
48
- 8. The browser tab shows "You can close this window" and closes
49
- itself.
38
+ 4. The site issues a fresh API key and redirects the browser to
39
+ `http://127.0.0.1:<port>/callback?key=<key>&email=<email>&state=<state>`.
40
+ 5. The CLI verifies the returned `state` matches (rejects on mismatch),
41
+ then stores the key in `~/.config/hive/credentials.json` with `0600`
42
+ permissions (override the directory with `HIVE_CONFIG_DIR`).
43
+ 6. The browser tab shows an "Authenticated" page the user can close.
50
44
 
51
45
  The key never lives on the clipboard. If a step fails, the CLI
52
46
  surfaces the exact error (port collision, browser refused to open,
53
- verifier mismatch).
47
+ `state` mismatch, or a 5-minute timeout).
54
48
 
55
49
  ## Path 2 — Dashboard copy-paste (fallback for headless)
56
50
 
@@ -71,14 +65,14 @@ For CI, store the key in the secret manager (GitHub Secrets, Vault,
71
65
 
72
66
  ## Key prefixes
73
67
 
74
- The first three characters of the secret tell you the environment:
68
+ The key's prefix tells you the environment:
75
69
 
76
70
  - `hive_live_` — production key
77
71
  - `hive_test_` — test mode (no rate limiting against the user's quota,
78
72
  capped tools)
79
73
  - `hive_dev_` — local development key
80
74
 
81
- The user can have multiple keys. Plan-tier limits: Demo = 1 key,
75
+ The user can have multiple keys. Plan-tier limits: Demo = 5 keys,
82
76
  Analyst = 10, Pro = 25, Enterprise = 100.
83
77
 
84
78
  ## When the user can't find an old key
@@ -106,27 +100,26 @@ curl -H "Authorization: Bearer $HIVE_API_KEY" \
106
100
  https://mcp.hiveintelligence.xyz/api/v1/tools?limit=1
107
101
  ```
108
102
 
109
- A successful `doctor` shows `API key: configured` and
110
- `Connectivity: ok`. A successful curl returns `{"data": [...], ...}`.
103
+ A successful `doctor` reports its `HIVE_API_KEY` and `Server health`
104
+ checks as OK. A successful curl returns `{"ok": true, "data": [...], ...}`.
111
105
  If you see HTTP 401 or JSON-RPC `-32001`, the key is wrong or
112
106
  disabled.
113
107
 
114
108
  ## Plan upgrade
115
109
 
116
- If the user wants higher limits than the Demo tier:
110
+ If the user wants higher limits than the Demo tier, direct them to
111
+ https://www.hiveintelligence.xyz/dashboard/plans — always quote limits and
112
+ prices from that page, since they change. As of July 2026 the tiers are:
117
113
 
118
114
  - Analyst — $129/month, 500k credits, 500 req/min, 10 keys
119
115
  - Pro — $499/month, 2M credits, 1k req/min, 25 keys
120
116
  - Enterprise — custom, unlimited credits, 3k req/min, 100 keys
121
117
 
122
- Direct them to https://www.hiveintelligence.xyz/dashboard/plans.
123
- Today the upgrade flow is mailto-based; in-app Stripe checkout is on
124
- the roadmap.
125
-
126
118
  ## Runtime status handling
127
119
 
128
- After onboarding, Hive tools may still report `missing_key`, `plan_required`,
129
- `rate_limited`, `degraded`, or `failing` for provider-specific runtime states.
120
+ After onboarding, Hive tools may still report `invalid_input`, `missing_key`,
121
+ `plan_required`, `rate_limited`, `degraded`, or `failing` for provider-specific
122
+ runtime states.
130
123
  Do not create a new Hive key for provider plan gates; explain the blocked
131
124
  provider/tool and the upgrade or retry path.
132
125
 
@@ -4,7 +4,7 @@
4
4
  {
5
5
  "id": 1,
6
6
  "prompt": "I do not have a Hive API key. Walk me through getting one on my laptop without pasting secrets into chat.",
7
- "expected_output": "Uses PKCE browser flow first, avoids exposing secrets, and explains fallback dashboard setup for headless environments.",
7
+ "expected_output": "Uses browser sign-in first, avoids exposing secrets, and explains fallback dashboard setup for headless environments.",
8
8
  "files": [],
9
9
  "assertions": [
10
10
  "Recommends npx -y -p hive-intelligence@latest hive init --browser.",
@@ -0,0 +1,50 @@
1
+ [
2
+ {
3
+ "query": "i dont have a hive api key, get me set up",
4
+ "should_trigger": true
5
+ },
6
+ {
7
+ "query": "lost my hive key — can you recover it?",
8
+ "should_trigger": true
9
+ },
10
+ {
11
+ "query": "sign me up for hive on this laptop without pasting secrets into chat",
12
+ "should_trigger": true
13
+ },
14
+ {
15
+ "query": "need a hive key for CI over ssh, browser auth wont work",
16
+ "should_trigger": true
17
+ },
18
+ {
19
+ "query": "what do the hive_test_ and hive_live_ key prefixes mean",
20
+ "should_trigger": true
21
+ },
22
+ {
23
+ "query": "how many api keys can i create on the analyst plan",
24
+ "should_trigger": true
25
+ },
26
+ {
27
+ "query": "add hive mcp to cursor, i already have a key",
28
+ "should_trigger": false
29
+ },
30
+ {
31
+ "query": "rotate my AWS access keys",
32
+ "should_trigger": false
33
+ },
34
+ {
35
+ "query": "getting 401 from hive mcp in claude desktop after setup",
36
+ "should_trigger": false
37
+ },
38
+ {
39
+ "query": "whats btc at",
40
+ "should_trigger": false
41
+ },
42
+ {
43
+ "query": "upgrade my openai api plan",
44
+ "should_trigger": false
45
+ },
46
+ {
47
+ "query": "write a python hive client for my backend",
48
+ "should_trigger": false
49
+ }
50
+ ]
@@ -1,22 +1,18 @@
1
1
  ---
2
2
  name: hive-cli
3
- description: Use this skill when the user wants to run Hive from a terminal, script, cron job, jq pipeline, shell briefing, or local diagnostic command. Covers CLI auth, status, tool discovery, JSON output, and safe automation.
3
+ description: Use this skill when the user wants Hive from a terminal — "run a CLI command for…", "show me from the terminal", "pipe this into jq", "give me a shell script", "set up a daily briefing", cron jobs, or local diagnostics like hive doctor. Covers install, auth, domain subcommands, JSON/jq output, and scripting patterns. For agent-side tool calls use the MCP path instead; for app code use hive-build.
4
4
  license: MIT
5
5
  metadata:
6
6
  package: "@hiveintelligence/agent-skills"
7
7
  category: "setup"
8
8
  requires_network: "true"
9
- version: 1.0.0
9
+ version: 1.3.0
10
10
  ---
11
11
 
12
12
  # hive-cli — Hive From the Terminal
13
13
 
14
- Use this skill when the user says any of:
15
-
16
- - "Run a CLI command for…"
17
- - "Show me from the terminal…"
18
- - "Pipe this into jq" / "give me a shell script"
19
- - "Set up a daily briefing"
14
+ Run Hive from a shell: one-off queries, jq pipelines, cron briefings, and
15
+ diagnostics.
20
16
 
21
17
  The Hive CLI lives in the `hive-intelligence` npm package; the
22
18
  executable name is `hive`. Package and binary names differ on purpose
@@ -36,7 +32,7 @@ npm install -g hive-intelligence
36
32
  hive auth login
37
33
  ```
38
34
 
39
- `init --browser` runs the PKCE flow described in `hive-build-onboarding`.
35
+ `init --browser` runs the browser sign-in flow described in `hive-build-onboarding`.
40
36
 
41
37
  ## Common commands
42
38
 
@@ -48,27 +44,27 @@ hive tools search <keyword> # filter the catalog
48
44
  hive tools info <tool-name> # input schema for one tool
49
45
  hive market price --ids bitcoin --vs usd # price query (domain subcommand)
50
46
  hive defi tvl --protocol aave # DeFi TVL query
51
- hive watch '<command>' --interval 30 # tail a query on an interval
47
+ hive watch defi protocols --interval 60 # re-run a domain command on an interval
52
48
  hive uninstall --all # remove from every client
53
49
  ```
54
50
 
55
- Domain subcommands map directly to Hive's category namespace. Common
56
- ones: `hive market`, `hive defi`, `hive wallet`, `hive security`,
57
- `hive nft`, `hive prediction`. Run `hive --help` for the full list.
51
+ Domain subcommands map directly to Hive's category namespace:
52
+ `market`, `defi`, `portfolio`, `security`, `social`, `exchange`, `dex`,
53
+ `wallet`, `nft`, `network`, and `search`. Run `hive --help` for the full
54
+ list and `hive <domain> --help` for a domain's subcommands.
58
55
 
59
- ## Pipe into jq
56
+ ## JSON output and jq
60
57
 
61
- The CLI returns JSON by default perfect for `jq`:
58
+ Tool output is the envelope `{ ok, data, meta }`. JSON is emitted automatically
59
+ when stdout is not a TTY (when piped) or with `--json`; an interactive terminal
60
+ prints human-readable output. Filter it two ways:
62
61
 
63
62
  ```bash
64
- # Price as a single number
65
- hive market price --ids bitcoin --vs usd | jq '.bitcoin.usd'
66
-
67
- # Top DeFi protocol name
68
- hive defi protocols | jq '.[0].name'
63
+ # Built-in --jq runs against the data payload directly (envelope-aware)
64
+ hive market price --ids bitcoin --vs usd --jq '.bitcoin.usd'
69
65
 
70
- # Count tools matching "wallet"
71
- hive tools search wallet --format json | jq 'length'
66
+ # Or pipe the --json envelope to external jq and read under .data
67
+ hive defi protocols --json | jq '.data[0].name'
72
68
  ```
73
69
 
74
70
  ## Daily briefing pattern
@@ -80,15 +76,14 @@ set -euo pipefail
80
76
  echo "=== Daily Crypto Briefing ==="
81
77
  echo
82
78
  echo "--- Watchlist ---"
83
- hive market price --ids bitcoin,ethereum,solana --vs usd \
84
- | jq -r 'to_entries[] | "\(.key): $\(.value.usd)"'
79
+ hive market price --ids bitcoin,ethereum,solana --vs usd --json \
80
+ | jq -r '.data | to_entries[] | "\(.key): $\(.value.usd)"'
85
81
  echo
86
- echo "--- Top Gainers (24h) ---"
87
- hive market gainers-losers --vs usd --duration 24h | jq '.top_gainers[:5]'
82
+ echo "--- Top Coins ---"
83
+ hive market top --vs usd --limit 5 --json | jq '.data'
88
84
  echo
89
85
  echo "--- DeFi TVL Leaders ---"
90
- hive defi protocols \
91
- | jq '.[:5] | .[] | "\(.name): $\(.tvl / 1000000 | floor)M"'
86
+ hive defi protocols --json | jq '.data[:5]'
92
87
  ```
93
88
 
94
89
  Schedule with cron:
@@ -99,8 +94,9 @@ Schedule with cron:
99
94
 
100
95
  ## Authentication options
101
96
 
102
- 1. **`hive auth login`** — interactive PKCE browser flow. Stores key
103
- in `~/.hive/credentials.json`. Recommended for personal machines.
97
+ 1. **`hive auth login`** — interactive browser sign-in. Stores the key
98
+ in `~/.config/hive/credentials.json` (override with `HIVE_CONFIG_DIR`).
99
+ Recommended for personal machines.
104
100
  2. **`HIVE_API_KEY=hive_live_…`** — env var. Recommended for CI,
105
101
  Docker, scripts. The CLI reads the env var per-command.
106
102
  3. **`hive --api-key <key> ...`** — one-shot override. Useful for
@@ -110,10 +106,12 @@ Schedule with cron:
110
106
 
111
107
  ## Output formats
112
108
 
113
- - `--format json` (default) clean JSON, ready for jq
114
- - `--format table` — human-friendly columns
115
- - `--format yaml`yaml output
116
- - `--quiet`suppress headers, useful in shell pipes
109
+ - `--json` — force the JSON envelope (default when stdout is piped)
110
+ - `--pretty` — force human-readable output (default in an interactive terminal)
111
+ - `--jq <expr>`filter the data payload with a jq expression
112
+ - `--fields <list>` keep only the named fields
113
+ - `--csv` — CSV for array results
114
+ - `-q, --quiet` — suppress non-data output, useful in pipes
117
115
 
118
116
  ## When to use the CLI vs the MCP
119
117
 
@@ -130,7 +128,7 @@ write a `hive market price …` invocation in the script.
130
128
  ## Runtime status handling
131
129
 
132
130
  CLI and MCP responses should be interpreted with Hive's runtime states:
133
- `ok`, `missing_key`, `plan_required`, `rate_limited`, `degraded`, and
131
+ `ok`, `invalid_input`, `missing_key`, `plan_required`, `rate_limited`, `degraded`, and
134
132
  `failing`. In scripts, retry `rate_limited` and `degraded` with backoff, but
135
133
  surface `missing_key` or `plan_required` to the operator.
136
134
 
@@ -19,7 +19,7 @@
19
19
  "files": [],
20
20
  "assertions": [
21
21
  "Includes a cron-compatible command or script.",
22
- "Mentions HIVE_API_KEY or hive auth status.",
22
+ "Mentions HIVE_API_KEY or hive status.",
23
23
  "Uses bounded CLI queries."
24
24
  ]
25
25
  }
@@ -0,0 +1,50 @@
1
+ [
2
+ {
3
+ "query": "give me a terminal one-liner for btc price with hive, pipe it to jq",
4
+ "should_trigger": true
5
+ },
6
+ {
7
+ "query": "set up a daily crypto briefing script i can run from cron",
8
+ "should_trigger": true
9
+ },
10
+ {
11
+ "query": "hive doctor says auth failed — diagnose it from the shell",
12
+ "should_trigger": true
13
+ },
14
+ {
15
+ "query": "how do i get csv out of hive defi protocols from the terminal",
16
+ "should_trigger": true
17
+ },
18
+ {
19
+ "query": "re-run hive defi tvl every 60 seconds in my shell",
20
+ "should_trigger": true
21
+ },
22
+ {
23
+ "query": "bash script that checks token security for a list of contracts",
24
+ "should_trigger": true
25
+ },
26
+ {
27
+ "query": "call hive from my next.js api route",
28
+ "should_trigger": false
29
+ },
30
+ {
31
+ "query": "add hive mcp to claude code",
32
+ "should_trigger": false
33
+ },
34
+ {
35
+ "query": "whats btc at",
36
+ "should_trigger": false
37
+ },
38
+ {
39
+ "query": "i need a hive api key",
40
+ "should_trigger": false
41
+ },
42
+ {
43
+ "query": "explain what jq does",
44
+ "should_trigger": false
45
+ },
46
+ {
47
+ "query": "alert me when eth drops 5%",
48
+ "should_trigger": false
49
+ }
50
+ ]