Agent Skillsaaronjmars/aeon › Unlock Monitor

Unlock Monitor

GitHub

追踪代币解锁与归属,通过吸收比率量化供应压力,区分悬崖或线性释放,结合流动性数据生成市场影响研判,替代传统百分比评级。

skills/unlock-monitor/SKILL.md aaronjmars/aeon

Trigger Scenarios

查询代币解锁时间表 分析特定代币的供应压力 评估即将发生的代币释放对市场流动性的潜在冲击

Install

npx skills add aaronjmars/aeon --skill Unlock Monitor -g -y
More Options

Use without installing

npx skills use aaronjmars/aeon@Unlock Monitor

指定 Agent (Claude Code)

npx skills add aaronjmars/aeon --skill Unlock Monitor -a claude-code -g -y

安装 repo 全部 skill

npx skills add aaronjmars/aeon --all -g -y

预览 repo 内 skill

npx skills add aaronjmars/aeon --list

SKILL.md

Frontmatter
{
    "name": "Unlock Monitor",
    "tags": [
        "crypto"
    ],
    "type": "Skill",
    "commits": true,
    "category": "crypto",
    "schedule": "0 10 * * 1",
    "description": "Token unlock and vesting tracker — quantify supply pressure via absorption ratio, classify cliff vs linear, deliver one-line market reads",
    "permissions": [
        "contents:write"
    ]
}

Read memory/MEMORY.md for context on market positions and active narratives. Read the last 7 days of memory/logs/ to dedup against any unlock already covered. Read memory/state/unlock-monitor-seen.json if present — a list of ${ticker}:${unlock_date} keys already shipped. Skip exact matches; if file is absent, treat as empty.

Core thesis

The original skill ranked unlocks by % of circulating supply. That's a weak proxy. The right metric is Absorption Ratio = unlock_dollar_value / 7-day avg daily volume. Keyrock's analysis of 16k+ unlocks shows that ratios above ~2.4× consistently strain liquidity and produce measurable price drawdown. Below ~0.5× the market typically yawns. This skill ranks by absorption ratio first, supply % second, and folds in cliff-vs-linear structure plus pre-unlock price action to produce a per-event verdict.

Steps

1. Gather candidate unlocks

Run these WebSearches in parallel:

  • "token unlock schedule" "${week_of}" site:tokenomist.ai OR site:defillama.com
  • "token unlock" "this week" cliff vesting team investor ${current_year}
  • "upcoming unlocks" cryptorank OR dropstab ${current_year}
  • "FTX distribution" OR "Mt. Gox" OR "Celsius" OR "creditor payout" crypto ${current_year} (court-ordered supply shocks count)
  • "$10M" OR "$50M" OR "$100M" token unlock ${week_of} (dollar-value angle catches what supply % misses)

Also fetch (WebFetch fallback if any URL fails):

  • https://tokenomist.ai — primary, source-verified across 500+ tokens with cliff/linear labeling
  • https://defillama.com/unlocks — DeFi protocols, with $ values
  • https://cryptorank.io/token-unlock — broad coverage, recipient-category labeled
  • https://dropstab.com/vesting — alternative cross-source verification
  • https://www.coingecko.com/en/highlights/incoming-token-unlocks — Tokenomist-powered

Record which sources returned data → emit a sources: line in the log (see step 7).

2. Enrich each candidate with volume + structure

For each candidate unlock, fetch from CoinGecko search results or WebFetch on https://www.coingecko.com/en/coins/${slug}:

  • 7-day average daily volume (USD) — denominator for the absorption ratio
  • Spot price at fetch time
  • 30-day price change % — input to the market-read verdict
  • Vesting structure: cliff (lump-sum unlock) vs linear (gradual) vs mixed — usually labeled by tokenomist / cryptorank
  • Recipient category: team, investor, ecosystem, community, creditor

If volume data is unavailable, mark the unlock vol=unknown and tier it conservatively — do not skip it, but flag the gap in the output.

3. Compute Absorption Ratio and tier

For each unlock with known volume:

absorption_ratio = unlock_usd_value / avg_daily_volume_usd_7d

Tier the events:

Tier Absorption Ratio Meaning
CRISIS > 2.4× Liquidity cannot absorb without significant slippage
STRAIN 1.0× – 2.4× Will require multiple sessions to digest
DIGESTIBLE 0.3× – 1.0× Notable but absorbable
TRIVIAL < 0.3× Background noise, skip unless recipient flag elevates it

