hive-intelligence 1.1.4 → 1.4.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 +30 -37
- 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-WMWFWXC7.js +16 -0
- package/build/{auth-Q5Q24IRI.js → auth-HRFQWQMZ.js} +3 -11
- package/build/browser-auth-KXIO5BHM.js +20 -0
- package/build/{cache-T6KC5YEY.js → cache-TBDQ7QBU.js} +2 -2
- package/build/chunk-3OZFBWFK.js +180 -0
- package/build/{chunk-POT2MBEK.js → chunk-6PC3HUAK.js} +10 -3
- package/build/{chunk-NP6NSOG2.js → chunk-725R3KLJ.js} +26 -3
- package/build/chunk-7DYHWY4Y.js +125 -0
- package/build/{chunk-ZXB53E7H.js → chunk-AEU43ACS.js} +31 -7
- package/build/chunk-AQQAPAER.js +197 -0
- package/build/chunk-EPF36Q3Z.js +71 -0
- package/build/{upgrade-DTUIHVPS.js → chunk-GHCYCBA3.js} +4 -5
- 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-7JWXBKEJ.js → chunk-P7NLFSZQ.js} +9 -60
- 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-FH3YGSY5.js → chunk-TNQ7GJ6Q.js} +0 -59
- package/build/{chunk-5XXI25JE.js → chunk-TVQJY47C.js} +12 -160
- package/build/{chunk-JTUKQWIO.js → chunk-UFTNBCSA.js} +35515 -14994
- package/build/{chunk-ZCU7XQKF.js → chunk-ZXKFJQDE.js} +7 -1
- package/build/cli.js +3342 -3423
- 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-GHUAUFS2.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-RG542NWG.js +427 -0
- package/build/mcpServer-D7OXUDU5.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-K3IT7DS4.js} +3 -3
- package/build/server.js +6396 -3220
- 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-D72ZH6P5.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-4S5XT5JG.js +14 -0
- package/build/{version-I6HDAF4L.js → version-Z4HJL4VV.js} +4 -2
- package/build/{watch-YNN255QX.js → watch-IOSRSCFE.js} +8 -7
- package/package.json +73 -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/api-client-EPF6FD7A.js +0 -28
- package/build/browser-auth-VPF5LZMZ.js +0 -8
- package/build/chunk-4F5CI6LX.js +0 -340
- package/build/chunk-CEWCB5YS.js +0 -71
- package/build/chunk-GZPDEXO4.js +0 -126
- package/build/chunk-IZPAMRHP.js +0 -43
- package/build/init-all-5SKNV75X.js +0 -273
- package/build/mcpServer-5TKKSKJM.js +0 -21
|
@@ -1,42 +1,133 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hive-security-risk
|
|
3
|
-
description: Use this skill before
|
|
3
|
+
description: Use this skill before the user signs, approves, swaps, connects a wallet to a dApp, or touches an unknown contract, URL, or transaction payload — any "should I sign/approve/ape/connect" moment, even when the user only implies the transaction. Runs token, address, approval, phishing, and simulation risk checks and reports severity, evidence, and remediation instead of guessing. For research-style "is this token worth a look" questions use hive-token-diligence.
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
package: "@hiveintelligence/agent-skills"
|
|
7
7
|
category: "security"
|
|
8
8
|
requires_network: "true"
|
|
9
|
-
version: 1.
|
|
9
|
+
version: 1.4.0
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# hive-security-risk — Security Risk
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
Assess transaction-time risk — tokens, addresses, approvals, dApps, phishing,
|
|
15
|
+
simulations — and report severity, evidence, and remediation. Wrong "looks
|
|
16
|
+
fine" answers here cost users real money, so never conclude safety without a
|
|
17
|
+
tool-backed check.
|
|
16
18
|
|
|
17
|
-
## Task toolset
|
|
19
|
+
## Task toolset and identifiers
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
Toolset: `security_risk`. Read `hive://toolsets/security_risk` before
|
|
22
|
+
execution; it is authoritative for the current output schema, material-call
|
|
23
|
+
budget, phases, fallback condition, and stop conditions.
|
|
20
24
|
|
|
21
|
-
Required identifiers: chain
|
|
22
|
-
dApp URL, or transaction payload
|
|
25
|
+
Required identifiers depend on the risk object: chain plus token contract,
|
|
26
|
+
wallet address, spender, dApp URL, or transaction payload. Never invent a
|
|
27
|
+
spender, owner, calldata, or URL — ask for whatever is missing.
|
|
28
|
+
|
|
29
|
+
Before choosing endpoints, select exactly one matching entry from the exact
|
|
30
|
+
workflow's routes[]. Follow its ordered steps, use a fallback only under that
|
|
31
|
+
step's published condition, stop at four material calls, and preserve the
|
|
32
|
+
selected route_id in the typed result. The broad coverageCatalog is discovery
|
|
33
|
+
coverage, not an execution plan.
|
|
23
34
|
|
|
24
35
|
## Procedure
|
|
25
36
|
|
|
26
|
-
|
|
27
|
-
|
|
37
|
+
1. Identify the risk object: token, address, approval, dApp, contract, or
|
|
38
|
+
transaction payload.
|
|
39
|
+
2. Call `search_tools` for the matching security/risk capabilities.
|
|
40
|
+
3. Call `get_api_endpoint_schema` for each endpoint before calling it.
|
|
41
|
+
4. Run the narrowest risk check first; add simulation or approval analysis
|
|
42
|
+
only when the required payload/owner details exist.
|
|
43
|
+
5. For Solana, send only the base64 serialized transaction to the GoPlus
|
|
44
|
+
pre-execution check. Never ask for or forward signing secrets.
|
|
45
|
+
6. Report severity, evidence, and remediation steps.
|
|
46
|
+
7. Do not provide signing guidance while a critical risk is unresolved.
|
|
47
|
+
|
|
48
|
+
## Bounded calls
|
|
49
|
+
|
|
50
|
+
- Keep risk checks scoped to the provided contract, address, or payload.
|
|
51
|
+
- Avoid broad scans unless the user explicitly asks for an audit.
|
|
52
|
+
- Use severity and evidence rather than unsupported certainty.
|
|
53
|
+
|
|
54
|
+
## Worked example
|
|
55
|
+
|
|
56
|
+
User: "A dApp wants unlimited approval of my USDC
|
|
57
|
+
(0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) on Ethereum to spender
|
|
58
|
+
0x… — should I sign?"
|
|
59
|
+
|
|
60
|
+
1. Collect chain, token contract, owner wallet, and spender — all four are
|
|
61
|
+
required before any approval analysis.
|
|
62
|
+
2. `search_tools` → `{"query": "token approval allowance spender risk ethereum", "limit": 5}`
|
|
63
|
+
3. `get_api_endpoint_schema` for the approval/address-risk endpoints returned,
|
|
64
|
+
then `invoke_api_endpoint` with schema-valid arguments.
|
|
65
|
+
4. Report severity and remediation (for example "revoke, or approve a bounded
|
|
66
|
+
amount") using the template below. If the spender flags critical risk, say
|
|
67
|
+
"do not sign" plainly.
|
|
68
|
+
|
|
69
|
+
## Report template
|
|
70
|
+
|
|
71
|
+
```markdown
|
|
72
|
+
## Summary
|
|
73
|
+
[Risk level and the safest recommendation in one or two sentences.]
|
|
74
|
+
|
|
75
|
+
## Calls made
|
|
76
|
+
- Toolset: security_risk
|
|
77
|
+
- Endpoint(s): [exact endpoint names]
|
|
78
|
+
- Identifiers: [chain, risk object, addresses, payload]
|
|
28
79
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
80
|
+
## Evidence
|
|
81
|
+
- Flags: [provider risk flags with the fields that triggered them]
|
|
82
|
+
- Simulation/approval results: [if run]
|
|
83
|
+
- Provenance: [provider, fetched_at, observed_at/cache_age_ms, runtime status per call]
|
|
33
84
|
|
|
34
|
-
##
|
|
85
|
+
## Caveats
|
|
86
|
+
[Missing payload, incomplete provider coverage, degraded/rate-limited provider.]
|
|
35
87
|
|
|
36
|
-
|
|
37
|
-
|
|
88
|
+
## Next action
|
|
89
|
+
[Revoke approval, avoid signing, retry simulation, or provide missing payload.]
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Gotchas
|
|
93
|
+
|
|
94
|
+
- A token can pass metadata checks and still be risky.
|
|
95
|
+
- `plan_required` means the tool exists but cannot run under current upstream
|
|
96
|
+
credentials — say the check is unavailable, never that the asset is safe.
|
|
97
|
+
- Do not provide signing instructions when a critical risk is unresolved.
|
|
98
|
+
|
|
99
|
+
## Evidence receipt (required)
|
|
100
|
+
|
|
101
|
+
End every Hive-backed answer with a compact receipt built from the `_hive`
|
|
102
|
+
object on each material tool response:
|
|
103
|
+
|
|
104
|
+
- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`
|
|
105
|
+
- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result
|
|
106
|
+
digests when present (self-checks, not signatures)
|
|
107
|
+
- `source`, `cache_status`, `truncated`, and any warnings
|
|
108
|
+
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
|
|
109
|
+
present in provider data
|
|
110
|
+
- material provider disagreements and how they were handled
|
|
111
|
+
- checks that were unavailable, gated, stale, truncated, or intentionally not run
|
|
112
|
+
- a `claims[]` citation from each material statement to exact receipt IDs
|
|
113
|
+
- one `coverage[]` entry for every canonical evidence phase, with each gap explained
|
|
114
|
+
|
|
115
|
+
Never turn missing evidence into a clean result, silently merge conflicting
|
|
116
|
+
provider values, or omit a degraded/fallback call from the receipt.
|
|
117
|
+
`observed_at` is Hive's first-observation/original cache-population time, and
|
|
118
|
+
`cache_age_ms: 0` only means newly retrieved by Hive. Use provider time, block,
|
|
119
|
+
slot, transaction, or candle close for source recency; if absent, mark it
|
|
120
|
+
unknown. Run `validate_task_result` before presenting the typed workflow result;
|
|
121
|
+
it checks structure but cannot authenticate an invented receipt.
|
|
38
122
|
|
|
39
123
|
## Runtime status handling
|
|
40
124
|
|
|
41
|
-
`rate_limited` and `degraded` can be retried with backoff. `plan_required`
|
|
42
|
-
the tool exists but the upstream account cannot execute it right now.
|
|
125
|
+
`rate_limited` and `degraded` can be retried with backoff. `plan_required`
|
|
126
|
+
means the tool exists but the upstream account cannot execute it right now. A
|
|
127
|
+
blocked check is a caveat in the report, not a clean bill of health.
|
|
128
|
+
|
|
129
|
+
## Hand-offs
|
|
130
|
+
|
|
131
|
+
- Broader "is this token a good buy" research → `hive-token-diligence`.
|
|
132
|
+
- Wallet-wide activity review → `hive-wallet-investigation`.
|
|
133
|
+
- Solana mint or transaction safety → `hive-solana-analysis`.
|
|
@@ -4,12 +4,14 @@
|
|
|
4
4
|
{
|
|
5
5
|
"id": 1,
|
|
6
6
|
"prompt": "Is it safe to approve this spender for my ERC-20 token?",
|
|
7
|
-
"expected_output": "Uses security_risk, asks for chain/token/owner/spender if missing, checks approval risk,
|
|
7
|
+
"expected_output": "Uses security_risk, asks for chain/token/owner/spender if missing, checks approval risk, avoids signing guidance until risk is resolved, and ends with a runtime evidence receipt.",
|
|
8
8
|
"files": [],
|
|
9
9
|
"assertions": [
|
|
10
10
|
"Chooses security_risk.",
|
|
11
|
+
"Selects approval_risk for this intent and uses only its conditional fallback when required.",
|
|
11
12
|
"Requests missing approval identifiers.",
|
|
12
|
-
"Does not tell the user to sign while risk is unresolved."
|
|
13
|
+
"Does not tell the user to sign while risk is unresolved.",
|
|
14
|
+
"Includes receipt ids and any unavailable checks."
|
|
13
15
|
]
|
|
14
16
|
},
|
|
15
17
|
{
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"query": "a dapp wants unlimited approval of my USDC to spender 0x…, should i sign?",
|
|
4
|
+
"should_trigger": true
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"query": "is mintify-airdrop dot xyz legit? i was about to connect my wallet",
|
|
8
|
+
"should_trigger": true
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"query": "i got this transaction payload from a swap site, simulate it before i send it",
|
|
12
|
+
"should_trigger": true
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"query": "is the token at 0x6982508145454Ce325dDbE47a25d4ec3d2311933 a honeypot?",
|
|
16
|
+
"should_trigger": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"query": "check if this address that messaged me is flagged for scams before i reply",
|
|
20
|
+
"should_trigger": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"query": "which of my open approvals are risky and should be revoked?",
|
|
24
|
+
"should_trigger": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"query": "is PEPE worth buying? run diligence on holders and liquidity",
|
|
28
|
+
"should_trigger": false
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"query": "what does this wallet hold across defi",
|
|
32
|
+
"should_trigger": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"query": "audit my solidity contract source code for reentrancy bugs",
|
|
36
|
+
"should_trigger": false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"query": "explain how approval phishing scams work conceptually",
|
|
40
|
+
"should_trigger": false
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"query": "whats the floor price of this nft collection",
|
|
44
|
+
"should_trigger": false
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"query": "compare aave vs compound tvl",
|
|
48
|
+
"should_trigger": false
|
|
49
|
+
}
|
|
50
|
+
]
|
|
@@ -1,42 +1,138 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hive-solana-analysis
|
|
3
|
-
description: Use this skill for Solana-
|
|
3
|
+
description: Use this skill for anything Solana-native — wallets, mints, SPL token accounts, DAS assets, parsed transactions, priority fees, pump.fun launches, Solana NFTs, Solana token risk. Prefer it over EVM-shaped skills whenever the identifier is a base58 address, mint, or transaction signature, even if the user never says "Solana". Uses Solana-native identifiers and providers instead of EVM assumptions.
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
package: "@hiveintelligence/agent-skills"
|
|
7
7
|
category: "solana"
|
|
8
8
|
requires_network: "true"
|
|
9
|
-
version: 1.
|
|
9
|
+
version: 1.4.0
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# hive-solana-analysis — Solana Analysis
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
Analyze Solana wallets, mints, SPL accounts, DAS assets, parsed transactions,
|
|
15
|
+
priority fees, and launch data with Solana-native tools — never EVM
|
|
16
|
+
assumptions.
|
|
16
17
|
|
|
17
|
-
## Task toolset
|
|
18
|
+
## Task toolset and identifiers
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
Toolset: `solana_analysis`. Read `hive://toolsets/solana_analysis` 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
|
|
24
|
+
- Required: Solana wallet, mint, token account, asset id, program id, or
|
|
25
|
+
transaction signature.
|
|
26
|
+
- Optional: slot/time window, owner, collection, token filter.
|
|
22
27
|
|
|
23
|
-
|
|
28
|
+
Wallets, mints, token accounts, and asset ids are different identifier types —
|
|
29
|
+
classify before selecting tools. Do not apply EVM address, chain-id, or
|
|
30
|
+
approval assumptions to Solana requests.
|
|
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.
|
|
24
37
|
|
|
25
|
-
|
|
26
|
-
handling, DAS/SPL routing, priority-fee context, or a structured Solana report.
|
|
38
|
+
## Procedure
|
|
27
39
|
|
|
28
|
-
1.
|
|
40
|
+
1. Classify the identifier: wallet, mint, token account, asset, program, or
|
|
29
41
|
transaction signature.
|
|
30
|
-
2.
|
|
31
|
-
|
|
32
|
-
|
|
42
|
+
2. Call `search_tools` for Solana wallet, SPL token, DAS, parsed-transaction,
|
|
43
|
+
priority-fee, or launch-data capabilities.
|
|
44
|
+
3. Call `get_api_endpoint_schema` for each endpoint before calling it.
|
|
45
|
+
4. Use wallet paths for owner/balance/history questions; mint/asset paths for
|
|
46
|
+
token/NFT questions.
|
|
47
|
+
5. Prefer Helius `getTransactionsForAddress` or `getTransfersByAddress` for
|
|
48
|
+
current address history. Treat Enhanced Transactions parsers as deprecated
|
|
49
|
+
compatibility surfaces.
|
|
50
|
+
6. For a prepared serialized transaction, run the GoPlus Solana pre-execution
|
|
51
|
+
check before signing guidance; never request a private key or seed phrase.
|
|
52
|
+
7. For execution context, include slot, priority fee, and freshness.
|
|
53
|
+
|
|
54
|
+
## Bounded calls
|
|
55
|
+
|
|
56
|
+
- Limit parsed history, asset lists, and token accounts.
|
|
57
|
+
- Include slot or fetched time where available.
|
|
58
|
+
- Avoid multi-provider mixing without source labels.
|
|
59
|
+
|
|
60
|
+
## Worked example
|
|
61
|
+
|
|
62
|
+
User: "This pump.fun token is mooning — can you check the mint
|
|
63
|
+
<base58 mint> for safety and who holds it?"
|
|
64
|
+
|
|
65
|
+
1. Classify: a base58 mint → token/security and asset paths, not wallet paths.
|
|
66
|
+
2. `search_tools` → `{"query": "solana mint token security holders launch data", "limit": 5}`
|
|
67
|
+
3. `get_api_endpoint_schema` for the mint-security and holder endpoints
|
|
68
|
+
returned, then `invoke_api_endpoint` with schema-valid arguments.
|
|
69
|
+
4. Report safety flags, holder concentration, and launch context with slot or
|
|
70
|
+
provider time, `observed_at`/`cache_age_ms`, and Hive retrieval time
|
|
71
|
+
(`fetched_at`).
|
|
72
|
+
|
|
73
|
+
If the user gives a wallet instead, use owner/balance/token-account paths and
|
|
74
|
+
add parsed history only for activity questions.
|
|
75
|
+
|
|
76
|
+
## Report template
|
|
77
|
+
|
|
78
|
+
```markdown
|
|
79
|
+
## Summary
|
|
80
|
+
[Solana-specific read in one or two sentences.]
|
|
33
81
|
|
|
34
|
-
##
|
|
82
|
+
## Calls made
|
|
83
|
+
- Toolset: solana_analysis
|
|
84
|
+
- Endpoint(s): [exact endpoint names]
|
|
85
|
+
- Identifiers: [wallet/mint/asset/signature, filters]
|
|
35
86
|
|
|
36
|
-
|
|
37
|
-
|
|
87
|
+
## Evidence
|
|
88
|
+
- Balances/assets/transactions/fees: [as relevant]
|
|
89
|
+
- Provenance: [provider, slot, fetched_at, observed_at/cache_age_ms, runtime status per call]
|
|
90
|
+
|
|
91
|
+
## Caveats
|
|
92
|
+
[Missing key, rate limit, DAS coverage, stale slot, truncated history.]
|
|
93
|
+
|
|
94
|
+
## Next action
|
|
95
|
+
[Transaction drilldown, asset verification, or risk check — only if needed.]
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Gotchas
|
|
99
|
+
|
|
100
|
+
- Wallets, mints, token accounts, and asset ids are different identifiers.
|
|
101
|
+
- Priority-fee estimates are time-sensitive.
|
|
102
|
+
- Parsed-transaction coverage can vary by provider and transaction type.
|
|
103
|
+
|
|
104
|
+
## Evidence receipt (required)
|
|
105
|
+
|
|
106
|
+
End every Hive-backed answer with a compact receipt built from the `_hive`
|
|
107
|
+
object on each material tool response:
|
|
108
|
+
|
|
109
|
+
- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`
|
|
110
|
+
- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result
|
|
111
|
+
digests when present (self-checks, not signatures)
|
|
112
|
+
- `source`, `cache_status`, `truncated`, and any warnings
|
|
113
|
+
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
|
|
114
|
+
present in provider data
|
|
115
|
+
- material provider disagreements and how they were handled
|
|
116
|
+
- checks that were unavailable, gated, stale, truncated, or intentionally not run
|
|
117
|
+
- a `claims[]` citation from each material statement to exact receipt IDs
|
|
118
|
+
- one `coverage[]` entry for every canonical evidence phase, with each gap explained
|
|
119
|
+
|
|
120
|
+
Never turn missing evidence into a clean result, silently merge conflicting
|
|
121
|
+
provider values, or omit a degraded/fallback call from the receipt.
|
|
122
|
+
`observed_at` is Hive's first-observation/original cache-population time, and
|
|
123
|
+
`cache_age_ms: 0` only means newly retrieved by Hive. Use provider time, block,
|
|
124
|
+
slot, transaction, or candle close for source recency; if absent, mark it
|
|
125
|
+
unknown. Run `validate_task_result` before presenting the typed workflow result;
|
|
126
|
+
it checks structure but cannot authenticate an invented receipt.
|
|
38
127
|
|
|
39
128
|
## Runtime status handling
|
|
40
129
|
|
|
41
|
-
Classify Helius or Solana provider issues as `
|
|
42
|
-
`degraded`, or `failing`. Ask for a retry only when the status
|
|
130
|
+
Classify Helius or other Solana provider issues as `invalid_input`,
|
|
131
|
+
`missing_key`, `plan_required`, `rate_limited`, `degraded`, or `failing`. Ask for a retry only when the status
|
|
132
|
+
is transient.
|
|
133
|
+
|
|
134
|
+
## Hand-offs
|
|
135
|
+
|
|
136
|
+
- EVM wallets and tokens → `hive-wallet-investigation` / `hive-token-diligence`.
|
|
137
|
+
- EVM NFT collections → `hive-nft-research`.
|
|
138
|
+
- Cross-chain market prices → `hive-market-research`.
|
|
@@ -4,12 +4,14 @@
|
|
|
4
4
|
{
|
|
5
5
|
"id": 1,
|
|
6
6
|
"prompt": "Analyze this Solana wallet's SPL token accounts and recent parsed activity.",
|
|
7
|
-
"expected_output": "Uses solana_analysis, treats the identifier as Solana-native, inspects schemas, bounds token/history calls, and
|
|
7
|
+
"expected_output": "Uses solana_analysis, treats the identifier as Solana-native, inspects schemas, bounds token/history calls, and ends with a slot/freshness/runtime receipt.",
|
|
8
8
|
"files": [],
|
|
9
9
|
"assertions": [
|
|
10
10
|
"Chooses solana_analysis.",
|
|
11
|
+
"Selects wallet_snapshot, token_risk, or transaction_readiness from routes[] before endpoint selection.",
|
|
11
12
|
"Avoids EVM assumptions.",
|
|
12
|
-
"Reports Solana-specific freshness such as slot or fetched time."
|
|
13
|
+
"Reports Solana-specific freshness such as slot or fetched time.",
|
|
14
|
+
"Includes receipt ids and unavailable checks."
|
|
13
15
|
]
|
|
14
16
|
},
|
|
15
17
|
{
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"query": "analyze this solana wallet's SPL token accounts and recent activity: 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",
|
|
4
|
+
"should_trigger": true
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"query": "is this pump.fun mint safe? looks like its mooning",
|
|
8
|
+
"should_trigger": true
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"query": "what are solana priority fees right now",
|
|
12
|
+
"should_trigger": true
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"query": "parse this solana tx signature and tell me what actually happened",
|
|
16
|
+
"should_trigger": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"query": "who are the top holders of this mint",
|
|
20
|
+
"should_trigger": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"query": "check this DAS asset / compressed nft on solana",
|
|
24
|
+
"should_trigger": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"query": "investigate this ethereum wallet 0x28C6c06298d514Db089934071355E5743bf21d60",
|
|
28
|
+
"should_trigger": false
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"query": "floor price of this eth nft collection",
|
|
32
|
+
"should_trigger": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"query": "whats SOL trading at",
|
|
36
|
+
"should_trigger": false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"query": "explain how solana proof of history works",
|
|
40
|
+
"should_trigger": false
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"query": "watch this mint and alert me if liquidity drops",
|
|
44
|
+
"should_trigger": false
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"query": "add hive to cursor",
|
|
48
|
+
"should_trigger": false
|
|
49
|
+
}
|
|
50
|
+
]
|
|
@@ -1,75 +1,120 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hive-stateful-monitoring
|
|
3
|
-
description: Use this skill
|
|
3
|
+
description: Use this skill whenever the user wants Hive to remember, watch, monitor, schedule, alert, or report on crypto state across sessions — "watch this wallet", "alert me if the price moves", "send me a daily digest", "what changed since last time", "remember that I care about X". Converts durable intent into Hive monitors, alerts, reports, and memory facts that Hive workers execute later. For one-off live questions use hive-query or a domain skill instead.
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
package: "@hiveintelligence/agent-skills"
|
|
7
7
|
category: "stateful-monitoring"
|
|
8
8
|
requires_network: "true"
|
|
9
|
-
version: 1.
|
|
9
|
+
version: 1.4.0
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
# hive-stateful-monitoring
|
|
12
|
+
# hive-stateful-monitoring — Stateful Monitoring
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
Turn durable intent — watch, alert, schedule, remember — into Hive monitors,
|
|
15
|
+
alerts, reports, and memory facts. Monitor execution happens on Hive workers
|
|
16
|
+
between sessions, not in the current chat, so the contract is: capture intent
|
|
17
|
+
precisely, confirm what was saved, and never pretend something was saved when
|
|
18
|
+
the call failed.
|
|
17
19
|
|
|
18
|
-
## Task toolset
|
|
20
|
+
## Task toolset and identifiers
|
|
19
21
|
|
|
20
|
-
|
|
22
|
+
Toolset: `stateful_monitoring`. Read `hive://toolsets/stateful_monitoring`
|
|
23
|
+
before execution; it is authoritative for the current output schema,
|
|
24
|
+
material-call budget, phases, fallback condition, stop conditions, and the
|
|
25
|
+
read/write routing policy.
|
|
21
26
|
|
|
22
|
-
Required identifiers: monitor kind and target object.
|
|
27
|
+
Required identifiers: monitor kind and target object. Worker-supported monitor
|
|
28
|
+
kinds are `wallet`, `token`, `protocol`, `market`, `prediction_market`,
|
|
29
|
+
`watchlist_digest`, `token_discovery_risk`, and `risk_watch`.
|
|
23
30
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
`X-Hive-Subject-Signature` headers. Never ask the model or end user to provide
|
|
30
|
-
`__hive_user_id` or `__hive_subject_id`; those are hidden server-injected args.
|
|
31
|
-
In TypeScript backends with controlled source or release-tarball access, use
|
|
32
|
-
`hive-mcp-client` with `subjectSigningSecret` and per-call
|
|
33
|
-
`subject`/`withSubject(...)` context instead of hand-building these headers.
|
|
31
|
+
Before choosing endpoints, select exactly one matching entry from the exact
|
|
32
|
+
workflow's routes[]. Follow its ordered steps, use a fallback only under that
|
|
33
|
+
step's published condition, stop at four material calls, and preserve the
|
|
34
|
+
selected route_id in the typed result. The broad coverageCatalog is discovery
|
|
35
|
+
coverage, not an execution plan.
|
|
34
36
|
|
|
35
37
|
## Procedure
|
|
36
38
|
|
|
37
|
-
1. Convert the user's durable intent into a monitor `kind`, `target`,
|
|
38
|
-
and `cadence`.
|
|
39
|
-
2.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
39
|
+
1. Convert the user's durable intent into a monitor `kind`, `target`,
|
|
40
|
+
`rules`, and `cadence`.
|
|
41
|
+
2. Inspect each exact endpoint schema. On the compact root, state reads route
|
|
42
|
+
through `invoke_api_endpoint`. Every create, update, archive, remember,
|
|
43
|
+
forget, acknowledge, or resolve action routes through
|
|
44
|
+
`invoke_stateful_endpoint`, which must never be auto-approved.
|
|
45
|
+
3. Call `hive_list_monitors` before creating — update instead of duplicating.
|
|
46
|
+
4. Describe the proposed state change to the user and obtain explicit approval.
|
|
47
|
+
5. Call `hive_create_monitor` for new watch requests, `hive_update_monitor`
|
|
48
|
+
to change cadence, rules, target, metadata, or status, and
|
|
49
|
+
`hive_archive_monitor` when the user asks Hive to stop watching.
|
|
50
|
+
6. For "what changed / what is alerting / what does Hive remember": use
|
|
51
|
+
`hive_get_monitor_runs`, `hive_list_observations`, `hive_list_alerts`,
|
|
52
|
+
`hive_get_latest_snapshot`, or `hive_generate_monitor_report`.
|
|
48
53
|
7. Use `hive_update_alert_status` when the user acknowledges, reopens, or
|
|
49
54
|
resolves an alert.
|
|
50
55
|
8. Use `hive_remember_fact`, `hive_list_memory_facts`, and
|
|
51
56
|
`hive_forget_memory_fact` for durable user-scoped facts that should appear
|
|
52
57
|
in future monitor reports.
|
|
53
|
-
9.
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
10. Explain that monitor execution is handled by Hive workers, not by the
|
|
57
|
-
current chat session. Worker-supported monitor kinds are wallet, token,
|
|
58
|
-
protocol, market, prediction_market, watchlist_digest,
|
|
59
|
-
token_discovery_risk, and risk_watch.
|
|
58
|
+
9. After any write, verify the persisted result, then confirm back to the user exactly what is being watched,
|
|
59
|
+
the rules, and the cadence — that confirmation is their only window to
|
|
60
|
+
catch a mis-captured intent before workers start running it.
|
|
60
61
|
|
|
61
|
-
|
|
62
|
+
For B2B adapters serving multiple tenants/end users, read
|
|
63
|
+
`references/b2b-subject-context.md` before using subject-scoped state or the
|
|
64
|
+
`hive_list_subjects` / `hive_get_subject` / `hive_archive_subject` /
|
|
65
|
+
`hive_list_subject_audit_events` tools.
|
|
62
66
|
|
|
63
|
-
|
|
64
|
-
create a wallet monitor with an Ethereum address target, a large-transfer rule,
|
|
65
|
-
and the requested cadence or default cadence.
|
|
67
|
+
## Worked example
|
|
66
68
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
User: "Watch this Ethereum wallet and tell me when it moves more than $100k."
|
|
70
|
+
|
|
71
|
+
1. `hive_list_monitors` — no existing monitor for this wallet.
|
|
72
|
+
2. `hive_create_monitor` with kind `wallet`, the Ethereum address as target,
|
|
73
|
+
a large-transfer rule with the $100k threshold, and the requested or
|
|
74
|
+
default cadence.
|
|
75
|
+
3. Confirm: "Watching 0x… on Ethereum; you'll get an alert on any transfer
|
|
76
|
+
over $100k; checks run on Hive workers at [cadence]."
|
|
77
|
+
|
|
78
|
+
User: "Send every customer a daily crypto watchlist brief."
|
|
79
|
+
|
|
80
|
+
Create a `watchlist_digest` monitor per B2B subject with saved wallets,
|
|
81
|
+
tokens, protocols, markets, and optional prediction markets in the target —
|
|
82
|
+
after reading the B2B reference above.
|
|
83
|
+
|
|
84
|
+
## Evidence receipt (required)
|
|
85
|
+
|
|
86
|
+
End every Hive-backed answer with a compact receipt built from the `_hive`
|
|
87
|
+
object on each material tool response:
|
|
88
|
+
|
|
89
|
+
- `provider`, `tool`, `fetched_at`, `observed_at`, `cache_age_ms`, and `runtime_status`
|
|
90
|
+
- `receipt_id`, `receipt_version`, server/build version, and SHA-256 input/result
|
|
91
|
+
digests when present (self-checks, not signatures)
|
|
92
|
+
- `source`, `cache_status`, `truncated`, and any warnings
|
|
93
|
+
- canonical chain/entity identifiers plus block, slot, transaction, or query ids
|
|
94
|
+
present in provider data
|
|
95
|
+
- material provider disagreements and how they were handled
|
|
96
|
+
- checks that were unavailable, gated, stale, truncated, or intentionally not run
|
|
97
|
+
- a `claims[]` citation from each material statement to exact receipt IDs
|
|
98
|
+
- one `coverage[]` entry for every canonical evidence phase, with each gap explained
|
|
99
|
+
|
|
100
|
+
Never turn missing evidence into a clean result, silently merge conflicting
|
|
101
|
+
provider values, or omit a degraded/fallback call from the receipt.
|
|
102
|
+
`observed_at` is Hive's first-observation/original cache-population time, not
|
|
103
|
+
necessarily upstream event time. Use provider time, block, slot, transaction,
|
|
104
|
+
or candle close for source recency; if absent, mark upstream recency unknown.
|
|
105
|
+
Run `validate_task_result` before presenting the typed workflow result; it
|
|
106
|
+
checks structure but cannot authenticate an invented receipt.
|
|
70
107
|
|
|
71
108
|
## Runtime status handling
|
|
72
109
|
|
|
73
|
-
If stateful tools return `missing_key` or an auth-required error, explain
|
|
74
|
-
hosted MCP authentication or the Hive persistence backend must be
|
|
75
|
-
before durable monitoring can be used. Do not pretend the monitor
|
|
110
|
+
If stateful tools return `missing_key` or an auth-required error, explain
|
|
111
|
+
that hosted MCP authentication or the Hive persistence backend must be
|
|
112
|
+
configured before durable monitoring can be used. Do not pretend the monitor
|
|
113
|
+
was saved.
|
|
114
|
+
|
|
115
|
+
## Hand-offs
|
|
116
|
+
|
|
117
|
+
- One-off live question, no durable intent → `hive-query` or the matching
|
|
118
|
+
domain skill.
|
|
119
|
+
- The data to monitor needs diligence first (which token? which pool?) → run
|
|
120
|
+
the domain skill, then create the monitor.
|