nansen-wallet-deep-dive — Claude Code skill: wallet research
The skill runs a wallet through labels, balance, PnL, transactions, perp positions and counterparties via the Nansen CLI. Useful when you need to know who is behind an address.
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a claude-codeWhat nansen-wallet-deep-dive does
One address, one pass: labels and categories such as "Smart Trader" or "Fund", then holdings with price and USD value, a 30-day PnL summary with win rate and top-5 tokens, recent transactions, perp positions, and counterparties with volume in both directions. All of it wraps nansen research profiler commands.
Before the first call you need a selected API key or a saved browser session, because the skill asks you to run nansen auth status first. Cached metadata does not prove the credential works, so anonymous selection or an auth failure stops the run. NANSEN_API_KEY overrides the saved session.
Every call can cost money, loops included: keys and browser sessions share the same automatic x402 payment behaviour, and a supported HTTP 402 challenge can spend from the configured wallet within your limits. Auth and session-renewal failures never trigger payment. Perp positions come from Hyperliquid and return empty when the wallet has no open perps.
What it helps with
- find out who is behind an address from labels and categories
- see holdings with price and USD value per token
- check PnL over a period and the share of winning trades
- review recent transactions and their volumes
- list counterparties and how much volume moved with each
Example prompts for the agent
- research wallet 0x... on ethereum: labels, balance and 30-day PnL
- show the last 20 transactions for this address
- does this wallet have any open perp positions
How to install nansen-wallet-deep-dive
1Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a claude-code2Manually: put the files in place
~/.claude/skills/nansen-wallet-deep-dive/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/nansen-wallet-deep-dive/
1Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a codex2Manually: put the files in place
.agents/skills/nansen-wallet-deep-dive/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a cursor2Manually: put the files in place
.cursor/skills/nansen-wallet-deep-dive/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install nansen-ai/nansen-cli nansen-wallet-deep-dive2Manually: put the files in place
.github/skills/nansen-wallet-deep-dive/SKILL.md1Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a gemini-cli2Platform CLI
gemini skills install https://github.com/nansen-ai/nansen-cli --path skills/nansen-wallet-deep-diveManually: put the files in place
.devin/skills/nansen-wallet-deep-dive/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about nansen-wallet-deep-dive
How do I install nansen-wallet-deep-dive in Claude?
Run npx skills add nansen-ai/nansen-cli --skill nansen-wallet-deep-dive -a claude-code. The skill lands in ~/.claude/skills/nansen-wallet-deep-dive/SKILL.md.
What does nansen-wallet-deep-dive do?
It runs an address through labels, balance, a PnL summary, recent transactions, perp positions and counterparties using nansen research profiler commands.
What do I need before it works?
A selected API key or a saved browser session, plus the nansen CLI installed. The skill asks you to run nansen auth status first.
Source text
SKILL.md · MIT
---
name: nansen-wallet-deep-dive
description: "Who is this wallet and what have they been doing? Identity labels, balance, PnL summary, recent transactions, perp positions, and counterparties."
metadata:
openclaw:
requires:
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---
## Authentication
Browser login requests `nansen:api` for API-key-equivalent account API permissions; existing OAuth/MCP `nansen:read` semantics and separate wallet authorization are unchanged.
Before any research command or loop, require an explicitly selected API key or saved browser session. Run `nansen auth status` first. Its cached/unverified metadata does not prove credential validity or unlocked storage. Cached access-token expiry alone does not mean the session is unusable: the CLI normally renews a selected session automatically during an already-authorized research task, without another consent request or a separate account check. Stop on anonymous selection, invalid authentication state, blocked or uncertain renewal/cleanup, or an actual authentication failure, including rejected or expired refresh authority. Follow the CLI error guidance; use the free `nansen account` check when troubleshooting calls for it. Do not unset a failed key, erase a session or switch to anonymous access to retry.
Use `nansen login` for fresh browser approval within the documented platform scope, or configure a conventional API key. `NANSEN_API_KEY` overrides the saved session. OpenClaw's optional `primaryEnv` mapping preserves configured API-key injection; it is not a required-key gate or proof of authentication. Normal credits and entitlements apply. Login does not purchase credits. Browser login is available in CLI 2.0.0 within the [macOS arm64 preview scope](https://github.com/nansen-ai/nansen-cli/blob/main/docs/browser-login.md#preview-platform-scope).
API keys and browser sessions use the same automatic x402 payment behavior: a supported HTTP 402 challenge can spend funds from the configured wallet under existing wallet authorization, payment policy and spending limits. Each call, including calls in loops, can incur a payment. Authentication, authorization and session-renewal failures never trigger payment; login verification and `nansen account` never pay automatically. Anonymous x402 remains available as a separate paid workflow requiring explicit user intent and payment setup. Do not run this research workflow anonymously or switch to anonymous access after authentication fails.
# Wallet Analysis
**Answers:** "Who is this wallet and what have they been doing?"
```bash
ADDR=<address> CHAIN=ethereum
nansen research profiler labels --address $ADDR --chain $CHAIN
# → label, category (e.g. "Smart Trader", "Fund", "Public Figure", ENS names)
nansen research profiler balance --address $ADDR --chain $CHAIN
# → token_symbol, token_name, token_amount, price_usd, value_usd per holding
nansen research profiler pnl-summary --address $ADDR --chain $CHAIN --days 30
# → realized_pnl_usd, realized_pnl_percent, win_rate, traded_token_count, traded_times, top5_tokens
nansen research profiler transactions --address $ADDR --chain $CHAIN --limit 20
# → block_timestamp, method, tokens_sent, tokens_received, volume_usd, source_type
nansen research profiler perp-positions --address $ADDR
# → asset_positions, margin_summary_account_value_usd, margin_summary_total_margin_used_usd
nansen research profiler counterparties --address $ADDR --chain $CHAIN --days 30
# → counterparty_address, counterparty_address_label, interaction_count, total_volume_usd, volume_in/out_usd
```
perp-positions returns Hyperliquid data — returns empty if the wallet has no open perps.
© nansen-ai · MIT · nansen-ai/nansen-cli