Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions skills/rootdata-crypto-plugin/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"name": "rootdata-crypto-plugin",
"description": "RootData is a leading Web3 data platform covering crypto projects, investors, funding data, and personnel movements. This skill is the OKX-dedicated integration, isolated from the standard RootData skill with its own API key namespace and endpoints.",
"version": "1.0.0",
"author": {
"name": "rootdata"
},
"license": "MIT",
"keywords": ["web3", "crypto"]
}
21 changes: 21 additions & 0 deletions skills/rootdata-crypto-plugin/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2026 rootdata

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
310 changes: 310 additions & 0 deletions skills/rootdata-crypto-plugin/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,310 @@
---
name: rootdata-crypto-plugin
description: "RootData is a leading Web3 data platform covering crypto projects, investors, funding data, and personnel movements. This skill is the OKX-dedicated integration, isolated from the standard RootData skill with its own API key namespace and endpoints."
version: "1.0.0"
author: "rootdata"
tags:
- crypto
- web3
- blockchain
- investors
- funding
- projects
- defi
- personnel
- okx
---

# RootData Crypto Intelligence (OKX Edition)

## Overview

RootData is a leading Web3 data platform covering crypto projects, investors, funding data, and personnel movements. This skill is the OKX-dedicated integration, isolated from the standard RootData skill with its own API key namespace and endpoints.

## Pre-flight Checks

Before using this skill, ensure:

1. Check if the environment variable `OKX_ROOTDATA_SKILL_KEY` exists.
2. If it does **NOT** exist, call the `/init` command below to generate a key and save it.
3. All subsequent requests must include `Authorization: Bearer {OKX_ROOTDATA_SKILL_KEY}` and `Content-Type: application/json`.

### Initialize API Key

`POST https://api.rootdata.com/open/okx/skill/init`

**When to use**: First-time setup, or when `OKX_ROOTDATA_SKILL_KEY` is missing or invalid.
**Output**: Returns `api_key` (prefixed with `okxsk_`). Save it as `OKX_ROOTDATA_SKILL_KEY`.
**Example**:

```
POST https://api.rootdata.com/open/okx/skill/init
Content-Type: application/json
Body: {}
```

Response:
```json
{
"result": 200,
"data": {
"api_key": "okxsk_xxxxxxxxxxxxxxxx"
}
}
```

After saving, confirm to user: "RootData (OKX) access is ready. You can now query crypto data."

---

## Commands

All requests must include:

```
Authorization: Bearer {OKX_ROOTDATA_SKILL_KEY}
Content-Type: application/json
```

---

### Search

`POST https://api.rootdata.com/open/okx/skill/ser_inv`

**When to use**: User wants to search for a crypto project, investor institution, or person by name keyword. Use this as the first step when an entity ID is not yet known.
**Output**: A list of matching entities with their IDs, types, names, and descriptions.
**Example**:

```json
{
"query": "Uniswap",
"precise_x_search": false
}
```

Key response fields:
- `id` — entity ID (use for follow-up queries)
- `type` — `1`=Project, `2`=VC/Institution, `3`=Person
- `name` — display name
- `one_liner` — brief description
- `introduce` — full description
- `rootdataurl` — link to full detail page on RootData

---

### Get All IDs by Type

`POST https://api.rootdata.com/open/okx/skill/id_map`

**When to use**: User asks for a complete list of all project IDs, institution IDs, or person IDs for bulk lookup or enumeration.
**Output**: Array of `{ id, name }` entries for all entities of the specified type.
**Example**:

```json
{
"type": 1
}
```

`type` values: `1`=Project, `2`=VC/Institution, `3`=Person

Key response fields:
- `id` — entity ID
- `name` — entity name

---

### Project Detail

`POST https://api.rootdata.com/open/okx/skill/get_item`

**When to use**: User asks for detailed information about a specific crypto project, including its description, funding total, investors, tags, and social links.
**Output**: Full project profile including funding summary, contracts, social media, and investor list.
**Example** (by project ID):