Recipient override: a team or investor unlock with absorption ratio one tier lower than CRISIS gets bumped up one tier (cost-basis-zero sellers act differently than airdrop recipients). A community or staking-reward unlock with ratio one tier higher gets bumped down one tier.

Court-ordered distributions (FTX, Mt. Gox, Celsius) bypass the tier system — always include, label forced, note the legal timeline.

4. Classify pre-unlock market read

For each event, set a one-line market_read based on 30d price change and vesting type:

  • priced in — token is down >20% over 30d AND ratio ≤ STRAIN. Selling has already happened; unlock day may mark a bottom.
  • market asleep — token is flat or up over 30d AND tier is STRAIN or CRISIS. Asymmetric downside; the move hasn't started.
  • fade pump — token is up >15% over 30d AND tier is CRISIS. Classic pre-cliff bid-then-dump pattern.
  • forced sellers — court-ordered. Different beast — legal timeline, not market-driven.
  • absorbable — TRIVIAL or DIGESTIBLE with no recipient flag. Nothing to see here.

For cliff unlocks: weakness usually starts ~30 days before; vol peaks at unlock; recovery 10–14 days later. Note this pattern explicitly when relevant.

5. Rank and select

Sort by absorption ratio descending, then by recipient flag (team/investor first), then by dollar value. Take the top 8 (drop TRIVIAL unless a court-order or recipient flag elevates them).

Deduplicate against memory/state/unlock-monitor-seen.json and the last 7 days of logs.

If the resulting list is empty, that's a real signal — output UNLOCK_MONITOR_QUIET and a one-line note explaining why (e.g. "No unlocks above 0.3× absorption ratio this week — supply side is calm").

6. Send via ./notify (under 4000 chars)

Lead with the headline — the single most-leveraged unlock — then tiered groups, then the read.

*Unlock Monitor — week of ${date}*

This week's most leveraged: **$TOKEN** unlocks Wed at $XM (Y× daily vol). [market read]

CRISIS (> 2.4× daily vol)
- **$TOKEN** — Mon Apr 22 — X tokens (Z% supply, $YM)
  cliff · investor · 3.1× vol · 30d -8% → market asleep
  Note: cliff pattern — expect weakness running into the date

STRAIN (1.0×–2.4×)
- **$TOKEN** — details · 1.6× vol · 30d -25% → priced in

DIGESTIBLE (0.3×–1.0×)
- **$TOKEN** — details · 0.6× vol · linear · ecosystem → absorbable

FORCED
- **$TOKEN** — Mon — court-ordered creditor batch, $XM, no schedule discretion

*Supply read:* 2-3 sentences. Where's the real pressure, where's the noise, where's the asymmetry. Reference any cliff timing patterns. If the week is quiet, say so plainly.

sources: tokenomist=ok, defillama=ok, cryptorank=ok, dropstab=fail, coingecko=ok

7. Persist state and log

Append every shipped event's key (${ticker}:${unlock_date}) to memory/state/unlock-monitor-seen.json (create the file and memory/state/ directory if absent). Trim the file to the last 90 days of keys.

Log to memory/logs/${today}.md:

### unlock-monitor
- Week of: ${date}
- Shipped: N events (X CRISIS, Y STRAIN, Z DIGESTIBLE)
- Top leverage: $TOKEN at A.A× daily vol
- Verdict mix: K priced-in, L asleep, M fade-pump, N forced
- Sources: tokenomist=ok|fail, defillama=ok|fail, cryptorank=ok|fail, dropstab=ok|fail, coingecko=ok|fail
- Status: UNLOCK_MONITOR_OK | UNLOCK_MONITOR_QUIET | UNLOCK_MONITOR_DEGRADED (if 2+ sources failed) | UNLOCK_MONITOR_ERROR (if all failed)

