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.
- package/README.md +182 -73
- package/agent-skills/.claude-plugin/plugin.json +4 -4
- package/agent-skills/.mcp.json +1 -4
- package/agent-skills/README.md +16 -10
- package/agent-skills/SKILL.md +30 -12
- package/agent-skills/package.json +1 -1
- package/agent-skills/packs/hive-build/SKILL.md +47 -19
- package/agent-skills/packs/hive-build/evals/evals.json +16 -3
- package/agent-skills/packs/hive-build/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-build-onboarding/SKILL.md +27 -34
- package/agent-skills/packs/hive-build-onboarding/evals/evals.json +1 -1
- package/agent-skills/packs/hive-build-onboarding/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-cli/SKILL.md +33 -35
- package/agent-skills/packs/hive-cli/evals/evals.json +1 -1
- package/agent-skills/packs/hive-cli/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-defi-research/SKILL.md +105 -19
- package/agent-skills/packs/hive-defi-research/evals/evals.json +6 -3
- package/agent-skills/packs/hive-defi-research/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-dex-pool-analysis/SKILL.md +106 -16
- package/agent-skills/packs/hive-dex-pool-analysis/evals/evals.json +5 -3
- package/agent-skills/packs/hive-dex-pool-analysis/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-market-research/SKILL.md +130 -21
- package/agent-skills/packs/hive-market-research/evals/evals.json +15 -2
- package/agent-skills/packs/hive-market-research/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-mcp/SKILL.md +69 -47
- package/agent-skills/packs/hive-mcp/evals/evals.json +3 -2
- package/agent-skills/packs/hive-mcp/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-mcp/references/client-install-matrix.md +62 -35
- package/agent-skills/packs/hive-mcp/references/clients.md +81 -68
- package/agent-skills/packs/hive-network-infrastructure/SKILL.md +105 -20
- package/agent-skills/packs/hive-network-infrastructure/evals/evals.json +4 -2
- package/agent-skills/packs/hive-network-infrastructure/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-nft-research/SKILL.md +105 -18
- package/agent-skills/packs/hive-nft-research/evals/evals.json +4 -2
- package/agent-skills/packs/hive-nft-research/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-prediction-markets/SKILL.md +108 -21
- package/agent-skills/packs/hive-prediction-markets/evals/evals.json +4 -2
- package/agent-skills/packs/hive-prediction-markets/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-query/SKILL.md +79 -33
- package/agent-skills/packs/hive-query/evals/evals.json +7 -5
- package/agent-skills/packs/hive-query/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-query/references/root-mcp-workflow.md +39 -18
- package/agent-skills/packs/hive-security-risk/SKILL.md +110 -19
- package/agent-skills/packs/hive-security-risk/evals/evals.json +4 -2
- package/agent-skills/packs/hive-security-risk/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-solana-analysis/SKILL.md +115 -19
- package/agent-skills/packs/hive-solana-analysis/evals/evals.json +4 -2
- package/agent-skills/packs/hive-solana-analysis/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-stateful-monitoring/SKILL.md +92 -47
- package/agent-skills/packs/hive-stateful-monitoring/evals/evals.json +7 -2
- package/agent-skills/packs/hive-stateful-monitoring/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-stateful-monitoring/references/b2b-subject-context.md +53 -0
- package/agent-skills/packs/hive-token-diligence/SKILL.md +119 -21
- package/agent-skills/packs/hive-token-diligence/evals/evals.json +6 -4
- package/agent-skills/packs/hive-token-diligence/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-tool-discovery/SKILL.md +48 -19
- package/agent-skills/packs/hive-tool-discovery/evals/evals.json +17 -3
- package/agent-skills/packs/hive-tool-discovery/evals/triggers.json +50 -0
- package/agent-skills/packs/hive-tool-discovery/references/discovery-surfaces.md +31 -6
- package/agent-skills/packs/hive-wallet-investigation/SKILL.md +111 -18
- package/agent-skills/packs/hive-wallet-investigation/evals/evals.json +5 -3
- package/agent-skills/packs/hive-wallet-investigation/evals/triggers.json +50 -0
- package/agent-skills/references/agents-routing.md +17 -7
- package/agent-skills/scripts/validate-agent-skills-package.mjs +68 -8
- package/bin/hive-mcp.js +5 -5
- package/build/{alias-3OPMQF4X.js → alias-BKAVOYQV.js} +2 -2
- package/build/{api-client-EPF6FD7A.js → api-client-FTVDFW5V.js} +4 -4
- package/build/{auth-Q5Q24IRI.js → auth-EZFJ5RYB.js} +3 -3
- package/build/{browser-auth-VPF5LZMZ.js → browser-auth-OJSUNFBI.js} +2 -2
- package/build/{cache-T6KC5YEY.js → cache-TBDQ7QBU.js} +2 -2
- package/build/{chunk-POT2MBEK.js → chunk-6PC3HUAK.js} +10 -3
- package/build/{chunk-NP6NSOG2.js → chunk-725R3KLJ.js} +26 -3
- package/build/{chunk-GZPDEXO4.js → chunk-7GD2MFYI.js} +57 -6
- package/build/{chunk-ZXB53E7H.js → chunk-AEU43ACS.js} +31 -7
- package/build/chunk-EPF36Q3Z.js +71 -0
- package/build/chunk-I5Z6FZRL.js +178 -0
- package/build/{chunk-3WYWXTNN.js → chunk-ILVPOLA7.js} +12 -3
- package/build/{chunk-VBOKVQ74.js → chunk-L326MQZP.js} +6 -5
- package/build/{chunk-FRXMGRZQ.js → chunk-M6REON2I.js} +2 -2
- package/build/chunk-N32UIHBU.js +125 -0
- package/build/{chunk-7JWXBKEJ.js → chunk-Q7VBYLX7.js} +9 -2
- package/build/chunk-QDZ7MAVN.js +447 -0
- package/build/{chunk-ZTJVOWDQ.js → chunk-R6YZTFQL.js} +2 -0
- package/build/{chunk-YZ2PXBJK.js → chunk-RU6QOFHH.js} +6 -9
- package/build/{chunk-5XXI25JE.js → chunk-RUHO24SX.js} +16 -9
- package/build/{chunk-FH3YGSY5.js → chunk-TNQ7GJ6Q.js} +0 -59
- package/build/{chunk-JTUKQWIO.js → chunk-W2QL7LYI.js} +34807 -15070
- package/build/{chunk-ZCU7XQKF.js → chunk-ZXKFJQDE.js} +7 -1
- package/build/cli.js +3337 -3407
- package/build/{completion-46K674EL.js → completion-7KBW243H.js} +4 -4
- package/build/{config-XE6Q5P4I.js → config-KAEUX6RM.js} +23 -3
- package/build/{config-dir-MAWX5AUF.js → config-dir-5IH7MOOT.js} +2 -2
- package/build/{doctor-HGMQE6IN.js → doctor-ORDOCGLM.js} +12 -12
- package/build/{errors-J2PH3NLJ.js → errors-HGHUF575.js} +2 -2
- package/build/{format-5X2HIVDT.js → format-H7FOQSYY.js} +1 -1
- package/build/{init-JMDNM7ZZ.js → init-UCTCUYFA.js} +52 -8
- package/build/init-all-BVWW3JVK.js +408 -0
- package/build/mcpServer-RUEOTTF7.js +34 -0
- package/build/monitor-worker.js +296 -40
- package/build/{namespace-FSX2G3NM.js → namespace-L5DGCY7K.js} +2 -2
- package/build/{open-5A6ZQMGC.js → open-V2RNA3QT.js} +1 -1
- package/build/{output-V3D4YZ6U.js → output-ITGLBKIG.js} +2 -2
- package/build/release.json +8 -0
- package/build/{serve-AGCOXXFM.js → serve-DKLR2WQH.js} +3 -3
- package/build/server.js +4481 -2319
- package/build/{setup-RMETGJWK.js → setup-PTYFMTK5.js} +60 -55
- package/build/stdio.js +7 -6
- package/build/{telemetry-WCME5XEU.js → telemetry-HPLDYR7U.js} +5 -4
- package/build/{tools-KAB6QBZC.js → tools-I7GLWTV6.js} +15 -15
- package/build/{uninstall-FLJMBBSC.js → uninstall-SAOIPL6K.js} +19 -10
- package/build/{update-check-LNZQK3XA.js → update-check-IEXPOYYR.js} +4 -4
- package/build/{upgrade-DTUIHVPS.js → upgrade-J4HIGCKE.js} +5 -5
- package/build/{version-I6HDAF4L.js → version-Z4HJL4VV.js} +4 -2
- package/build/{watch-YNN255QX.js → watch-WVR4CGCD.js} +8 -7
- package/package.json +71 -35
- package/agent-skills/packs/hive-defi-research/references/workflow.md +0 -41
- package/agent-skills/packs/hive-dex-pool-analysis/references/workflow.md +0 -42
- package/agent-skills/packs/hive-market-research/references/workflow.md +0 -47
- package/agent-skills/packs/hive-network-infrastructure/references/workflow.md +0 -41
- package/agent-skills/packs/hive-nft-research/references/workflow.md +0 -42
- package/agent-skills/packs/hive-prediction-markets/references/workflow.md +0 -42
- package/agent-skills/packs/hive-security-risk/references/workflow.md +0 -46
- package/agent-skills/packs/hive-solana-analysis/references/workflow.md +0 -42
- package/agent-skills/packs/hive-token-diligence/references/workflow.md +0 -45
- package/agent-skills/packs/hive-wallet-investigation/references/workflow.md +0 -45
- package/build/chunk-4F5CI6LX.js +0 -340
- package/build/chunk-CEWCB5YS.js +0 -71
- package/build/chunk-IZPAMRHP.js +0 -43
- package/build/init-all-5SKNV75X.js +0 -273
- package/build/mcpServer-5TKKSKJM.js +0 -21
|
@@ -1,44 +1,131 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hive-prediction-markets
|
|
3
|
-
description: Use this skill
|
|
3
|
+
description: Use this skill when the user asks about prediction markets — Polymarket or Kalshi events, markets, outcomes, odds, prices, liquidity, stats, traders, holders, or trades — including "what are the odds of X", "find markets about Y", or comparing venues. Use it whenever live prediction-market evidence is needed. Never present market probability as ground truth.
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
package: "@hiveintelligence/agent-skills"
|
|
7
7
|
category: "prediction-markets"
|
|
8
8
|
requires_network: "true"
|
|
9
|
-
version: 1.
|
|
9
|
+
version: 1.3.0
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# hive-prediction-markets — Prediction Markets
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
Discover and analyze prediction markets — Polymarket, Kalshi — with prices,
|
|
15
|
+
liquidity, outcomes, traders, and trades, always framed as market-implied
|
|
16
|
+
odds rather than truth.
|
|
16
17
|
|
|
17
|
-
## Task toolset
|
|
18
|
+
## Task toolset and identifiers
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
Toolset: `prediction_markets`. Read `hive://toolsets/prediction_markets` before
|
|
21
|
+
execution; it is authoritative for the current output schema, material-call
|
|
22
|
+
budget, phases, fallback condition, and stop conditions.
|
|
20
23
|
|
|
21
|
-
Required
|
|
22
|
-
|
|
24
|
+
- Required: market id, event id, token id, trader address, or a search query —
|
|
25
|
+
depending on the request.
|
|
26
|
+
- Optional: status filter, limit, date range, outcome, liquidity threshold.
|
|
27
|
+
|
|
28
|
+
If the user starts with a topic, search candidates first and ask for selection
|
|
29
|
+
when multiple markets match — similar markets can have different resolution
|
|
30
|
+
criteria.
|
|
31
|
+
|
|
32
|
+
Before choosing endpoints, select exactly one matching entry from the exact
|
|
33
|
+
workflow's routes[]. Follow its ordered steps, use a fallback only under that
|
|
34
|
+
step's published condition, stop at four material calls, and preserve the
|
|
35
|
+
selected route_id in the typed result. The broad coverageCatalog is discovery
|
|
36
|
+
coverage, not an execution plan.
|
|
23
37
|
|
|
24
38
|
## Procedure
|
|
25
39
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
40
|
+
1. Call `search_tools` for prediction-market search, event, market, stats,
|
|
41
|
+
holder, trader, or trade capabilities.
|
|
42
|
+
2. Call `get_api_endpoint_schema` for each endpoint before calling it.
|
|
43
|
+
3. Search events/markets for topic prompts; resolve exact market/event/token
|
|
44
|
+
ids before pulling stats, holders, or trades.
|
|
45
|
+
4. Add liquidity/volume and freshness context before interpreting prices.
|
|
46
|
+
5. Report market price, volume/liquidity, outcomes, provider/source, and
|
|
47
|
+
freshness — and never present probability as ground truth.
|
|
48
|
+
|
|
49
|
+
## Bounded calls
|
|
50
|
+
|
|
51
|
+
- Use small search limits and page through only when needed.
|
|
52
|
+
- Do not fetch all trades or holders unless the user asks for a deep dive.
|
|
53
|
+
- Keep outcome-token prices separate from event-level interpretation.
|
|
54
|
+
|
|
55
|
+
## Worked example
|
|
56
|
+
|
|
57
|
+
User: "What are the odds on the next Fed rate decision? Compare Polymarket
|
|
58
|
+
and Kalshi if both have markets."
|
|
59
|
+
|
|
60
|
+
1. `search_tools` → `{"query": "prediction markets search events fed rate decision", "limit": 5}`
|
|
61
|
+
2. `get_api_endpoint_schema` for the market-search endpoint returned, then
|
|
62
|
+
`invoke_api_endpoint` with a bounded search per venue.
|
|
63
|
+
3. If several markets match, list candidates with resolution criteria and ask
|
|
64
|
+
which to inspect — or pick the highest-liquidity exact match and say so.
|
|
65
|
+
4. Report outcome prices with volume/liquidity and freshness, framed as
|
|
66
|
+
market-implied odds.
|
|
67
|
+
|
|
68
|
+
## Report template
|
|
69
|
+
|
|
70
|
+
```markdown
|
|
71
|
+
## Summary
|
|
72
|
+
[Market/event read and top outcomes in one or two sentences.]
|
|
29
73
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
74
|
+
## Calls made
|
|
75
|
+
- Toolset: prediction_markets
|
|
76
|
+
- Endpoint(s): [exact endpoint names]
|
|
77
|
+
- Identifiers: [market/event/token/trader ids]
|
|
34
78
|
|
|
35
|
-
##
|
|
79
|
+
## Evidence
|
|
80
|
+
- Outcomes and prices: [per outcome, per venue]
|
|
81
|
+
- Liquidity/volume: [values + as-of]
|
|
82
|
+
- Provenance: [provider, fetched_at, observed_at/cache_age_ms, runtime status per call]
|
|
36
83
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
84
|
+
## Caveats
|
|
85
|
+
[Market probability is not truth, thin liquidity, stale stats, candidate ambiguity.]
|
|
86
|
+
|
|
87
|
+
## Next action
|
|
88
|
+
[Inspect selected market, holders, trades, or related events — only if needed.]
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Gotchas
|
|
92
|
+
|
|
93
|
+
- Market prices reflect trading and liquidity, not verified probability.
|
|
94
|
+
- Similar markets can have different resolution criteria — quote them when
|
|
95
|
+
comparing venues.
|
|
96
|
+
- Event-level and outcome-token-level data are not interchangeable.
|
|
97
|
+
|
|
98
|
+
## Evidence receipt (required)
|
|
99
|
+
|
|
100
|
+
End every Hive-backed answer with a compact receipt built from the `_hive`
|
|
101
|
+
object on each material tool response:
|
|
102
|
+
|
|
103
|
+
- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`
|
|
104
|
+
- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result
|
|
105
|
+
digests when present (self-checks, not signatures)
|
|
106
|
+
- `source`, `cache_status`, `truncated`, and any warnings
|
|
107
|
+
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
|
|
108
|
+
present in provider data
|
|
109
|
+
- material provider disagreements and how they were handled
|
|
110
|
+
- checks that were unavailable, gated, stale, truncated, or intentionally not run
|
|
111
|
+
- a `claims[]` citation from each material statement to exact receipt IDs
|
|
112
|
+
- one `coverage[]` entry for every canonical evidence phase, with each gap explained
|
|
113
|
+
|
|
114
|
+
Never turn missing evidence into a clean result, silently merge conflicting
|
|
115
|
+
provider values, or omit a degraded/fallback call from the receipt.
|
|
116
|
+
`observed_at` is Hive's first-observation/original cache-population time, and
|
|
117
|
+
`cache_age_ms: 0` only means newly retrieved by Hive. Use provider time, block,
|
|
118
|
+
slot, transaction, or candle close for source recency; if absent, mark it
|
|
119
|
+
unknown. Run `validate_task_result` before presenting the typed workflow result;
|
|
120
|
+
it checks structure but cannot authenticate an invented receipt.
|
|
40
121
|
|
|
41
122
|
## Runtime status handling
|
|
42
123
|
|
|
43
|
-
If a market search succeeds but stats are `degraded`, return the candidates
|
|
44
|
-
label the missing market details clearly.
|
|
124
|
+
If a market search succeeds but stats are `degraded`, return the candidates
|
|
125
|
+
and label the missing market details clearly.
|
|
126
|
+
|
|
127
|
+
## Hand-offs
|
|
128
|
+
|
|
129
|
+
- General crypto market prices → `hive-market-research`.
|
|
130
|
+
- A trader's full wallet activity → `hive-wallet-investigation`.
|
|
131
|
+
- Standing "alert me when odds move" requests → `hive-stateful-monitoring`.
|
|
@@ -4,12 +4,14 @@
|
|
|
4
4
|
{
|
|
5
5
|
"id": 1,
|
|
6
6
|
"prompt": "Find active prediction markets about the next Fed decision and show the top outcomes with liquidity caveats.",
|
|
7
|
-
"expected_output": "Uses prediction_markets, searches markets/events first, resolves candidate ids, bounds results,
|
|
7
|
+
"expected_output": "Uses prediction_markets, searches markets/events first, resolves candidate ids, bounds results, reports price/liquidity/freshness caveats, and ends with a runtime evidence receipt.",
|
|
8
8
|
"files": [],
|
|
9
9
|
"assertions": [
|
|
10
10
|
"Chooses prediction_markets.",
|
|
11
|
+
"Selects event_landscape for event discovery or market_odds for an exact market and preserves route_id.",
|
|
11
12
|
"Searches markets/events before stats.",
|
|
12
|
-
"States market price is not ground truth."
|
|
13
|
+
"States market price is not ground truth.",
|
|
14
|
+
"Includes receipt ids and missing evidence."
|
|
13
15
|
]
|
|
14
16
|
},
|
|
15
17
|
{
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"query": "what are the odds on the next fed rate cut on polymarket",
|
|
4
|
+
"should_trigger": true
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"query": "find prediction markets about the 2026 world cup winner",
|
|
8
|
+
"should_trigger": true
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"query": "compare polymarket vs kalshi on the CPI print markets",
|
|
12
|
+
"should_trigger": true
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"query": "who are the biggest holders in this polymarket market",
|
|
16
|
+
"should_trigger": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"query": "that 70% odds number — how much liquidity is actually behind it",
|
|
20
|
+
"should_trigger": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"query": "show recent trades on this market id",
|
|
24
|
+
"should_trigger": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"query": "whats the POL token trading at",
|
|
28
|
+
"should_trigger": false
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"query": "what does this trader's wallet hold outside polymarket",
|
|
32
|
+
"should_trigger": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"query": "explain how prediction markets resolve disputes",
|
|
36
|
+
"should_trigger": false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"query": "alert me when these odds move 10 points",
|
|
40
|
+
"should_trigger": false
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"query": "is using polymarket legal in my country",
|
|
44
|
+
"should_trigger": false
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"query": "top defi protocols by tvl",
|
|
48
|
+
"should_trigger": false
|
|
49
|
+
}
|
|
50
|
+
]
|
|
@@ -1,34 +1,48 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hive-query
|
|
3
|
-
description:
|
|
3
|
+
description: Default entry point for any live crypto question when Hive MCP is connected — prices, wallets, tokens, DeFi, NFTs, Solana, security, markets, DEX, networks, prediction markets. Use it whenever the answer depends on live or on-chain data instead of answering from memory, even if the user never mentions Hive. Routes intent to a canonical Hive task toolset, then schema lookup and bounded endpoint invocation. If a domain-specific hive-* skill clearly matches, prefer it; if routing cannot surface the exact tool or schema, hand off to hive-tool-discovery.
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
package: "@hiveintelligence/agent-skills"
|
|
7
7
|
category: "discovery"
|
|
8
8
|
requires_network: "true"
|
|
9
|
-
version:
|
|
9
|
+
version: 1.3.0
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# hive-query — Route Crypto Questions Through Hive
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
2. Select one canonical task toolset
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
Route the user's crypto question to one canonical Hive task toolset, inspect
|
|
15
|
+
the exact schema, invoke the endpoint with bounded arguments, and answer with
|
|
16
|
+
provenance. Do not answer from model memory when the answer depends on live
|
|
17
|
+
data.
|
|
18
|
+
|
|
19
|
+
## Routing procedure
|
|
20
|
+
|
|
21
|
+
1. Read the compact `hive://toolsets` index or call `search_tools` with the
|
|
22
|
+
user's intent. Use its tool and toolset cursors instead of requesting a
|
|
23
|
+
broad catalog.
|
|
24
|
+
2. Select one canonical task toolset and the single compact `routes[]` entry
|
|
25
|
+
whose trigger/question matches the user's intent. Preserve its `route_id`;
|
|
26
|
+
broad `coverageCatalog` arrays are not an execution plan.
|
|
27
|
+
3. Ask for the route's missing identifiers before execution.
|
|
28
|
+
4. Follow its ordered steps, calling `get_api_endpoint_schema` for each exact
|
|
29
|
+
primary tool. Use a fallback only under that step's published condition.
|
|
30
|
+
5. Call reads through `invoke_api_endpoint`. For an explicitly approved
|
|
31
|
+
Hive-native state change, use `invoke_stateful_endpoint`; never auto-approve
|
|
32
|
+
that router.
|
|
33
|
+
6. Stop when the route's stop condition is met or four material calls are used.
|
|
34
|
+
Copy server-returned `_hive` blocks into the task receipt and run
|
|
35
|
+
`validate_task_result` with the selected `route_id` before presenting a structured result.
|
|
36
|
+
7. Report source recency, provider/runtime status, and missing-data caveats.
|
|
37
|
+
|
|
38
|
+
Read `references/root-mcp-workflow.md` when you need the bigger picture: how
|
|
39
|
+
the root MCP endpoint is organized, what resources exist, or how to navigate
|
|
40
|
+
without loading the full provider catalog into context.
|
|
29
41
|
|
|
30
42
|
## Canonical task toolsets
|
|
31
43
|
|
|
44
|
+
`hive://toolsets` is authoritative; this table is the routing shortcut.
|
|
45
|
+
|
|
32
46
|
| Intent | Toolset id |
|
|
33
47
|
| --- | --- |
|
|
34
48
|
| Price, exchange, OHLC, liquidity, derivatives | `market_research` |
|
|
@@ -44,19 +58,19 @@ endpoint without loading the full provider catalog into context.
|
|
|
44
58
|
| Durable monitors, alerts, scheduled reports, agent memory | `stateful_monitoring` |
|
|
45
59
|
| Ambiguous request or schema lookup | `search_discovery` |
|
|
46
60
|
|
|
47
|
-
##
|
|
61
|
+
## Worked example
|
|
48
62
|
|
|
49
63
|
User: "Investigate this wallet on Ethereum."
|
|
50
64
|
|
|
51
65
|
Use `wallet_investigation`. Required identifiers are wallet address and chain.
|
|
52
|
-
Then
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
66
|
+
Then: `search_tools` for `wallet investigation ethereum balances`,
|
|
67
|
+
`get_api_endpoint_schema` for the selected endpoint, then
|
|
68
|
+
`invoke_api_endpoint` with schema-valid address and chain arguments. Do not
|
|
69
|
+
hardcode endpoint names from memory — the catalog changes and search is
|
|
70
|
+
authoritative.
|
|
57
71
|
|
|
58
|
-
|
|
59
|
-
|
|
72
|
+
Add transfer, NFT, or DeFi-position tools only when the user's question needs
|
|
73
|
+
that detail.
|
|
60
74
|
|
|
61
75
|
## Report template
|
|
62
76
|
|
|
@@ -73,8 +87,8 @@ Use this structure for Hive-backed answers:
|
|
|
73
87
|
|
|
74
88
|
## Evidence
|
|
75
89
|
- Provider/source: [provider names]
|
|
76
|
-
- Freshness: [Hive
|
|
77
|
-
- Runtime status: [ok/missing_key/plan_required/rate_limited/degraded/failing]
|
|
90
|
+
- Freshness: [Hive fetched_at/observed_at/cache_age_ms plus provider timestamp, block, or slot; upstream recency unknown if absent]
|
|
91
|
+
- Runtime status: [ok/invalid_input/missing_key/plan_required/rate_limited/degraded/failing]
|
|
78
92
|
|
|
79
93
|
## Caveats
|
|
80
94
|
[Fallbacks, stale data, unavailable providers, missing identifiers, limits.]
|
|
@@ -83,17 +97,49 @@ Use this structure for Hive-backed answers:
|
|
|
83
97
|
[Only include if a retry, deeper check, or user choice is needed.]
|
|
84
98
|
```
|
|
85
99
|
|
|
100
|
+
## Evidence receipt (required)
|
|
101
|
+
|
|
102
|
+
End every Hive-backed answer with a compact receipt built from the `_hive`
|
|
103
|
+
object on each material tool response:
|
|
104
|
+
|
|
105
|
+
- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`
|
|
106
|
+
- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result
|
|
107
|
+
digests when present (self-checks, not signatures)
|
|
108
|
+
- `source`, `cache_status`, `truncated`, and any warnings
|
|
109
|
+
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
|
|
110
|
+
present in provider data
|
|
111
|
+
- material provider disagreements and how they were handled
|
|
112
|
+
- checks that were unavailable, gated, stale, truncated, or intentionally not run
|
|
113
|
+
- a `claims[]` citation from each material statement to exact receipt IDs
|
|
114
|
+
- one `coverage[]` entry for every canonical evidence phase, with each gap explained
|
|
115
|
+
|
|
116
|
+
Never turn missing evidence into a clean result, silently merge conflicting
|
|
117
|
+
provider values, or omit a degraded/fallback call from the receipt.
|
|
118
|
+
`observed_at` is Hive's first-observation/original cache-population time, and
|
|
119
|
+
`cache_age_ms: 0` only means newly retrieved by Hive. Use provider time, block,
|
|
120
|
+
slot, transaction, or candle close for upstream recency; if absent, mark it
|
|
121
|
+
unknown. `validate_task_result` checks structure but cannot authenticate an
|
|
122
|
+
invented receipt.
|
|
123
|
+
|
|
86
124
|
## Runtime status handling
|
|
87
125
|
|
|
88
|
-
Hive uses `ok`, `
|
|
89
|
-
`failing`. Do not treat a non-`ok` provider
|
|
90
|
-
|
|
126
|
+
Hive uses `ok`, `invalid_input`, `missing_key`, `plan_required`,
|
|
127
|
+
`rate_limited`, `degraded`, and `failing`. Do not treat a non-`ok` provider
|
|
128
|
+
state as a missing tool. Tell
|
|
129
|
+
the user which task/tool failed, why, and what can be retried or upgraded.
|
|
91
130
|
|
|
92
131
|
## Guardrails
|
|
93
132
|
|
|
94
133
|
- Never invent token, wallet, market, or event identifiers.
|
|
95
|
-
- Prefer exact contract addresses, wallet addresses, pair addresses, market
|
|
96
|
-
or exchange ids over fuzzy names.
|
|
134
|
+
- Prefer exact contract addresses, wallet addresses, pair addresses, market
|
|
135
|
+
ids, or exchange ids over fuzzy names.
|
|
97
136
|
- Keep raw provider endpoints callable; task toolsets are only the selection
|
|
98
137
|
layer.
|
|
99
|
-
- If a tool is absent from
|
|
138
|
+
- If a tool is absent from this skill, use `search_tools` instead of guessing.
|
|
139
|
+
|
|
140
|
+
## Hand-offs
|
|
141
|
+
|
|
142
|
+
- A domain-specific hive-* skill matches the question → prefer it; this skill
|
|
143
|
+
is the generalist entry point.
|
|
144
|
+
- Routing cannot surface the exact tool or schema → `hive-tool-discovery`.
|
|
145
|
+
- The user wants Hive to keep watching something → `hive-stateful-monitoring`.
|
|
@@ -3,13 +3,15 @@
|
|
|
3
3
|
"evals": [
|
|
4
4
|
{
|
|
5
5
|
"id": 1,
|
|
6
|
-
"prompt": "Use Hive MCP to investigate whether wallet
|
|
7
|
-
"expected_output": "Routes through wallet_investigation, requests or infers eth-mainnet, looks up schemas before
|
|
6
|
+
"prompt": "Use Hive MCP to investigate whether wallet 0x28C6c06298d514Db089934071355E5743bf21d60 has meaningful Ethereum token activity. Show the tools you would call and the caveats.",
|
|
7
|
+
"expected_output": "Routes through wallet_investigation, loads its exact workflow policy, requests or infers eth-mainnet, looks up schemas before bounded read calls, obeys the material-call budget and stop conditions, avoids inventing activity, and ends with a structurally validated receipt containing provider source-recency evidence, runtime/cache/fallback state, and server-minted receipt ids for every material call.",
|
|
8
8
|
"files": [],
|
|
9
9
|
"assertions": [
|
|
10
10
|
"Mentions wallet_investigation or the wallet task toolset.",
|
|
11
|
+
"Selects wallet_investigation plus the matching portfolio_snapshot or recent_activity route and preserves route_id.",
|
|
11
12
|
"Uses get_api_endpoint_schema before invoke_api_endpoint.",
|
|
12
|
-
"Reports provider/runtime status and does not answer from memory."
|
|
13
|
+
"Reports provider/runtime status and does not answer from memory.",
|
|
14
|
+
"Includes an evidence receipt with exact _hive receipt ids and uses validate_task_result."
|
|
13
15
|
]
|
|
14
16
|
},
|
|
15
17
|
{
|
|
@@ -30,8 +32,8 @@
|
|
|
30
32
|
"files": [],
|
|
31
33
|
"assertions": [
|
|
32
34
|
"Chooses prediction_markets.",
|
|
33
|
-
"Uses search_tools or hive://toolsets before endpoint selection.",
|
|
34
|
-
"Reports
|
|
35
|
+
"Uses compact search_tools or hive://toolsets, then loads the exact prediction_markets workflow before endpoint selection.",
|
|
36
|
+
"Reports provider source recency separately from Hive observed_at/cache_age_ms and marks upstream recency unknown when absent."
|
|
35
37
|
]
|
|
36
38
|
}
|
|
37
39
|
]
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"query": "whats the price of eth right now and the 24h change",
|
|
4
|
+
"should_trigger": true
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"query": "can you check what the top crypto gainers are today? i think hive is connected",
|
|
8
|
+
"should_trigger": true
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"query": "my friend says AVAX activity is exploding, can you check the actual live numbers",
|
|
12
|
+
"should_trigger": true
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"query": "what can you tell me about the token at 0x6982508145454Ce325dDbE47a25d4ec3d2311933",
|
|
16
|
+
"should_trigger": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"query": "pull live funding rates for btc perps and tell me whats crowded",
|
|
20
|
+
"should_trigger": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"query": "how many active polymarket markets are about AI right now",
|
|
24
|
+
"should_trigger": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"query": "explain how AMMs work, no need to look anything up",
|
|
28
|
+
"should_trigger": false
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"query": "write a python script that calls the hive REST api every morning",
|
|
32
|
+
"should_trigger": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"query": "add hive mcp to cursor for me",
|
|
36
|
+
"should_trigger": false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"query": "I lost my hive api key, help me get a new one",
|
|
40
|
+
"should_trigger": false
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"query": "watch this wallet and alert me on big moves going forward",
|
|
44
|
+
"should_trigger": false
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"query": "summarize this whitepaper pdf i downloaded",
|
|
48
|
+
"should_trigger": false
|
|
49
|
+
}
|
|
50
|
+
]
|
|
@@ -10,36 +10,48 @@ only pull deeper schemas when needed.
|
|
|
10
10
|
flowchart LR
|
|
11
11
|
User["User crypto question"] --> Agent["Agent with Hive skill"]
|
|
12
12
|
Agent --> Root["Root MCP /mcp"]
|
|
13
|
-
Root --> Resources["
|
|
14
|
-
Root --> MetaTools["Meta tools:
|
|
13
|
+
Root --> Resources["Compact indexes + exact templates: hive://toolsets/{id}, hive://skills/{name}"]
|
|
14
|
+
Root --> MetaTools["Meta tools: search, schema, read router, stateful router, validator"]
|
|
15
15
|
Root --> Toolsets["Task toolsets"]
|
|
16
16
|
MetaTools --> Registry["Provider endpoint registry"]
|
|
17
|
-
Registry --> Providers["CoinGecko, DeFiLlama, GoPlus, Codex (Polymarket/Kalshi), CCXT, Tenderly, Moralis, Helius, Alchemy"]
|
|
18
|
-
Agent --> Answer["
|
|
17
|
+
Registry --> Providers["CoinGecko, DeFiLlama, GoPlus, Codex (Polymarket/Kalshi), CCXT, Tenderly, Moralis, Helius, Alchemy, Hyperliquid, Open Data Fetch"]
|
|
18
|
+
Agent --> Answer["Validated answer with sources, source recency, runtime receipts"]
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
## Default agent loop
|
|
22
22
|
|
|
23
23
|
1. Start from user intent, not provider names.
|
|
24
|
-
2. Read `hive://toolsets` or call `search_tools`.
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
2. Read the compact `hive://toolsets` index or call `search_tools`. Search
|
|
25
|
+
returns at most three compact toolsets by default and paginates tools and
|
|
26
|
+
toolsets separately.
|
|
27
|
+
3. Select the closest task toolset and its one best matching compact
|
|
28
|
+
`routes[]` entry. Preserve `route_id`; use `coverageCatalog` only for
|
|
29
|
+
long-tail discovery, never as a call list.
|
|
30
|
+
4. Ask for the route's required identifiers that are missing: chain, wallet, contract,
|
|
27
31
|
token id, pair id, protocol slug, market id, or time window.
|
|
28
32
|
5. Call `get_api_endpoint_schema` for each exact endpoint before execution.
|
|
29
|
-
6. Call `invoke_api_endpoint` with bounded arguments.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
+
6. Call reads through `invoke_api_endpoint` with bounded arguments. For a
|
|
34
|
+
Hive-native write, explain the effect, obtain explicit user approval, and
|
|
35
|
+
use `invoke_stateful_endpoint`. Respect `limit`, `page`, `per_page`,
|
|
36
|
+
`offset`, time windows, and response-size safeguards.
|
|
37
|
+
7. Follow the route's ordered primary calls, conditional per-call fallbacks,
|
|
38
|
+
four-call cap, and stop condition. Never call every fallback by default.
|
|
39
|
+
8. Copy each material response's `_hive` block into the task receipt, call
|
|
40
|
+
`validate_task_result` with `route_id`, and report provider, source recency,
|
|
41
|
+
fallback/degraded state, missing evidence, and caveats. Structural
|
|
42
|
+
validation does not authenticate invented receipts.
|
|
33
43
|
|
|
34
44
|
## Root versus category endpoints
|
|
35
45
|
|
|
36
|
-
- Root `/mcp`
|
|
37
|
-
|
|
46
|
+
- Root `/mcp` exposes five tools: compact search, schema lookup, separate
|
|
47
|
+
read/write routers, and task-result validation.
|
|
38
48
|
- Category endpoints expose direct scoped tools for clients that explicitly
|
|
39
49
|
need broad `tools/list` results.
|
|
40
50
|
- Do not treat root `tools/list` as the full product. Full provider coverage is
|
|
41
|
-
discoverable through resources,
|
|
42
|
-
|
|
51
|
+
discoverable through resources, hidden compatibility listings, scoped
|
|
52
|
+
category endpoints, schema lookup, and
|
|
53
|
+
`invoke_api_endpoint` for reads or `invoke_stateful_endpoint` for explicitly
|
|
54
|
+
approved Hive state changes.
|
|
43
55
|
|
|
44
56
|
## Reporting standard
|
|
45
57
|
|
|
@@ -48,7 +60,16 @@ Every answer that used Hive should include enough context to debug the result:
|
|
|
48
60
|
- Toolset or endpoint used.
|
|
49
61
|
- Provider or data source.
|
|
50
62
|
- Chain/network and identifiers.
|
|
51
|
-
-
|
|
52
|
-
|
|
53
|
-
`
|
|
63
|
+
- Source recency from provider time, block, slot, transaction, or candle close.
|
|
64
|
+
`_hive.observed_at` is Hive first-observation/original cache time;
|
|
65
|
+
`cache_age_ms: 0` does not prove upstream freshness. Mark source recency
|
|
66
|
+
unknown when no provider marker exists.
|
|
67
|
+
- Runtime state: `ok`, `invalid_input`, `missing_key`, `plan_required`,
|
|
68
|
+
`rate_limited`, `degraded`, or `failing`.
|
|
54
69
|
- Any fallback, cache use, unavailable provider, or omitted data.
|
|
70
|
+
- Server-minted receipt IDs for every material call plus the
|
|
71
|
+
`validate_task_result` outcome.
|
|
72
|
+
- A `claims[]` citation for each material statement and one `coverage[]`
|
|
73
|
+
entry for every canonical evidence phase, including explicit gaps.
|
|
74
|
+
- Server/build version and input/result SHA-256 self-checks when present. These
|
|
75
|
+
digests are not signatures.
|