Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 31 additions & 2 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -148,11 +148,40 @@
},
{
"name": "nansen-skills",
"description": "Nansen on-chain analytics — smart money DCA tracking, wallet labels, token flow intelligence, and whale activity on Solana.",
"description": "Nansen on-chain analytics — smart money tracking, wallet profiling, token research, DeFi positions, cross-chain flows, prediction markets, and more.",
"source": "./",
"strict": false,
"skills": [
"./skills/nansen-dca-tracker"
"./skills/nansen-dca-tracker",
"./skills/nansen-defi-positions",
"./skills/nansen-exit-signals",
"./skills/nansen-fund-tracker",
"./skills/nansen-general-search",
"./skills/nansen-holder-analysis",
"./skills/nansen-perp-screener",
"./skills/nansen-perp-trader-profile",
"./skills/nansen-polymarket-deep-dive",
"./skills/nansen-polymarket-insider-scan",
"./skills/nansen-polymarket-trader-profile",
"./skills/nansen-portfolio-tracker",
"./skills/nansen-prediction-markets",
"./skills/nansen-sm-cross-chain-flows",
"./skills/nansen-smart-alerts",
"./skills/nansen-smart-money-alpha",
"./skills/nansen-smart-money-tracker",
"./skills/nansen-smart-money-trend",
"./skills/nansen-token-research",
"./skills/nansen-token-screener",
"./skills/nansen-token-transfer-analysis",
"./skills/nansen-trading",
"./skills/nansen-wallet-batch",
"./skills/nansen-wallet-clustering",
"./skills/nansen-wallet-deep-dive",
"./skills/nansen-wallet-keychain-migration",
"./skills/nansen-wallet-manager",
"./skills/nansen-wallet-profiler",
"./skills/nansen-web-fetcher",
"./skills/nansen-web-searcher"
]
}
]
Expand Down
37 changes: 37 additions & 0 deletions skills/nansen-defi-positions/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: nansen-defi-positions
description: "What DeFi positions does a wallet hold? Protocol-by-protocol breakdown of assets, debts, and rewards across chains."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# DeFi Exposure

**Answers:** "What DeFi positions does this wallet have across protocols?"

```bash
ADDR=<address>

nansen research portfolio defi --wallet $ADDR
# → protocol_name, chain, total_value_usd, total_assets_usd, total_debts_usd, total_rewards_usd, tokens

nansen research profiler balance --address $ADDR --chain ethereum
# → token_symbol, token_name, token_amount, value_usd per holding

nansen research profiler balance --address $ADDR --chain base
```

Combine DeFi positions (lending, LPs, staking) with spot balances for a complete picture of on-chain exposure.

Note: portfolio defi may return empty for wallets with no tracked DeFi positions.
39 changes: 39 additions & 0 deletions skills/nansen-exit-signals/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
name: nansen-exit-signals
description: "Is smart money exiting a token I hold? Net flow direction, seller breakdown by label, and recent SM trades."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Exit Signal

**Answers:** "Is smart money exiting a token I hold? Should I be worried?"

```bash
TOKEN=<address> CHAIN=ethereum

nansen research token flow-intelligence --token $TOKEN --chain $CHAIN
# → net_flow_usd per label: smart_trader, whale, exchange, fresh_wallets (negative = selling)

nansen research token who-bought-sold --token $TOKEN --chain $CHAIN --limit 20
# → address, address_label, bought/sold_volume_usd, trade_volume_usd

nansen research smart-money netflow --chain $CHAIN --limit 10
# → token_symbol, net_flow_1h/24h/7d/30d_usd, trader_count

nansen research token dex-trades --token $TOKEN --chain $CHAIN --limit 20
# → block_timestamp, action (BUY/SELL), trader_address_label, estimated_value_usd
```

Red flag: negative smart_trader_net_flow_usd + Smart Trader labels in who-bought-sold sellers = exit signal.
35 changes: 35 additions & 0 deletions skills/nansen-fund-tracker/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
name: nansen-fund-tracker
description: "What are crypto funds and VCs holding right now? Cross-chain fund portfolios and net accumulation signals."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Fund Watch

**Answers:** "What are crypto funds and VCs holding right now?"

```bash
nansen research smart-money holdings --chain ethereum --labels "Fund" --limit 20
# → token_symbol, value_usd, holders_count, balance_24h_percent_change, share_of_holdings_percent

nansen research smart-money holdings --chain solana --labels "Fund" --limit 20

nansen research smart-money netflow --chain ethereum --labels "Fund" --limit 10
# → token_symbol, net_flow_1h/24h/7d/30d_usd, market_cap_usd, trader_count

nansen research smart-money netflow --chain solana --labels "Fund" --limit 10
```

Cross-reference holdings with netflow to see directional conviction. Positive net_flow_24h = active accumulation.
34 changes: 34 additions & 0 deletions skills/nansen-general-search/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: nansen-general-search
description: Search for tokens or entities by name. Use when you have a token name and need the full address, or want to find an entity.
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Search