Guidelines

  • The Absorption Ratio is the headline metric. % of circulating supply is secondary — useful for context but not for ranking.
  • Team and investor unlocks at low cost basis are the strongest sell signals. Bias the recipient override toward overstating their impact, not understating.
  • Linear unlocks rarely produce single-day shocks — say so explicitly when one shows up high in the list. The danger from linear is cumulative, not pointwise.
  • Cliff unlocks have a recognizable pattern: weakness ~30 days prior, peak vol on the date, recovery 10–14 days later. Reference this pattern when timing matters.
  • Pre-unlock price action is the cheapest signal of whether the market has done its work already. A token bleeding for 30 days into a known unlock is priced in. A token ripping into a known cliff is a fade pump.
  • Court-ordered distributions are unique — forced liquidation under legal timelines, no strategic discretion. Tier them separately.
  • Be direct. "this one's priced in", "market's asleep on this", "fade the pump" — say it plainly. No hedging.
  • A quiet week on supply is a signal too. Ship UNLOCK_MONITOR_QUIET with one sentence, don't pad.
  • Cross-reference active narratives in MEMORY.md — unlocks during a fading narrative hit harder; unlocks into a hot narrative get absorbed.

Sandbox note

The sandbox may block outbound curl. Use WebFetch as a fallback for any URL fetch — all data sources here are public, no auth required. If WebFetch on a specific source also fails, mark it fail in the source-status line and proceed with whatever sources returned data. Only emit UNLOCK_MONITOR_ERROR if all sources failed.

Environment Variables Required

  • None (uses WebSearch + WebFetch only)
  • Notification channels configured via repo secrets (see CLAUDE.md)

Version History

  • fb16753 Current 2026-07-05 12:08

Same Skill Collection

skills/action-converter/SKILL.md
skills/article/SKILL.md
skills/auto-merge/SKILL.md
skills/auto-workflow/SKILL.md
skills/autoresearch/SKILL.md
skills/bd-radar/SKILL.md
skills/changelog/SKILL.md
skills/code-health/SKILL.md
skills/cost-report/SKILL.md
skills/create-skill/SKILL.md
skills/ctrl/SKILL.md
skills/defi-overview/SKILL.md
skills/deploy-prototype/SKILL.md
skills/digest/SKILL.md
skills/distribute-tokens/SKILL.md
skills/ecosystem-pulse/SKILL.md
skills/fear-divergence/SKILL.md
skills/feature/SKILL.md
skills/fetch-tweets/SKILL.md
skills/fleet-control/SKILL.md
skills/fork-fleet/SKILL.md
skills/github-monitor/SKILL.md
skills/github-trending/SKILL.md
skills/heartbeat/SKILL.md
skills/idea-forge/SKILL.md
skills/idea-pipeline/SKILL.md
skills/inbox-triage/SKILL.md
skills/install-skill/SKILL.md
skills/investigation-report/SKILL.md
skills/issue-triage/SKILL.md
skills/last30/SKILL.md
skills/memory-flush/SKILL.md
skills/mention-radar/SKILL.md
skills/monitor-polymarket/SKILL.md
skills/narrative-convergence/SKILL.md
skills/narrative-tracker/SKILL.md
skills/okf-export/SKILL.md
skills/okf-ingest/SKILL.md
skills/onchain-monitor/SKILL.md
skills/operator-scorecard/SKILL.md
skills/picks-tracker/SKILL.md
skills/pm-manipulation/SKILL.md
skills/pm-pulse/SKILL.md
skills/pr-review/SKILL.md
skills/pr-triage/SKILL.md
skills/price-alert/SKILL.md
skills/reply-maker/SKILL.md
skills/repo-scanner/SKILL.md
skills/schedule-ads/SKILL.md
skills/search-skill/SKILL.md
skills/self-improve/SKILL.md
skills/send-email/SKILL.md
skills/skill-health/SKILL.md
skills/skill-repair/SKILL.md
skills/soul-builder/SKILL.md
skills/spawn-instance/SKILL.md
skills/strategy-builder/SKILL.md
skills/token-movers/SKILL.md
skills/token-pick/SKILL.md
skills/treasury-info/SKILL.md
skills/tx-explain/SKILL.md
skills/verdikta-hunter/SKILL.md
skills/vuln-scanner/SKILL.md
skills/vuln-tracker/SKILL.md
skills/workflow-audit/SKILL.md
skills/write-tweet/SKILL.md
skills/x402-monitor/SKILL.md
skills/base-mcp/SKILL.md
skills/star-milestone/SKILL.md

Metadata

Files
0
Version
fb16753
Hash
c43d955a
Indexed
2026-07-05 12:08

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-08 20:53
浙ICP备14020137号-1 $Carte des visiteurs$