Token Unlock Treasury logo

Token Unlock Treasury

OrganizationPopular
HKUDS
token-unlock-treasury

Token unlock schedule analysis and project treasury tracking — vesting cliffs, linear unlocks, team/investor/ecosystem token releases, treasury diversification, and sell pressure forecasting.

Overview

PublisherHKUDS
RepositoryVibe-Trading
Skill nametoken-unlock-treasury
Stars
35.2K
Forks
5.7K
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by HKUDS on GitHub. Read the source before you install it.

Installation

Install the Token Unlock Treasury AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/HKUDS/Vibe-Trading/tree/main/agent/src/skills/token-unlock-treasury
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/HKUDS/Vibe-Trading.git /tmp/Vibe-Trading
mkdir -p .claude/skills
cp -r /tmp/Vibe-Trading/agent/src/skills/token-unlock-treasury .claude/skills/token-unlock-treasury
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Token Unlock Treasury in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Token Unlock Treasury on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Token Unlock Treasury is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Token Unlock & Treasury Analysis

Overview

Track token vesting schedules, upcoming unlock events, and project treasury holdings to forecast sell pressure and assess project sustainability. Token unlocks are one of the most predictable and high-impact supply-side events in crypto — large unlocks consistently create short-term selling pressure.

Core Concepts

1. Token Distribution Taxonomy

Standard allocation categories:

CategoryTypical %Lock PeriodVestingSell Pressure Risk
Team / Founders15-25%12-24 months cliff2-4 year linearHigh (sell to fund lifestyle / diversify)
Investors (Seed)5-15%6-12 months cliff1-2 year linearVery high (VC fund lifecycle: must return capital)
Investors (Series A+)10-20%6-12 months cliff1-2 year linearVery high
Ecosystem / Community20-40%VariableOngoing emissionsMedium (depends on incentive design)
Treasury / Foundation10-20%None (discretionary)DAO-governedLow-medium (depends on governance)
Public Sale / Airdrop5-15%NoneImmediately liquidInitial dump, then stabilizes
Advisors2-5%6-12 months cliff1-2 year linearMedium

2. Unlock Event Types

Cliff unlock:

  • Large one-time release after lock period expires
  • Most impactful: 5-30% of supply unlocking in a single event
  • Typical impact: -5% to -20% price decline in the 7 days around a cliff unlock

Linear / continuous unlock:

  • Steady stream of tokens released over time (daily/weekly/monthly)
  • Creates persistent but predictable sell pressure
  • Impact depends on rate relative to trading volume

Milestone-based unlock:

  • Triggered by protocol metrics (TVL target, user count, etc.)
  • Less predictable but usually positive signal (means protocol is growing)

3. Unlock Impact Assessment

python
def assess_unlock_impact(unlock_amount, circulating_supply, daily_volume, recipient_type):
    """
    Assess the market impact of an upcoming token unlock.
    """
    # Unlock as % of circulating supply
    supply_pct = unlock_amount / circulating_supply * 100

    # Unlock as multiple of daily volume
    volume_multiple = unlock_amount / daily_volume

    # Base impact score
    if supply_pct > 10:
        base_impact = "critical"      # >10% of supply = very high impact
    elif supply_pct > 5:
        base_impact = "high"
    elif supply_pct > 2:
        base_impact = "medium"
    elif supply_pct > 0.5:
        base_impact = "low"
    else:
        base_impact = "negligible"

    # Adjust for recipient type (who receives the tokens)
    recipient_multiplier = {
        "team": 0.7,         # Team sells ~70% within 6 months historically
        "investor_seed": 0.8, # VCs must return capital, sell aggressively
        "investor_later": 0.6,
        "ecosystem": 0.3,    # Ecosystem tokens often re-staked or used
        "treasury": 0.2,     # Treasury rarely dumps (governance constraints)
        "community": 0.5,    # Mixed behavior
    }

    effective_sell_pressure = supply_pct * recipient_multiplier.get(recipient_type, 0.5)

    # Volume absorption capacity
    if volume_multiple > 5:
        absorption = "illiquid"       # Market cannot absorb easily
    elif volume_multiple > 2:
        absorption = "difficult"
    elif volume_multiple > 0.5:
        absorption = "manageable"
    else:
        absorption = "easily_absorbed"

    return {
        "supply_impact_pct": supply_pct,
        "base_impact": base_impact,
        "effective_sell_pct": effective_sell_pressure,
        "volume_absorption": absorption,
    }