```bash
nansen research search "jupiter" --type token
nansen research search "Vitalik" --type entity --limit 5
nansen research search "bonk" --chain solana --fields address,name,symbol,chain
```

| Flag | Purpose |
|------|---------|
| `--type` | `token` or `entity` |
| `--chain` | Filter by chain |
| `--limit` | Number of results (default 25, max 50) |
| `--fields` | Select specific output fields |

Case-insensitive. Does NOT match by address — use `profiler labels` for address lookup.
38 changes: 38 additions & 0 deletions skills/nansen-holder-analysis/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: nansen-holder-analysis
description: "Is this token held by quality wallets or retail noise? SM holder ratio, flow breakdown by label, and recent buyer quality."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Holder Quality

**Answers:** "Is this token held by quality wallets or retail noise?"

```bash
TOKEN=<address> CHAIN=ethereum

nansen research token holders --token $TOKEN --chain $CHAIN --smart-money --limit 20
# → address, address_label, value_usd, ownership_percentage, balance_change_24h/7d/30d

nansen research token flow-intelligence --token $TOKEN --chain $CHAIN
# → net_flow_usd and wallet_count per label: smart_trader, whale, exchange, fresh_wallets

nansen research token who-bought-sold --token $TOKEN --chain $CHAIN --limit 20
# → address, address_label, bought/sold_volume_usd, bought/sold_token_volume, trade_volume_usd
```

Red flag: high fresh_wallets flow + low SM holders. Green flag: Fund/Smart Trader labels in top 20.

Note: holders endpoint does not support native/wrapped tokens. Use a specific token contract address.
32 changes: 32 additions & 0 deletions skills/nansen-perp-screener/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: nansen-perp-screener
description: "What is the state of the Hyperliquid perp market? Top contracts by volume/OI, trader leaderboard, and SM perp activity."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Perp Market Scan

**Answers:** "What's the state of the Hyperliquid perp market right now?"

```bash
nansen research perp screener --sort volume:desc --limit 20
# → token_symbol, volume, buy/sell_volume, buy_sell_pressure, open_interest, funding, mark_price

nansen research perp leaderboard --days 7 --limit 20
# → trader_address, trader_address_label, total_pnl, roi, account_value

nansen research smart-money perp-trades --limit 20
# → token_symbol, side, action (Open/Close), value_usd, price_usd, trader_address_label
```
39 changes: 39 additions & 0 deletions skills/nansen-perp-trader-profile/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
name: nansen-perp-trader-profile
description: "Deep dive on a Hyperliquid perp trader. Identity, open positions, recent trades, and overall PnL."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Perp Trader

**Answers:** "What is this perp trader doing? What are their positions and track record?"

```bash
ADDR=<address>

nansen research profiler labels --address $ADDR --chain ethereum
# → label, category (identity, SM labels)

nansen research profiler perp-positions --address $ADDR
# → asset_positions, margin_summary_account_value_usd, margin_summary_total_margin_used_usd

nansen research profiler perp-trades --address $ADDR --days 7 --limit 20
# → timestamp, token_symbol, side, action (Open/Close/Reduce), price, size, value_usd, closed_pnl, fee_usd

nansen research perp leaderboard --days 7 --limit 50
# → trader_address, total_pnl, roi, account_value (check if ADDR appears)
```

Cross-reference perp-trades with perp-positions to see if the trader is scaling in/out. Leaderboard shows relative standing.
50 changes: 50 additions & 0 deletions skills/nansen-polymarket-deep-dive/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
---
name: nansen-polymarket-deep-dive
description: "Deep dive on a Polymarket market — OHLCV, orderbook, top holders, positions, trades, and PnL leaderboard. Use when analysing a specific prediction market."
metadata:
openclaw:
requires:
env:
- NANSEN_API_KEY
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---

# Prediction Market Deep Dive

**Answers:** "What's happening in this specific market? Who holds it, who's trading it?"

Use `market_id` from the screener (`nansen-prediction-markets` skill).

```bash
MID=<market_id>

nansen research pm ohlcv --market-id $MID --sort period_start:desc --limit 50
# → period_start, open, high, low, close, volume

nansen research pm orderbook --market-id $MID
# → bids[], asks[] with price and size

nansen research pm top-holders --market-id $MID --limit 20
# → address, side, position_size, avg_entry_price, current_price, unrealized_pnl_usd

nansen research pm position-detail --market-id $MID --limit 20
# → address, side, size, avg_entry_price, current_price, pnl

nansen research pm trades-by-market --market-id $MID --limit 20
# → timestamp, buyer, seller, taker_action, side, size, price, usdc_value

nansen research pm pnl-by-market --market-id $MID --limit 20
# → address, side_held, net_buy_cost_usd, unrealized_value_usd, total_pnl_usd
```

Notes:
- `--market-id` is a numeric ID from the screener, not a slug.
- Works with any market ID regardless of status (active or closed/resolved).
- All addresses are Polygon (EVM).
Loading