```json
{
"project_id": 12345,
"include_investors": true
}
```

Or by contract address:

```json
{
"contract_address": "0xabc123...",
"include_investors": true
}
```

Key response fields:
- `project_id`, `project_name`, `logo`, `token_symbol`
- `one_liner`, `description`
- `active` — whether the project is still active
- `establishment_date` — founding date
- `tags` — category tags (e.g. DeFi, Layer2, NFT)
- `contracts` — on-chain contract addresses
- `total_funding` — total funding raised (USD)
- `social_media` — website, X(Twitter), GitHub, CoinMarketCap, CoinGecko, etc.
- `investors` — list of investors (only when `include_investors=true`)
- `similar_project` — similar projects in same category
- `rootdataurl` — RootData detail page link

---

### Funding Rounds

`POST https://api.rootdata.com/open/okx/skill/get_fac`

**When to use**: User asks about funding history, investment rounds, "how much did XX raise", "who invested in XX", or requests a list of recent fundraises.

**Data range**: Covers funding rounds from the **past 365 days only**. Requests for older data will automatically return only the most recent 365 days.

**Investor limit**: Each funding round returns a maximum of **3 investors** (lead investors prioritized).

**Output**: Paginated list of funding rounds with project info and investor details.
**Example**:

```json
{
"page": 1,
"page_size": 20,
"project_id": 12345,
"start_time": "2025-01-01",
"end_time": "2026-03-30",
"min_amount": 1000000,
"max_amount": 50000000
}
```

All fields except `page` and `page_size` are optional. Omit any field not specified by the user.

Key response fields:
- `total` — total matching records
- `items` — list of funding rounds, each containing:
- `name` — project name
- `logo` — project logo
- `rounds` — round type (Seed / Series A / Series B / etc.)
- `published_time` — announcement date
- `amount` — funding amount (USD)
- `project_id` — project ID
- `data_status` — data verification status
- `source_url` — original news source link
- `X` — project's X (Twitter) URL
- `one_liner` — project brief description
- `invests` — up to 3 investors, each with:
- `name`, `logo`
- `lead_investor` — `1`=lead investor, `0`=participating
- `type` — `1`=Project, `2`=VC/Institution, `3`=Person
- `invest_id` — investor ID
- `rootdataurl` — investor detail page

---

### Trending Projects

`POST https://api.rootdata.com/open/okx/skill/hot_index`

**When to use**: User asks "what's hot in crypto today", "trending projects", "top projects this week", or similar trending/popularity queries.
**Output**: Ranked list of trending projects for the requested time window.
**Example**:

```json
{
"days": 1
}
```

`days` values: `1`=today's trending, `7`=this week's trending

Key response fields:
- `rank` — ranking position
- `project_id`, `project_name`, `logo`, `token_symbol`
- `one_liner` — brief description
- `tags` — category tags
- `X` — Twitter/X profile URL
- `rootdataurl` — RootData detail page link

---

### Personnel Job Changes

`POST https://api.rootdata.com/open/okx/skill/job_changes`

**When to use**: User asks about recent job changes in crypto, "who joined which project", "who left which company", personnel movements, or executive changes in the Web3 industry.

**Data limit**: Returns a maximum of **20 recent entries** for each category.

**Output**: Two arrays — recent hires and recent departures — each with up to 20 entries.
**Example**:

```json
{
"recent_joinees": true,
"recent_resignations": true
}
```

Parameters:
- `recent_joinees` — `true` to get recent hires/joiners
- `recent_resignations` — `true` to get recent departures
- Both can be `true` simultaneously
- If both are `false` or omitted, returns empty data

Key response fields:
- `recent_joinees` — array of recent hires (max 20), each containing:
- `people_id` — person ID
- `people_name` — person's name
- `head_img` — profile photo
- `company_type` — `1`=Project, `2`=VC/Institution, `3`=Person
- `company_id` — company/project ID
- `company` — company/project name
- `position` — job title
- `recent_resignations` — array of recent departures (max 20), same structure

