关于 gate-news-eventexplain
gate-news-eventexplain 是分析加密市场异常波动原因的技能,适合希望了解价格急涨或急跌缘由的用户。它将事件来源、市场数据与价格反应串联起来;检测到主 CLI 技能时会转交处理。
主要功能
- 01追查异常波动的相关事件
- 02交叉核对市场数据与影响
- 03构建事件到市场反应的分析链
- 04查询新闻和事件详情
- 05检测并路由至主 CLI 技能
适用场景
- 01分析 BTC 急跌的可能原因
- 02了解 ETH 突然上涨的背景
- 03核实事件对代币行情的影响
MCP 相关
旧版回退路径使用 Gate-News MCP 查询事件详情、最新事件和新闻,并使用 Gate-Info MCP 获取市场快照及链上代币信息。若检测到 gate-news-intel,则改由该 CLI 技能处理。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gate/ gate-skills --skill gate-news-eventexplain安装后在 Claude Code 中输入/gate-news-eventexplain确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
.clawhubignoreCHANGELOG.mdREADME.mdreferences/mcp.mdscenarios.mdscripts/update-skill.ps1update-skill.sh详细介绍
gate-news-eventexplain
一般规则
⚠️ 停止 — 继续操作前,必须阅读并严格遵守共享运行时规则。
在阅读完所有规则之前,不要选择或调用任何工具。这些规则具有最高优先级。
→ 阅读 gate-runtime-rules.md
→ 另请阅读 info-news-runtime-rules.md,了解 gate-info / gate-news 专属规则(工具降级、报告标准、安全、路由降级、scripts/ 存在时的各技能版本检查,以及旧版包装器路由)。
- 只调用本技能中明确列出的 MCP 工具。 不得调用此处未记录的工具,即使它们存在于 MCP 服务中。
- 旧版 / 路由模式: 当步骤 0 输出
__FALLBACK__时,只使用此文件中列出的 MCP 工具。当步骤 0 输出__ROUTE_CLI__时,不要调用这些 MCP 工具;按步骤 0 的映射委派给主要技能。
“为什么在暴涨/暴跌?”技能。当市场出现异常波动且用户询问原因时,系统会通过多步调用追溯事件源,将市场数据交叉对照以验证影响幅度,并提供完整的“事件 → 影响链条 → 市场反应”分析报告。
触发场景:用户对市场异常表达好奇,例如“BTC 为什么暴跌”“刚才发生了什么”“ETH 为什么突然飙升”。
各技能更新: 此目录包含 scripts/update-skill.sh,并且可能包含 scripts/update-skill.ps1。上传到市场的 ClawHub 软件包通常会省略 update-skill.ps1(上传页面限制);GitHub / Bitbucket 源代码树则会保留这两个文件。策略:info-news-runtime-rules.md §1。以下触发更新步骤是对 gate-runtime-rules.md 的补充;存在脚本时,执行前请按此流程检查版本。
更新检查 — 用户可见性: 版本检查期间发生的技术故障(脚本缺失、沙盒、网络、非零退出、没有可解析的 Result= 行)不得向用户解释;请按照 info-news-runtime-rules.md 继续执行。只有成功的 check / apply 结果才可以概述(包括 update_available / 严格的 退出码 3;这仍属于成功路径,但必须先征得用户确认才能执行 apply)。不要从网络自动下载 update-skill.*。若缺少 .ps1,请参考静态来源:gate/gate-skills 中 skills/<name>/scripts/ 下的规范脚本(<name> 与 frontmatter 中的名称相同)。
步骤 0 — 包装器路由探测
此旧版技能是主要 CLI 技能
gate-news-intel 的兼容别名。
在触发更新、选择 MCP 工具或执行任何旧版工作流之前, 运行确定性的 shell 探测:
PRIMARY_SKILL="gate-news-intel"
HAS_PRIMARY=0
for root in \
"$HOME/.cursor/skills" \
"$HOME/.codex/skills" \
"$HOME/.openclaw/skills" \
"$HOME/.agents/skills" \
"$HOME/.gemini/antigravity/skills"
do
if [ -f "$root/$PRIMARY_SKILL/SKILL.md" ]; then
HAS_PRIMARY=1
break
fi
done
if command -v gate-cli >/dev/null 2>&1 && [ "$HAS_PRIMARY" = "1" ]; then
echo "__ROUTE_CLI__"
else
echo "__FALLBACK__"
fi
解释:
__ROUTE_CLI__→ 在此停止。不要运行触发更新,也不要执行以下旧版 MCP 部分。请遵循https://github.com/gate/gate-skills/blob/master/skills/gate-news-intel/SKILL.md及其 playbook 契约。传递最少必要上下文:symbol、可选的time_range,以及用户已提及具体事件时的event_id。__FALLBACK__→ 继续执行触发更新,并按照此文件中的旧版 MCP 工作流操作。
触发时更新(并执行)
默认(PD / 阻塞): 每次触发时,先运行 check,不要设置 GATE_SKILL_UPDATE_MODE=auto。该脚本只进行比较本地版本与远程版本;如果 Result=update_available,则不会覆盖文件。停止——在执行任何 apply、run 或技能执行之前,先询问用户是否要更新。在沙箱中(例如 Cursor),之后运行 apply 时使用完全 / 所有权限。这符合独立脚本 TEST_REPORT 中的阻塞式更新确认:阻塞由这些 SKILL 说明和仅检查行为共同实现(而非静默自动应用)。
严格检查(Agent / IDE — 建议在运行 check 时使用): 使用 GATE_SKILL_CHECK_STRICT=1。当 Result=update_available 时,check 会以状态码 3 退出,并打印 GATE_SKILL_CHECK_EXIT=3——它只会停止当前 shell 步骤。硬性规则:询问用户后,结束本轮助手对话;不要在同一条消息中调用 apply、run 或 MCP。run 会在没有用户事先确认的情况下应用更新——阻塞流程中不要在聊天中使用 run;请使用 check → 用户确认 → apply。
步骤 1 — 检查
安装根目录: check / apply 会读取 $DEST/SKILL.md。常见的 $SKILL_ROOT:$HOME/.cursor/skills/<name>/、$HOME/.codex/skills/<name>/、$HOME/.openclaw/skills/<name>/、$HOME/.agents/skills/<name>/、$HOME/.gemini/antigravity/skills/<name>/。单参数模式:当 SKILL.md 存在时,脚本会按此顺序解析 DEST;否则 DEST 为 scripts/../。仅工作区目录树需要使用双参数 check / apply,并显式指定 DEST。
Agent 选择规则(下面带围栏的示例最多运行一个;根据操作系统和 $SKILL_ROOT/scripts/ 下的文件进行选择):
- **macOS / Linux / WSL / Git Bash:**如果存在
update-skill.sh→ 仅使用 Bash 示例。 - **Windows(原生 PowerShell):**如果存在
update-skill.ps1→ 仅使用 PowerShell 示例。 - Windows(没有
.ps1)(典型的 ClawHub 安装):如果只有update-skill.sh→ 尝试使用 WSL 或 Git Bash(bash),并采用与 Bash 示例相同的命令格式。如果 bash 不可用或执行失败 → 静默跳过步骤 1(不要向用户显示脚本 stderr 或“版本检查失败”消息);继续执行技能。 - **两个脚本都不存在:**静默跳过步骤 1;继续执行技能。不要臆造
GATE_SKILL_CONFIRM_TOKEN,也不要运行apply/revoke-pending。
Bash(阻塞式——不自动更新;Cursor 示例):
GATE_SKILL_CHECK_STRICT=1 bash "$HOME/.cursor/skills/gate-news-eventexplain/scripts/update-skill.sh" check "gate-news-eventexplain"
PowerShell:
$env:GATE_SKILL_CHECK_STRICT = '1'
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-eventexplain\scripts\update-skill.ps1" check "gate-news-eventexplain"
结果含义:skipped = 不执行任何操作。update_available = 远程版本较新;采用阻塞流程时,未经用户同意不得应用更新。check_failed = 无法进行比较——根据 info-news-runtime-rules.md 使用当前版本继续;不要向用户透露检查失败的技术细节。
Agent 解析(stdout):GATE_SKILL_UPDATE_AGENT_ACTION=…。BLOCK_UNTIL_USER_CONFIRMS_UPDATE → 在执行技能前进行步骤 2。CONTINUE_SKILL_EXECUTION → 检查脚本不会阻止执行技能。
步骤 2 — 确认或拒绝(阻塞)
运行时: 步骤 2 使用与步骤 1 相同的 Shell 系列(Bash 或 PowerShell)。如果步骤 1 已跳过,则不要运行 apply 或 revoke-pending。
如果为 update_available:
-
停止 — 暂时不要继续执行。
-
告知用户(例如,有新版本可用;如有帮助,可简要说明)。
-
等待用户回复 — 此步骤会阻塞后续操作。
硬性规则(Cursor / Agent): 当
check报告update_available、BLOCK_UNTIL_USER_CONFIRMS_UPDATE或严格模式下的exit 3时,提问后结束本轮对话。只有在用户的下一条消息中,才运行apply(如果用户同意)或revoke-pending(如果用户拒绝)。此流程中,不要在运行check的同一轮对话中接着运行apply。- 用户同意 → 在需要时,使用严格模式
check标准输出中的GATE_SKILL_CONFIRM_TOKEN运行apply,然后执行。 - 用户拒绝 → 运行
revoke-pending,然后基于当前安装继续执行。
- 用户同意 → 在需要时,使用严格模式
两步门控(严格模式 check): 在 GATE_SKILL_CONFIRM_TOKEN 与 .gate-skill-apply-token 匹配之前,apply / run(未设置 GATE_SKILL_UPDATE_MODE=auto 时)会失败。用户拒绝 → 运行 revoke-pending。
GATE_SKILL_CONFIRM_TOKEN="<paste from check stdout>" bash "$HOME/.cursor/skills/gate-news-eventexplain/scripts/update-skill.sh" apply "gate-news-eventexplain"
bash "$HOME/.cursor/skills/gate-news-eventexplain/scripts/update-skill.sh" revoke-pending "gate-news-eventexplain"
$env:GATE_SKILL_CONFIRM_TOKEN = '<paste from check stdout>'
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-eventexplain\scripts\update-skill.ps1" apply "gate-news-eventexplain"
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-eventexplain\scripts\update-skill.ps1" revoke-pending "gate-news-eventexplain"
如果步骤 1 未使用严格模式(没有待处理令牌):允许在不提供 GATE_SKILL_CONFIRM_TOKEN 的情况下运行 apply。
如果为 skipped 或 check_failed: 不执行更新步骤;继续执行。
可选 — GATE_SKILL_UPDATE_MODE=auto
仅用于 CI / 无人值守自动化:在 check 中设置 GATE_SKILL_UPDATE_MODE=auto 后,如果远程版本较新,脚本会立即应用更新 — 无需用户确认,且与阻塞式更新确认测试不兼容。复现阻塞式 PD 流程时,不要在 check 中使用 auto。
参数
- name:上方 Frontmatter 中的
name;必须与 gate-skills 中的skills/<name>/匹配。 - 调用: 使用
$SKILL_ROOT/scripts/update-skill.sh(或.ps1),其中$SKILL_ROOT/SKILL.md是此技能文件 — 例如~/.cursor/skills/<name>、~/.codex/skills/<name>、~/.openclaw/skills/<name>、~/.agents/skills/<name>、~/.gemini/antigravity/skills/<name>;不要将~/.cursor(或任何不包含skills/<name>/SKILL.md的宿主根目录)视为安装目录。只提供一个参数时,脚本会按此顺序解析$SKILL_ROOT,然后才回退到脚本所在目录;工作区安装需要显式指定DEST。双参数check/apply/revoke-pending: 标准顺序是先提供绝对路径DEST(技能根目录),再提供name;仅当一个规范化路径包含SKILL.md时,update-skill.sh/update-skill.ps1会自动调换参数顺序(例如 Agent 先传name,再传路径)。 - ClawHub 与完整目录树: 对于没有
update-skill.ps1的安装,可从 gate/gate-skills 的skills/<name>/scripts/下复制该文件(仅限手动操作;Agent 不得自动下载)。
除非用于调试,不要将原始脚本日志倾倒到面向用户的回复中。严格模式下 check 返回退出码 3 时,在步骤 2 解决之前不要执行后续操作。遇到 check_failed 或 apply 失败时,仍应根据运行时规则,在适当情况下继续执行。
MCP 依赖项
仅适用于旧版路径 — 当步骤 0 输出 __FALLBACK__ 时,本节才适用。
必需的 MCP 服务
| MCP 服务 | 状态 |
|---|---|
| Gate-News | ✅ 必需 |
| Gate-Info | ✅ 必需 |
使用的 MCP 工具
查询操作(只读)
- info_marketsnapshot_get_market_snapshot
- info_onchain_get_token_onchain
- news_events_get_event_detail
- news_events_get_latest_events
- news_feed_search_news
身份验证
- 是否需要 API Key:否
- 凭据来源:无;此技能仅使用只读的 Gate Info / Gate News MCP 访问权限。
安装检查
- 必需:Gate-News、Gate-Info(用于此技能中的
info_marketsnapshot_get_market_snapshot和info_onchain_get_token_onchain) - 安装:继续之前,请根据当前宿主 IDE 使用本地 Gate MCP 安装流程。
- 仅当所需的 Gate MCP 服务在当前环境中可用后,才继续。
路由规则
仅限旧版路径——当步骤 0 输出 __ROUTE_CLI__ 时,路由由
gate-news-intel 负责。
| 用户意图 | 关键词 | 操作 |
|---|---|---|
| 价格变动的原因 | "why pump" "why dump" "crash" "surge" "what caused" "what happened" | 执行此技能的完整工作流 |
| 一般新闻查询 | "any recent news" | 路由到 gate-news-briefing |
| 全面的币种分析 | "analyze BTC for me" | 路由到 gate-info-coinanalysis |
| 技术分析 | "BTC technical analysis" | 路由到 gate-info-trendanalysis |
| 市场概况 | "how's the market" | 路由到 gate-info-marketoverview |
执行工作流
仅限旧版路径——当步骤 0 输出 __FALLBACK__ 时,本节适用。
步骤 0:多维度意图检查
执行此技能之前,检查用户的查询是否涉及多个分析维度:
- 如果查询仅涉及价格变动背后的原因,则使用此技能。
- 如果查询还提及基本面、风险检查、技术分析、比较或事件归因以外的其他分析维度,则路由到
gate-info-research——它可通过统一的工具去重和连贯的报告汇总处理多维度查询。
步骤 1:意图识别与参数提取
从用户输入中提取:
coin:涉及的币种(例如,BTC、ETH;可留空 = 整体市场)direction:上涨或下跌(辅助搜索)time_hint:时间线索(“刚才”“今天”“昨天”;默认:过去 24 小时)
步骤 2:阶段 1 — 事件搜索 + 市场验证(并行)
| 步骤 | MCP 工具 | 参数 | 检索数据 | 并行 |
|---|---|---|---|---|
| 1a | news_events_get_latest_events | coin={coin}, time_range="24h", limit=10 | 相关事件列表 | 是 |
| 1b | info_marketsnapshot_get_market_snapshot | symbol={coin}, timeframe="1d", source="spot" | 实时市场快照(验证波动幅度) | 是 |
并行调用两个工具。
步骤 3:决策分支
events response
│
├── Matching event found (event time aligns with volatility onset)
│ └── → Step 4a: Get event details
│
└── No clear event match
└── → Step 4b: Expand news search
步骤 4a:找到事件 → 获取详情 + 链上验证
| 步骤 | MCP 工具 | 参数 | 检索数据 | 并行 |
|---|---|---|---|---|
| 2a | news_events_get_event_detail | event_id={matched_event_id} | 事件详情(原因、影响、时间线) | 是 |
| 2b | info_onchain_get_token_onchain | token={coin}, chain="eth", scope="transfers" | 链上异常(大额转账、交易所流入/流出) | 是 |
步骤 4b:未找到事件 → 扩展搜索
| 步骤 | MCP 工具 | 参数 | 检索数据 | 并行 |
|---|---|---|---|---|
| 2c | news_feed_search_news | coin={coin}, sort_by="time", limit=15 | 最新相关新闻(按时间排序) | 是 |
| 2d | info_onchain_get_token_onchain | token={coin}, chain="eth", scope="transfers" | 链上异常 | 是 |
步骤 5:LLM 归因推理
LLM 必须完成以下推理链:
- 确认波动:根据市场快照,确认时间、幅度和成交量变化
- 识别触发事件:从事件/新闻中找出时间最吻合的事件
- 验证因果关系:事件是否先于价格变动?是否存在相应的链上活动?
- 评估影响链条:事件 → 直接影响 → 情绪传导 → 价格反应
- 评估后续影响潜力:根据事件性质,评估影响是短期还是持续
步骤 6:输出结构化报告
报告模板
仅适用于旧路径——当步骤 0 输出 __FALLBACK__ 时使用本节。
## {coin} {Pump/Dump} Attribution Analysis
> Analysis time: {timestamp}
### 1. Volatility Summary
| Metric | Value |
|--------|-------|
| Current Price | ${price} |
| Move Magnitude | {change}% (within {timeframe}) |
| High | ${high} ({time}) |
| Low | ${low} ({time}) |
| Volume Change | {volume_change}% (vs 24h average) |
| Futures Liquidations | ${liquidation} (if available) |
### 2. Core Triggering Event
🔴 **{event_title}**
- Event Time: {event_time}
- Event Type: {Regulation / Project Development / Market Manipulation / Macro Economic / Technical Failure / Whale Activity}
- Details: {2-3 sentence description}
- Source: {source}
### 3. Event → Impact Chain
{event} │ ├── 直接影响:{description} │ 例如,SEC 诉讼 → 代币的监管不确定性增加 │ ├── 情绪传导:{description} │ 例如,恐慌情绪蔓延 → 恐惧与贪婪指数从 65 降至 35 │ └── 价格反应:{description} 例如,事件发生后的 2 小时内,{coin} 从 ${high} 跌至 ${low}
### 4. On-chain Verification
{If on-chain data is available:}
| On-chain Metric | Anomaly |
|----------------|---------|
| Exchange Inflows | {increase/decrease}, {description} |
| Large Transfers | {count} transfers exceeding ${threshold} |
| Whale Activity | {description} |
| Futures Funding Rate | {change description} |
{Does the on-chain data corroborate the event narrative?}
### 5. Ripple Effects
{Did this event affect other coins/sectors?}
- {Related coin 1}: {impact description}
- {Related coin 2}: {impact description}
- Sector impact: {e.g., L1 sector declined across the market, DeFi sector affected}
### 6. Forward Outlook
{Based on the event's nature, assess the follow-on impact:}
| Dimension | Assessment |
|-----------|------------|
| Impact Duration | {One-time shock / Short-term (1-3 days) / Medium-term (1-2 weeks) / Long-term} |
| What to Watch Next | {Items to monitor: court ruling, policy details, project response, etc.} |
| Historical Precedent | {Similar past events and their outcomes, if any} |
### ⚠️ Important Notes
- Market moves may be caused by multiple overlapping factors; the above analysis is based on currently available information
- Long-term impact of the event remains uncertain
> The above analysis is based on public information and on-chain data. It does not constitute investment advice.
无法识别事件时使用的模板
## {coin} Volatility Analysis
> Analysis time: {timestamp}
### Volatility Summary
{Same as above}
### Possible Cause Analysis
⚠️ No single clear triggering event was identified. The following is a composite analysis:
**Possible Factor 1: {description}**
- Evidence: {related news/data}
- Likelihood: {High/Medium/Low}
**Possible Factor 2: {description}**
- Evidence: ...
- Likelihood: ...
**On-chain Clues**
{Any anomalous on-chain data that could help explain the move?}
### Composite Assessment
{LLM's composite analysis, with uncertainty explicitly acknowledged}
> Note: No single clear triggering event was found for this move. The above analysis is an informed assessment based on available data.
推理逻辑
事件匹配逻辑
| 条件 | 评估 |
|---|---|
| 事件时间 < 价格变动开始时间 | ✅ 在时间上可能是触发因素 |
| 事件时间 > 价格变动开始时间 | ❌ 不太可能是触发因素(可能是后续报道) |
| 事件影响评级 = "High" | 权重 +2 |
| 事件涉及所查询的代币 | 权重 +3 |
| 事件类型 = "Regulation/Policy" | 通常会引发更大幅度的变动 |
| 同时发生多个事件 | 综合分析——可能涉及多种因素 |
波动幅度评估
| 幅度 | 标签 |
|---|---|
| < 3% | 正常波动——可能无需特定事件来解释 |
| 3% – 10% | 中等波动——查找近期新闻/事件 |
| 10% – 20% | 大幅波动——通常有明确的事件驱动因素 |
| > 20% | 极端波动——几乎可以确定发生了重大事件或黑天鹅事件 |
链上异常评估
| 条件 | 评估 |
|---|---|
| 交易所流入量激增至平均值的 3 倍以上 | “大量代币流入交易所——可能带来卖压” |
| 交易所流出量激增至平均值的 3 倍以上 | “大量代币流出交易所——可能正在积累” |
| 大额转账笔数超过平均值的 5 倍 | “大额转账异常活跃” |
| 期货清算金额 > $100M | “大规模期货清算连锁反应——加剧了价格波动” |
错误处理
| 错误类型 | 处理方式 |
|---|---|
news_events_get_latest_events 未找到匹配事件 | 继续执行步骤 4b——扩大新闻搜索范围 |
news_events_get_event_detail 失败 | 仅根据事件列表摘要生成报告 |
info_onchain_get_token_onchain 不可用(P1 阶段) | 跳过链上验证部分;注明“链上数据暂时不可用” |
info_marketsnapshot_get_market_snapshot 失败 | 无法确认波动幅度;仅展示事件信息 |
| 新闻和事件均无结果 | 如实告知用户“目前尚未找到明确原因”;建议持续关注后续更新 |
| 所有工具均失败 | 返回错误消息;建议用户稍后重试 |
跨技能路由
| 用户后续意图 | 路由至 |
|---|---|
| “帮我分析 BTC” | gate-info-coinanalysis |
| “给我做个技术分析” | gate-info-trendanalysis |
| “整体市场怎么样?” | gate-info-marketoverview |
| “近期有什么新闻?” | gate-news-briefing |
| “有什么链上异常吗?” | gate-info-tokenonchain |
| “追踪这个地址” | gate-info-addresstracker |
安全规则
- 不得作出确定的因果断言:使用“可能由……导致”“关联最密切的事件是……”等措辞,避免绝对的因果断言
- 不得进行后续预测:不要输出“它将继续上涨/下跌”之类的预测
- 不得提供投资建议:不得根据事件分析给出买入/卖出建议
- 承认不确定性:当事件与价格变动之间的因果关系不确定时,明确说明
- 注明信息来源:事件和新闻必须注明来源
- 标记缺失数据:链上数据或事件详情不可用时,明确说明
- 避免加剧恐慌:描述暴跌或黑天鹅事件时,保持客观、中立的措辞,不使用煽动性言辞