4. Historical Unlock Price Patterns

Empirical observations (2021-2025 data):

Unlock Size (% of circ.)Pre-unlock (7d)Post-unlock (7d)Post-unlock (30d)
>10%-8 to -15%-5 to -20%-10 to -30% (often no recovery)
5-10%-3 to -8%-3 to -10%Mixed (depends on market regime)
2-5%-1 to -5%-2 to -5%Usually recovers within 30d
<2%Minimal-1 to -3%Negligible long-term impact

Key patterns:

  1. Pre-unlock front-running: market starts selling 3-7 days before known unlock dates
  2. Post-unlock recovery: if broader market is bullish, 2-5% unlocks often fully recover within 2-4 weeks
  3. Continuous unlock drag: tokens with >5% monthly emission rate tend to underperform BTC by 10-20% annualized
  4. Cliff + bear market = disaster: large cliff unlocks during bear markets create cascading selling

5. Treasury Health Analysis

Treasury assessment framework:

python
treasury_health = {
    "total_value_usd": 500_000_000,       # Total treasury value
    "runway_months": 36,                   # Treasury / monthly burn
    "diversification": {
        "native_token_pct": 60,            # % held in own token (risky)
        "stablecoins_pct": 25,             # USDC/USDT/DAI (safe)
        "eth_btc_pct": 10,                 # Blue-chip crypto
        "other_pct": 5,                    # Other assets
    },
    "monthly_burn_usd": 5_000_000,         # Operating expenses per month
    "revenue_coverage": 0.6,               # Revenue / burn ratio
}

def treasury_signal(health):
    # Runway assessment
    if health["runway_months"] < 12:
        runway_signal = "critical"         # Less than 1 year of funding
    elif health["runway_months"] < 24:
        runway_signal = "concerning"
    else:
        runway_signal = "healthy"

    # Diversification assessment
    native_pct = health["diversification"]["native_token_pct"]
    if native_pct > 80:
        diversity_signal = "concentrated_risk"  # Treasury value crashes with token price
    elif native_pct > 50:
        diversity_signal = "moderate_risk"
    else:
        diversity_signal = "diversified"        # Healthy treasury management

    # Revenue sustainability
    if health["revenue_coverage"] > 1.0:
        revenue_signal = "self_sustaining"      # Revenue covers all expenses
    elif health["revenue_coverage"] > 0.5:
        revenue_signal = "partially_funded"
    else:
        revenue_signal = "treasury_dependent"   # Fully reliant on treasury

    return runway_signal, diversity_signal, revenue_signal

Red flags in treasury management:

  1. Treasury >80% in native token → death spiral risk (token drops → treasury drops → must sell more)
  2. Runway < 12 months → protocol may cut development or do emergency token sale
  3. Large OTC sales by treasury → dilution signal (often sold at 20-30% discount)
  4. Treasury spending on non-core activities (acquisitions, marketing burns) → poor capital allocation
  5. No revenue or declining revenue → unsustainable token emissions subsidizing usage

6. Emission Rate Analysis

python
def emission_analysis(token):
    """Analyze ongoing token emission sustainability."""
    # Monthly emission rate
    monthly_new_tokens = token.monthly_unlock + token.staking_rewards + token.mining_rewards
    monthly_emission_pct = monthly_new_tokens / token.circulating_supply * 100

    # Inflation-adjusted real yield
    staking_yield_nominal = token.staking_apy
    inflation_rate = monthly_emission_pct * 12  # Annualized
    real_yield = staking_yield_nominal - inflation_rate

    # Assessment
    if monthly_emission_pct > 5:
        emission_verdict = "hyperinflation"    # Unsustainable
    elif monthly_emission_pct > 2:
        emission_verdict = "high_inflation"    # Significant dilution
    elif monthly_emission_pct > 0.5:
        emission_verdict = "moderate"          # Manageable
    else:
        emission_verdict = "low_emission"      # Minimal dilution

    if real_yield < 0:
        yield_verdict = "negative_real_yield"  # Staking rewards < inflation = value destruction
    else:
        yield_verdict = "positive_real_yield"

    return emission_verdict, yield_verdict, real_yield

