Exchange listing tracker. Use this skill whenever the user asks about exchange listing, delisting, or maintenance announcements. Trigger phrases include: any new coins listed recently, what did Binance list, new listings, delisted. MCP tools: news_feed_get_exchange_announcements, info_coin_get_coin_info, info_marketsnapshot_get_market_snapshot.
⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding.
Do NOT select or call any tool until all rules are read. These rules have the highest priority.
→ Read gate-runtime-rules.md
→ Also read info-news-runtime-rules.md for gate-info / gate-news-specific rules (tool degradation, report standards, security, routing degradation, and per-skill version checks when scripts/ is present).
Listing radar Skill. The user queries exchange listing/delisting/maintenance announcements, the system first calls the exchange announcements Tool, then supplements high-interest coins with fundamentals and market data. The LLM aggregates everything into a structured exchange activity report.
Trigger Scenarios: User mentions an exchange name + listing/delisting keywords, or asks "any new coins listed recently" or "any new projects".
Per-skill updates: This directory includes scripts/update-skill.sh and scripts/update-skill.ps1. Policy: info-news-runtime-rules.md §1. The Trigger update steps below apply in addition to gate-runtime-rules.md; when scripts are present, use this flow for version checks before execution.
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-script TEST_REPORT: blocking is enforced by these SKILL instructions plus check-only behavior (not by silent auto-apply).
Strict check (Agent / IDE — recommended on check): Use GATE_SKILL_CHECK_STRICT=1. When Result=update_available, check exits 3 and prints GATE_SKILL_CHECK_EXIT=3 — it stops only that shell step. Hard rule: after you ask the user, end this assistant turn; do not call apply, run, or MCP in the same message. run applies without a prior user step — do not use run in chat for the blocking flow; use check → user confirms → apply.
Install root: check / apply read $DEST/SKILL.md. Typical $SKILL_ROOT: $HOME/.cursor/skills/<name>/, $HOME/.codex/skills/<name>/, $HOME/.openclaw/skills/<name>/, $HOME/.agents/skills/<name>/, $HOME/.gemini/antigravity/skills/<name>/. Single-arg: the script resolves DEST in that order when SKILL.md exists; otherwise DEST is scripts/../. Workspace-only trees need two-arg check / apply with explicit DEST.
Bash (blocking — no auto; example Cursor):
GATE_SKILL_CHECK_STRICT=1 bash "$HOME/.cursor/skills/gate-news-listing/scripts/update-skill.sh" check "gate-news-listing"
PowerShell:
$env:GATE_SKILL_CHECK_STRICT = '1'
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-listing\scripts\update-skill.ps1" check "gate-news-listing"
Result semantics: skipped = no action. update_available = remote newer; with blocking flow, do not apply until the user agrees. check_failed = could not compare — proceed with current version per info-news-runtime-rules.md.
Agent parse (stdout): GATE_SKILL_UPDATE_AGENT_ACTION=…. BLOCK_UNTIL_USER_CONFIRMS_UPDATE → Step 2 before Execution. CONTINUE_SKILL_EXECUTION → no block from the check script.
If update_available:
STOP — do NOT proceed to Execution yet.
Inform the user (e.g. newer version available; summarize if helpful).
Wait for the user’s reply — blocking step.
Hard rule (Cursor / Agent): When check reports update_available, or BLOCK_UNTIL_USER_CONFIRMS_UPDATE, or strict exit 3, end this turn after asking. Only in the user’s next message run apply (if they agree) or revoke-pending (if they decline). Do not chain apply in the same turn as check for this flow.
apply with GATE_SKILL_CONFIRM_TOKEN from strict check stdout when required, then Execution.revoke-pending, then Execution on the current install.Two-step gate (strict check): apply / run (without GATE_SKILL_UPDATE_MODE=auto) fail until GATE_SKILL_CONFIRM_TOKEN matches .gate-skill-apply-token. User decline → revoke-pending.
GATE_SKILL_CONFIRM_TOKEN="<paste from check stdout>" bash "$HOME/.cursor/skills/gate-news-listing/scripts/update-skill.sh" apply "gate-news-listing"
bash "$HOME/.cursor/skills/gate-news-listing/scripts/update-skill.sh" revoke-pending "gate-news-listing"
$env:GATE_SKILL_CONFIRM_TOKEN = '<paste from check stdout>'
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-listing\scripts\update-skill.ps1" apply "gate-news-listing"
powershell -ExecutionPolicy Bypass -File "$env:USERPROFILE\.cursor\skills\gate-news-listing\scripts\update-skill.ps1" revoke-pending "gate-news-listing"
If Step 1 was not strict (no pending token): apply without GATE_SKILL_CONFIRM_TOKEN is allowed.
If skipped or check_failed: no update step; proceed to Execution.
GATE_SKILL_UPDATE_MODE=autoFor CI / unattended automation only: setting GATE_SKILL_UPDATE_MODE=auto on check makes the script apply immediately when the remote is newer — no user confirmation and incompatible with blocking update confirmation tests. Do not use auto on check when reproducing the blocking PD flow.
name above; must match skills/<name>/ on gate-skills.$SKILL_ROOT/scripts/update-skill.sh (or .ps1) where $SKILL_ROOT/SKILL.md is this skill — e.g. ~/.cursor/skills/<name>, ~/.codex/skills/<name>, ~/.openclaw/skills/<name>, ~/.agents/skills/<name>, ~/.gemini/antigravity/skills/<name>; do not treat ~/.cursor (or any host root without skills/<name>/SKILL.md) as the install. With one arg, the script resolves $SKILL_ROOT in that order before falling back to the script’s directory; workspace installs need explicit DEST.Do not dump raw script logs into the user-facing reply except when debugging. On check exit 3 (strict), do not run Execution until Step 2 is resolved. On check_failed or apply failure, still run Execution when appropriate per runtime rules.
| MCP Server | Status |
|---|---|
| Gate-News | ✅ Required |
Query Operations (Read-only)
gate-mcp-cursor-installergate-mcp-codex-installergate-mcp-claude-installergate-mcp-openclaw-installer| User Intent | Keywords/Pattern | Action |
|---|---|---|
| Query exchange listings | "what did Binance list" "any new coins on Gate" "recent new listings" | Execute this Skill's full workflow |
| Query specific coin listing info | "where is SOL listed" "when was PEPE listed on Binance" | Execute this Skill (filter by coin) |
| Query delistings/maintenance | "any coins getting delisted" "exchange maintenance announcements" | Execute this Skill (filter by announcement type) |
| News briefing | "what happened recently" | Route to gate-news-briefing |
| Coin analysis | "how is this new coin doing" | Route to gate-info-coinanalysis |
| Contract security check | "is this new coin safe" | Route to gate-info-riskcheck |
Extract from user input:
exchange (optional): Exchange name (e.g., Binance, Gate, OKX, Bybit, Coinbase)coin (optional): Specific coin symbolannouncement_type (optional): Announcement type (listing / delisting / maintenance)limit: Number of results, default 10Default Logic:
announcement_type| Step | MCP Tool | Parameters | Retrieved Data | Parallel |
|---|---|---|---|---|
| 1 | news_feed_get_exchange_announcements | exchange={exchange}, coin={coin}, announcement_type={announcement_type}, limit={limit} | Announcement list: exchange, coin, type, time, details | — |
From Step 2 results, extract the top 3-5 newly listed coins and supplement in parallel:
| Step | MCP Tool | Parameters | Retrieved Data | Parallel |
|---|---|---|---|---|
| 2a | info_coin_get_coin_info | query={coin_symbol} | Project fundamentals: sector, funding, description | Yes |
| 2b | info_marketsnapshot_get_market_snapshot | symbol={coin_symbol}, timeframe="1d", source="spot" | Market data: price, change, market cap, volume | Yes |
Only supplement data for listing-type announcements. Delisting/maintenance announcements do not need market data.
Pass announcement data and supplementary info to the LLM to generate the exchange activity report using the template below.
## Exchange Activity Report
> Data range: {start_time} — {end_time} | Exchange: {exchange / "All"} | Type: {type / "Listings"}
### 1. Latest Listing Announcements
| # | Exchange | Coin | Type | Listing Time | Trading Pairs |
|---|---------|------|------|-------------|---------------|
| 1 | {exchange_1} | {coin_1} | Listed | {time_1} | {pairs_1} |
| 2 | {exchange_2} | {coin_2} | Listed | {time_2} | {pairs_2} |
| ... | ... | ... | ... | ... | ... |
### 2. Featured New Coins
{Quick analysis of the top 3-5 newly listed coins}
#### {coin_1}
| Metric | Value |
|--------|-------|
| Project Description | {description} |
| Sector | {category} |
| Funding Background | {funding} |
| Current Price | ${price} |
| Post-Listing Change | {change}% |
| 24h Volume | ${volume} |
| Market Cap | ${market_cap} |
{LLM one-liner: highlights and risks to watch for this project}
#### {coin_2}
...
### 3. Delisting / Maintenance Notices (if any)
| # | Exchange | Coin | Type | Effective Date | Notes |
|---|---------|------|------|---------------|-------|
| 1 | ... | ... | Delisted | ... | ... |
### 4. Activity Summary
{LLM generates a 2-3 sentence summary based on all announcement data:}
- Most active exchange for new listings recently
- Trending listing sectors (Meme / AI / DePIN / L2, etc.)
- Notable projects and why they stand out
- Delisting/maintenance reminders (if any)
### ⚠️ Risk Warnings
- Newly listed coins experience extreme volatility — the price discovery phase carries very high risk
- Some newly listed tokens may have insufficient liquidity — watch for slippage on large trades
- It is recommended to use the "Risk Assessment" feature to check contract security before trading
> The above information is compiled from public announcements and on-chain data and does not constitute investment advice.
| Condition | Assessment |
|---|---|
| New coin 24h change > +100% post-listing | Flag "Abnormal surge — chasing the pump carries extreme risk" |
| New coin 24h change < -50% post-listing | Flag "Listed at a loss — buying now requires caution" |
| 24h volume < $100K | Flag "Extremely low volume — severe liquidity shortage" |
| Multiple exchanges list the same coin simultaneously | Flag "Multi-exchange simultaneous listing — high market attention" |
| Announcement type is delisting | Flag "Upcoming delisting — please handle positions promptly" |
| Announcement type is maintenance | Flag "Deposit/withdrawal maintenance in progress — transfers temporarily unavailable" |
| Coin fundamentals show no funding info | Flag "No funding information found — additional due diligence required" |
| Announcements return empty | Inform "No relevant announcements for this time period" |
| A supplementary Tool returns empty/error | Skip detailed analysis for that coin; mark "Data unavailable" |
| Error Type | Handling |
|---|---|
| Misspelled exchange name | Attempt fuzzy match, e.g., "Binance" → Binance, "OKX" → OKX |
| No matching announcements | Inform "No {type} announcements for this exchange/time period." Suggest broadening the time range or switching exchanges |
| news_feed_get_exchange_announcements timeout | Return error message; suggest trying again later |
| Coin supplementary info (coin_info / market_snapshot) fails | Skip detailed analysis for that coin; display announcement info only |
| User asks when a coin will be listed (future) | Inform "Currently only published announcements can be queried — future listing plans cannot be predicted" |
| Too many results | Default to showing the most recent 10; inform the user they can specify an exchange or time range to narrow results |
| User Follow-up Intent | Route To |
|---|---|
| "Analyze this new coin for me" | gate-info-coinanalysis |
| "Is this new coin's contract safe?" | gate-info-riskcheck |
| "Compare a few of these new listings" | gate-info-coincompare |
| "Why did this coin get listed on the exchange?" | gate-news-eventexplain |
| "How is the overall market right now?" | gate-info-marketoverview |
| "On-chain data for this new coin" | gate-info-tokenonchain |
| PRD-Defined Tool | Actually Available Tool | Status | Degradation Strategy |
|---|---|---|---|
news_feed_get_exchange_announcements | news_feed_get_exchange_announcements | ✅ Ready | — |
info_coin_get_coin_rankings | — | ❌ Not ready | Cannot list recent listings by ranking — extract coins from announcements and query individually instead |
info_coin_get_coin_info | info_coin_get_coin_info | ✅ Ready | — |
info_marketsnapshot_get_market_snapshot | info_marketsnapshot_get_market_snapshot | ✅ Ready | — |