---

## Multi-Language Support

Add header `language: cn` for Chinese responses, or `language: en` for English (default).

All name fields, descriptions, and position titles will be returned in the requested language.

---

## Error Handling

| Error | Cause | Resolution |
|-------|-------|------------|
| `401 Unauthorized` | Missing or invalid `OKX_ROOTDATA_SKILL_KEY` | Re-run `/init` to generate a new key and update the env variable |
| `429 Too Many Requests` | Rate limit exceeded (200 req/min) | Wait for the number of seconds in the `Retry-After` response header, then retry |
| `400 Bad Request` | Invalid or missing required parameters | Check request body; verify `type`, `days`, or `page` values are correct |
| `404 Not Found` | Entity ID does not exist | Confirm the ID via `/ser_inv` search before calling detail endpoints |
| `500 Internal Server Error` | Upstream server error | Retry after a short delay; if persistent, report to RootData support |
| `result` field ≠ `200` | Application-level error | Read the `message` field in the response for details |

If you receive HTTP `429`, check the `Retry-After` header and wait before retrying. Monitor `X-RateLimit-Remaining` to track remaining quota.

---

## Security Notices

- This skill is **read-only** and does not perform any write, trade, or transaction operations.
- The `okxsk_` prefixed API key is an anonymous, low-privilege key used solely to call RootData's public data endpoints. It has no access to any personal account or wallet data.
- The key is stored as a local environment variable (`OKX_ROOTDATA_SKILL_KEY`) and is never sent to any service other than `api.rootdata.com`.
- You can revoke the key at any time by contacting RootData support.
- Rate limit: **200 requests per minute** per API key.

---

## Version History

### v1.0.0 (2026-04-27)
- Initial OKX edition release
- Isolated endpoint namespace: `/open/okx/skill/`
- Isolated API key namespace: `okxsk_` prefix, env var `OKX_ROOTDATA_SKILL_KEY`
- 6 skills: Search, ID Map, Project Detail, Funding Rounds, Trending Projects, Personnel Job Changes
- Funding data limited to past 365 days; max 3 investors per round
- Job changes: max 20 entries per category
30 changes: 30 additions & 0 deletions skills/rootdata-crypto-plugin/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
## Overview

RootData OKX Edition — a read-only Web3 data lookup skill covering crypto projects,
investors, funding rounds, trending projects, and personnel job changes.

Core operations:[SKILL.md](SKILL.md)

- Search projects, VCs, and people by keyword
- Look up project details, investors, funding history
- Track trending projects (1-day / 7-day windows)
- Monitor crypto industry hires and departures

Tags: `crypto` `web3` `research` `funding` `rootdata`

## Prerequisites

- No IP/region restrictions (public data API)
- `OKX_ROOTDATA_SKILL_KEY` environment variable (auto-provisioned via /init on first run)
- Internet access to api.rootdata.com
- Rate limit: 200 req/min per key

## Quick Start

1. **First-time setup**: ask the agent anything that uses RootData. If
`OKX_ROOTDATA_SKILL_KEY` is missing, the skill calls `/init` to mint a key and
stores it as an env var.
2. **Search**: e.g., "find Uniswap on RootData" → returns entity ID.
3. **Detail lookup**: pass the ID to project/funding endpoints for full data.
4. **Trending / job changes**: ask "what's hot today" or "who joined which crypto
project this week".
19 changes: 19 additions & 0 deletions skills/rootdata-crypto-plugin/plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
schema_version: 1
name: rootdata-crypto-plugin
version: "1.0.0"
description: "RootData is a leading Web3 data platform covering crypto projects, investors, funding data, and personnel movements. This skill is the OKX-dedicated integration, isolated from the standard RootData skill with its own API key namespace and endpoints."
author:
name: "rootdata"
github: "CJZZWW"
license: MIT
category: utility
tags:
- web3
- crypto

components:
skill:
dir: "."

api_calls:
- "api.rootdata.com"