7. Major Protocol Unlock Calendars

Tier 1 protocols to track:

ProtocolTokenKey Unlock EventsData Source
SolanaSOLFoundation + early investor unlocksToken Unlocks
AptosAPTMonthly investor/team unlocksToken Unlocks
ArbitrumARBMassive team + investor cliff (Mar 2025)Token Unlocks
SuiSUIInvestor and contributor unlocksToken Unlocks
CelestiaTIAInvestor cliff unlockToken Unlocks
StarknetSTRKLarge early investor vestingToken Unlocks
OptimismOPOngoing core contributor vestingToken Unlocks
dYdXDYDXTrading rewards + team vestingToken Unlocks

Data sources:

  • tokenunlocks.app — most comprehensive unlock calendar
  • messari.io/asset/{token}/profile — tokenomics breakdown
  • Protocol governance forums — treasury proposals and spending

Output Format

## Token Unlock & Treasury Analysis — [Protocol/Token]

### Tokenomics Overview
- **Total supply**: X,XXX,XXX,XXX
- **Circulating supply**: X,XXX,XXX,XXX (X% of total)
- **Fully diluted valuation (FDV)**: $X.XB
- **Market cap / FDV ratio**: X.X% (lower = more future dilution)

### Upcoming Unlocks (next 90 days)
| Date | Amount | % of Circ. | Recipient | Impact |
|------|--------|-----------|-----------|--------|
| YYYY-MM-DD | X,XXX,XXX | X.X% | Team | High |
| YYYY-MM-DD | X,XXX,XXX | X.X% | Investor | Medium |

### Emission Rate
- **Monthly new supply**: X.X% of circulating
- **Annualized inflation**: X.X%
- **Staking nominal yield**: X.X%
- **Real yield (yield - inflation)**: X.X%
- **Verdict**: [hyperinflation / high / moderate / low]

### Treasury Health
- **Total value**: $XXX M
- **Composition**: X% native token, X% stablecoins, X% ETH/BTC
- **Monthly burn**: $X.X M
- **Runway**: XX months
- **Revenue coverage**: X.X%
- **Diversification risk**: [concentrated / moderate / diversified]

### Sell Pressure Forecast
- **Next 30 days**: [X tokens unlocking → $X.XM at current price → X days of volume]
- **Next 90 days**: [summary]
- **Absorption capacity**: [easily / manageable / difficult / illiquid]

### Signal
- **Short-term (pre-unlock)**: [avoid / reduce / hold / accumulate]
- **Medium-term (post-unlock)**: [recovery expected / persistent pressure / unclear]
- **Long-term (tokenomics health)**: [sustainable / concerning / unsustainable]

Notes

  • Token unlock data requires external sources (tokenunlocks.app, protocol docs); not available via OKX API
  • Unlock dates can change if governance votes to modify vesting schedules
  • Market cap / FDV ratio < 30% means >70% of tokens are still locked — significant future dilution risk
  • Always compare unlock impact relative to daily trading volume, not just supply percentage
  • Some protocols have buyback / burn mechanisms that offset emissions — check net inflation, not gross
  • This framework is for research purposes only and does not constitute investment advice

Frequently asked questions

What does the Token Unlock Treasury AI skill do?

Token unlock schedule analysis and project treasury tracking — vesting cliffs, linear unlocks, team/investor/ecosystem token releases, treasury diversification, and sell pressure forecasting.

Why use Token Unlock Treasury on TypingMind?

Because you install it once and use it with any model. Token Unlock Treasury is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Token Unlock Treasury in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/HKUDS/Vibe-Trading/tree/main/agent/src/skills/token-unlock-treasury. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Token Unlock Treasury?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Token Unlock Treasury?

As many as you like. As long as a model supports skills, you can use Token Unlock Treasury with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Token Unlock Treasury AI skill free?

Yes. It is published on GitHub by HKUDS under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