$npx -y skills add gate/gate-skills --skill gate-info-tokenonchainToken on-chain analysis via Gate-Info MCP: holder distribution, on-chain activity, and large or unusual transfers (scopes holders / activity / transfers). Smart Money is not available in this version. Triggers include ETH on-chain analysis, BTC holder distribution, whale movement
| 1 | # gate-info-tokenonchain |
| 2 | |
| 3 | ## General Rules |
| 4 | |
| 5 | ⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding. |
| 6 | Do NOT select or call any tool until all rules are read. These rules have the highest priority. |
| 7 | → Read [gate-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md) |
| 8 | → Also read [info-news-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/info-news-runtime-rules.md) for **gate-info** / **gate-news**-specific rules (tool degradation, report standards, security, routing degradation, per-skill version checks when `scripts/` is present, and legacy wrapper routing). |
| 9 | - **Only call MCP tools explicitly listed in this skill.** Tools not documented here must NOT be called, even if they |
| 10 | exist in the MCP server. |
| 11 | - **Legacy / routing mode:** when Step 0 emits `__FALLBACK__`, use only the MCP tools listed in this file. When Step 0 emits `__ROUTE_CLI__`, do **not** call those MCP tools; delegate to the mapped primary skill per Step 0. |
| 12 | |
| 13 | > Token On-Chain Analysis Skill (current version: **no Smart Money**). For token-level holder distribution, activity, and large transfers, call on-chain + basic coin info tools in parallel, then aggregate into a structured report. |
| 14 | |
| 15 | **Trigger Scenarios**: User asks about token on-chain data, holder distribution, on-chain activity, large transfers, on-chain chip analysis, etc. |
| 16 | |
| 17 | **Per-skill updates:** This directory includes `scripts/update-skill.sh` and may include `scripts/update-skill.ps1`. **ClawHub** packages uploaded to the marketplace often omit `update-skill.ps1` (upload-page restriction); **GitHub / Bitbucket** source trees keep both. Policy: [info-news-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/info-news-runtime-rules.md) §1. The **Trigger update** steps below apply in addition to [gate-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md); when scripts are present, use this flow for version checks before execution. |
| 18 | |
| 19 | **Update check — user visibility:** Technical failures during version check (missing script, sandbox, network, non-zero exit, no parseable `Result=` line) must **not** be explained to the user; continue with Execution per [info-news-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/info-news-runtime-rules.md). Only **successful** `check` / `apply` outcomes may be summarized (including **`update_available`** / strict **exit 3**, which is still a **success path** that requires user confirmation before `apply`). **Do not** auto-download `update-skill.*` from the network. **Static reference** if `.ps1` is missing: canonical scripts live in [gate/gate-skills](https://github.com/gate/gate-skills) under `skills/<name>/scripts/` (same `<name>` as frontmatter). |
| 20 | |
| 21 | --- |
| 22 | |
| 23 | ## Step 0 — Wrapper routing probe |
| 24 | |
| 25 | This legacy skill is a compatibility alias for the primary CLI skill |
| 26 | `gate-info-web3`. |
| 27 | |
| 28 | Before Trigger update, MCP tool selection, or any legacy Execution Workflow, |
| 29 | run a deterministic shell probe: |
| 30 | |
| 31 | ```bash |
| 32 | PRIMARY_SKILL="gate-info-web3" |
| 33 | HAS_PRIMARY=0 |
| 34 | for root in \ |
| 35 | "$HOME/.cursor/skills" \ |
| 36 | "$HOME/.codex/skills" \ |
| 37 | "$HOME/.openclaw/skills" \ |
| 38 | "$HOME/.agents/skills" \ |
| 39 | "$HOME/.gemini/antigravity/skills" |
| 40 | do |
| 41 | if [ -f "$root/$PRIMARY_SKILL/SKILL.md" ]; then |
| 42 | HAS_PRIMARY=1 |
| 43 | break |
| 44 | fi |
| 45 | done |
| 46 | |
| 47 | if command -v gate-cli >/dev/null 2>&1 && [ "$HAS_PRIMARY" = "1" ]; then |
| 48 | echo "__ROUTE_CLI__" |
| 49 | else |
| 50 | echo "__FALLBACK__" |
| 51 | fi |
| 52 | ``` |
| 53 | |
| 54 | Interpretation: |
| 55 | |
| 56 | - `__ROUTE_CLI__` → stop here. Do **not** run Trigger update or the legacy MCP |
| 57 | sections below. Follow |
| 58 | `https://github.com/gate/gate-skills/blob/master/skills/gate-info-web3/SKILL.md` |
| 59 | and its playbook contract. Carry over the minimum context: `token` and |
| 60 | `chain`. |
| 61 | - `__FALLBACK__` → continue with Trigger update and the legacy MCP workflow in |
| 62 | this file. |
| 63 | |
| 64 | --- |
| 65 | |
| 66 | ## Trigger update (with Execution) |
| 67 | |
| 68 | **Default (PD / blocking):** On each trigger, run **`check`** first **without** **`GATE_SKILL_UPDATE_MODE=auto`**. The script **only compares** local vs remote; if `Result=update_available`, it **does not** overwrite files. **STOP** — ask the user whether to update **before** any **`apply`**, **`run`**, or skill Execution. In sandboxes (e.g. Cursor), use **full / all permissions** when later running **`apply`**. This matches **blocking update confirmation** in the independent-scr |