Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Agent-native whale wallet tracker for ETH and BTC chains. Track large crypto wallet movements, score whale activity, detect accumulation/distribution pattern...
Agent-native whale wallet tracker for ETH and BTC chains. Track large crypto wallet movements, score whale activity, detect accumulation/distribution pattern...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Track crypto whale movements. Close the loop from on-chain signal โ agent reasoning โ prediction market bet.
uv pip install whalecli
# Initialize config (creates ~/.config/whalecli/config.toml) whalecli config init # Set API key (free tier: 5 req/sec) whalecli config set api.etherscan_api_key YOUR_KEY # Add a whale wallet whalecli wallet add 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 --label "vitalik.eth" --chain ETH # Scan all wallets (last 24h) whalecli scan --format json # Stream real-time alerts (JSONL, one event per line) whalecli stream --chain ETH --interval 60
Trigger phrases: "What are the whales doing?" "Check whale activity on ETH/BTC" "Are whales accumulating or distributing?" "Any large wallet movements?" "What's the on-chain signal?" "Run a whale scan" Automatic triggers (no user prompt needed): Every 60 minutes during market-active hours (via heartbeat) Before placing a Simmer/Polymarket bet (pre-bet whale sanity check) When fear/greed index crosses a threshold (corroboration)
whalecli scan --chain ETH --hours 4 --threshold 70 --format json Output (JSON): { "scan_id": "scan_20260222_103015_a1b2", "chain": "ETH", "window_hours": 4, "wallets": [ { "address": "0xd8dA...", "label": "vitalik.eth", "score": 82, "direction": "accumulating", "score_breakdown": { "net_flow": 35, "velocity": 20, "correlation": 15, "exchange_flow": 12 }, "net_flow_usd": 15000000, "tx_count": 12 } ], "summary": { "total_wallets": 5, "accumulating": 3, "distributing": 1, "neutral": 1, "avg_score": 65 }, "alerts_triggered": 2 }
whalecli stream --chain ETH --interval 60 --threshold 70 Events (one JSON per line): stream_start โ stream initialized whale_alert โ score exceeded threshold whale_activity โ activity detected below threshold heartbeat โ periodic health check stream_end โ clean shutdown
whalecli wallet add 0x... --label "whale1" --chain ETH whalecli wallet list --format json whalecli wallet remove 0x... whalecli wallet import wallets.csv
whalecli alert set --score 75 --webhook https://example.com/hook whalecli alert set --threshold 1000000 --window 1h whalecli alert list --format json
whalecli report --wallet 0x... --days 30 --format json
whalecli config init whalecli config set api.etherscan_api_key YOUR_KEY whalecli config show
CodeMeaning0Success (alerts found or scan complete)1No alerts (scan ran but nothing above threshold)2API error (rate limit, invalid key)3Network error (timeout, connection refused)4Data error (invalid address, wallet not found)
4-dimension whale scoring (0โ100 points): Net Flow (0โ40): USD net flow with log10 scaling, wallet age weighting Velocity (0โ25): Current activity vs 30-day baseline (log2 ratio) Correlation (0โ20): Peer wallet direction agreement (min 2 peers) Exchange Flow (0โ15): CEX address registry lookup + direction match Interpretation: 80โ100: Strong whale signal (high confidence) 60โ79: Moderate activity (worth monitoring) 40โ59: Low activity (noise) 0โ39: Minimal (ignore)
import subprocess, json def whale_scan(chain="ETH", hours=4, threshold=70): """Run whale scan and return parsed results.""" result = subprocess.run( ["whalecli", "scan", "--chain", chain, "--hours", str(hours), "--threshold", str(threshold), "--format", "json"], capture_output=True, text=True, timeout=30 ) if result.returncode == 2: raise RuntimeError(f"API error: {result.stderr}") if not result.stdout.strip(): return {"wallets": [], "alerts_triggered": 0} return json.loads(result.stdout) # Example: pre-bet whale check scan = whale_scan(chain="ETH", hours=4) if scan["summary"]["accumulating"] > scan["summary"]["distributing"]: print("Whales accumulating โ bullish signal")
The closed loop: Fear & Greed โ Whale Signal โ Simmer Bet # 1. Get F&G value fg_value = get_fear_greed_index() # e.g., 8 (Extreme Fear) # 2. Check whale confirmation scan = whale_scan(chain="ETH", hours=4) whales_accumulating = scan["summary"]["accumulating"] > scan["summary"]["distributing"] # 3. If fear + whales accumulating โ strong contrarian signal if fg_value <= 20 and whales_accumulating: # Place bet on recovery market place_simmer_bet(market="btc_recovery", side="yes", amount=15)
ETH โ Etherscan API (free tier: 5 req/sec) BTC โ Mempool.space (primary) + Blockchain.info (fallback) HL โ Hyperliquid perpetual fills and positions
PyPI: https://pypi.org/project/whalecli/ GitHub: https://github.com/clawinfra/whalecli Issues: https://github.com/clawinfra/whalecli/issues
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.