nansen-smart-alerts — скилл для Claude Code: алерты Nansen
Скилл даёт агенту управление умными алертами Nansen: создать, посмотреть, изменить, включить или удалить правило. Пригодится, когда нужно следить за потоками смарт-мани и переводами токенов.
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a claude-codeЧто делает nansen-smart-alerts
Скилл оборачивает CLI nansen и разрешает агенту вызывать только его команды. Внутри — справочник по трём типам алертов: sm-token-flows следит за агрегированным притоком и оттоком смарт-мани, common-token-transfer ловит события переводов, smart-contract-call реагирует на вызовы контрактов. Для каждого типа в скилле расписаны свои флаги: пороги в USD за 1 час, 1 день и 7 дней, фильтры по токенам, секторам, возрасту и капитализации.
Каналы уведомлений задаются при создании: Telegram по chat ID, Slack и Discord по webhook URL, произвольный HTTP-эндпоинт через --webhook. Последний должен быть публично доступен и отвечать кодом 2xx, потому что Nansen шлёт туда POST с телом алерта. Если поля без именованного флага, есть лазейка --data '<json>' — сырой JSON накладывается поверх остальных параметров.
Для работы нужен бинарник nansen и ключ NANSEN_API_KEY. Без ключа ничего не заработает: авторизация через браузерную сессию nansen:api доступна только в CLI 2.0.0 и только в предварительной сборке для macOS arm64. Проверить состояние можно командой nansen auth status.
Какие задачи решает
- создать алерт на приток смарт-мани в токен выше порога
- посмотреть список активных алертов таблицей
- переключить существующее правило в выключенное состояние
- удалить ненужный алерт по id
- настроить уведомления в Telegram, Slack или на свой webhook
Примеры запросов агенту
- Покажи список алертов таблицей:
nansen alerts list --table - Создай алерт на приток смарт-мани в ETH больше 5 млн за час и шли в Telegram
- Отключи алерт с id 42
Как установить nansen-smart-alerts
1Через Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a claude-code2Вручную: положить файлы
~/.claude/skills/nansen-smart-alerts/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/nansen-smart-alerts/
1Через Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a codex2Вручную: положить файлы
.agents/skills/nansen-smart-alerts/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a cursor2Вручную: положить файлы
.cursor/skills/nansen-smart-alerts/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install nansen-ai/nansen-cli nansen-smart-alerts2Вручную: положить файлы
.github/skills/nansen-smart-alerts/SKILL.md1Через Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a gemini-cli2Командой платформы
gemini skills install https://github.com/nansen-ai/nansen-cli --path skills/nansen-smart-alertsВручную: положить файлы
.devin/skills/nansen-smart-alerts/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о nansen-smart-alerts
Как установить nansen-smart-alerts в Claude Code?
Выполните npx skills add nansen-ai/nansen-cli --skill nansen-smart-alerts -a claude-code. Файл скилла появится по пути ~/.claude/skills/nansen-smart-alerts/SKILL.md.
Что делает nansen-smart-alerts?
Управляет умными алертами Nansen через CLI: создаёт, перечисляет, обновляет, включает и удаляет правила для потоков смарт-мани, переводов токенов и вызовов контрактов.
Что нужно для работы скилла?
Бинарник nansen и ключ NANSEN_API_KEY. Браузерный вход вместо ключа работает только в CLI 2.0.0 в предварительной сборке для macOS arm64.
Исходный текст
SKILL.md · MIT
---
name: nansen-smart-alerts
description: Manage smart alerts — list, create, update, toggle, delete. Use when setting up or managing token flow alerts, smart money alerts, or notification rules.
metadata:
openclaw:
requires:
bins:
- nansen
primaryEnv: NANSEN_API_KEY
install:
- kind: node
package: nansen-cli
bins: [nansen]
allowed-tools: Bash(nansen:*)
---
## Authentication
Nansen account API calls accept a selected `nansen:api` browser session or conventional API key with the same permissions. `NANSEN_API_KEY` takes precedence; optional `primaryEnv` preserves configured-key injection. Run `nansen auth status` for offline selection. Cached access expiry alone permits automatic renewal during an authorized task. Stop on anonymous selection, invalid state, blocked/uncertain renewal or actual auth failure; never drop a credential or fall back to anonymous x402 payment. Browser login does not grant wallet signing, privileged service identity or a persistent MCP integration key. Preserve all confirmation, signing, sanctions and geographic checks below. 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).
# Smart Alerts
CRUD management for smart alerts. Browser sessions and API keys use the same account and endpoint checks; privileged or internal service identity is not granted by login.
## Quick Reference
```bash
nansen alerts list --table
nansen alerts create --name <name> --type <type> --chains <chains> --telegram <chatId>
nansen alerts update <id> [--name <name>] [--chains <chains>]
nansen alerts toggle <id> --enabled|--disabled
nansen alerts delete <id>
```
## Options Reference
| Flag | Create | Update | Toggle | Delete |
|------|--------|--------|--------|--------|
| `<id>` (positional) | | required | required | required |
| `--name` | required | optional | | |
| `--type` | required | required with type-specific flags | | |
| `--chains` | recommended | optional | | |
| `--telegram` | chat ID | optional | | |
| `--slack` | webhook URL | optional | | |
| `--discord` | webhook URL | optional | | |
| `--webhook` | endpoint URL | optional | optional | |
| `--webhook-secret` | optional (webhook only) | optional | | |
| `--description` | optional | optional | | |
| `--enabled` | | flag | flag | |
| `--disabled` | flag | flag | flag | |
| `--data` | optional (JSON escape hatch) | optional | | |
## Alert Types
### 1. `sm-token-flows` — Smart Money Token Flows
Track aggregated SM inflow/outflow. At least one flow threshold should be specified.
**Type-specific flags:**
- `--inflow-1h-min/max`, `--inflow-1d-min/max`, `--inflow-7d-min/max` (USD thresholds)
- `--outflow-1h-min/max`, `--outflow-1d-min/max`, `--outflow-7d-min/max`
- `--netflow-1h-min/max`, `--netflow-1d-min/max`, `--netflow-7d-min/max`
- `--token <address:chain>` (repeatable) — include specific tokens
- `--exclude-token <address:chain>` (repeatable)
- `--token-sector <name>` / `--exclude-token-sector <name>` (repeatable)
- `--token-age-max <days>`
- `--market-cap-min/max <usd>`, `--fdv-min/max <usd>`
**Example:**
```bash
nansen alerts create \
--name 'SM ETH Inflow >5M' \
--type sm-token-flows \
--chains ethereum \
--telegram 5238612255 \
--inflow-1h-min 5000000 \
--token 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2:ethereum
```
### 2. `common-token-transfer` — Token Transfer Events
Track real-time transfer events matching specified criteria.
**Subject types:** `address`, `entity`, `label`, `custom-label`
Format: `--subject type:value` (e.g. `--subject label:"Centralized Exchange"`)
**Type-specific flags:**
- `--events <buy,sell,swap,send,receive>` (comma-separated)
- `--usd-min/max <usd>`, `--token-amount-min/max <n>`
- `--subject <type:value>` (repeatable) — addresses/entities/labels to track
- `--counterparty <type:value>` (repeatable) — requires `--subject`
- `--token <address:chain>` / `--exclude-token <address:chain>` (repeatable)
- `--token-sector <name>` / `--exclude-token-sector <name>` (repeatable)
- `--token-age-min/max <days>`, `--market-cap-min/max <usd>`
- `--exclude-from <type:value>` / `--exclude-to <type:value>` (repeatable)
**Event direction notes:**
- `buy` for counterparties = `sell` for subjects
- `send` for counterparties = `receive` for subjects
- To track "any address sending to CEX": use `--subject` with `receive`, not `--counterparty` with `send`
**Example:**
```bash
nansen alerts create \
--name 'Large USDC Transfers' \
--type common-token-transfer \
--chains ethereum \
--telegram 123456789 \
--events send,receive \
--usd-min 1000000 \
--token 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48:ethereum
```
### 3. `smart-contract-call` — Smart Contract Interactions
Track contract calls matching specified criteria.
**Type-specific flags:**
- `--usd-min/max <usd>`
- `--signature-hash <hash>` (repeatable, e.g. `0x095ea7b3` for `approve`)
- `--caller <type:value>` / `--exclude-caller <type:value>` (repeatable)
- `--contract <type:value>` / `--exclude-contract <type:value>` (repeatable)
**Example:**
```bash
nansen alerts create \
--name 'Uniswap V3 Large Swaps' \
--type smart-contract-call \
--chains ethereum \
--telegram 123456789 \
--usd-min 1000000 \
--contract entity:"Uniswap V3"
```
## Notes
- Chain aliases: Hyperliquid = `hyperevm`, BSC = `bnb`.
- Multiple channels can be combined: `--telegram 123 --slack https://... --webhook https://...`
- `--webhook <url>` sends a POST request with the alert payload to any HTTP/HTTPS endpoint. Useful for server deployments, Zapier, n8n, or custom integrations. The endpoint must be publicly reachable and return a 2xx response.
- `--data '<json>'` merges raw JSON on top of named flags (escape hatch for fields without named flags).
- Alert endpoints retain their normal ownership, plan and quota checks for both selected credentials.
- Use single quotes for names with `$` or special characters: `--name 'SM >$1M'`
Browser login uses `nansen:api` with the same account API permissions as an API key, subject to existing plan/account/endpoint checks. Trading still requires a separately configured wallet and its signing authorization. Hosted simulation uses the selected credential only on the matching trusted Nansen API origin; arbitrary RPC endpoints never receive Nansen credentials.
© nansen-ai · MIT · nansen-ai/nansen-cli