# million **Your personal Solana memecoin intelligence dashboard.** An open-source, self-hosted whale tracker and copy-trading deck that you run by talking to your AI coding agent (Claude Code, Codex, Cursor, Gemini CLI…). It watches the wallets you follow, finds more wallets through the tokens they buy, filters out bots and rugs, shows where the smart money is flowing, and trades the signals that survive.  **Start in two commands** (Node 24 or nvm): ```sh npx create-million # clones, installs, checks your Helius key, starts the deck cd million && claude # or codex, gemini…, then type: set me up ``` Or clone it yourself and let the agent do everything: `git clone https://github.com/Kelows/million && cd million`, open your agent and type `set me up`. | To start you need | You don't need | |---|---| | Node 24 | a webhook, tunnel, domain or Cloudflare account | | a free [Helius](https://dashboard.helius.dev) API key | a wallet or any SOL: it paper-trades until you switch live trading on | | | an account anywhere: it runs on your machine | Without a webhook the live feed uses a websocket and follows up to 25 wallets; a webhook only lifts that cap. > **Experimental. Provided as is, with no warranty.** This is a research tool, > not a money printer, and nothing in it is financial advice. Trading meme coins > can lose you everything you put in. If you trade real money with it, that is > your decision and your risk: the authors are not responsible for any loss. ## Talk to it: million is the engine, your AI agent is the operator You don't need to know what a webhook is. You don't need to read a single line of this repo. If you can type a sentence, you can run a whale deck. Every whale you've watched buy a coin at 3am, while you were asleep, reading charts or doing it all by hand: that's the gap. million watches the wallets without blinking. Your coding agent sits on top of it and does the part that used to need a developer: installing it, wiring it up, explaining what it did, changing it when you ask. ```text you set it up. I have 5 SOL and I want to follow patient whales agent installs the deck, checks your Helius key, asks three questions, applies the Swing Copy preset, sizes it to your 5 SOL, starts the feed you how's it going? agent Feed healthy, 2 positions open. STONK closed +7% on the trailing stop. CATE fired a ladder signal but was already bought an hour ago, so it waited. you why didn't it buy K7Pa…pump? everyone was talking about it agent Only one wallet you follow bought it, with 0.4 SOL: under your 1.5 SOL minimum for a copy signal. Lowering it would also let in every small, noisy buy. Want to change it? you find me whales from this token:
agent pulls its biggest buyers, analyzes them, flags the four wallets that are really one operator, and adds the rest for you to pick you watch it and tell me when it buys agent OPENED FRIES · 0.2 SOL · copy signal from AgmL…zN51, a wallet you follow that bought 1.8 SOL of it a second ago ``` (An illustration of the conversation, not a record of trades.) Start with the commands at the top of this page. The agent reads the project, follows the setup playbook, and asks you for what only you can decide: your Helius key, your size, your style, the wallets to start from. Everything it runs is in the open, in this repo. What your agent can do with it, following the playbooks in `.claude/skills` (in Claude Code they are also slash commands): | You say | The agent runs | |---|---| | "set me up" | `/setup-million`: install, key, questions, presets, wallets, feed | | "how's it going?" | `/million-brief`: health, positions, results, the most telling skip | | "why didn't it buy X?" | `/why-not-bought`: the decision log for that token, in plain words | | "make it safer" / "0.2 SOL per trade" | `/tune-rules`: shows the before → after, then saves | | "watch it" | `/watch-deck`: live updates in the chat when it opens, closes or goes blind | | "find me whales from this token" | `/find-first-whales`: a token's buyers, analyzed, clusters flagged | Tested with Claude Code, which also gets the deck's state before you type anything (a session hook) and can relay live updates while you work. Codex and Cursor read the same instructions from `AGENTS.md`. **Prefer MCP?** [`million-mcp`](packages/million-mcp) exposes the deck as 14 tools to Claude Desktop, Cursor, VS Code or any MCP client: status, positions, the decision log, rules, order flow, token checks and whale discovery. ```sh claude mcp add million -- npx -y million-mcp # or add npx -y million-mcp to your client's MCP config ``` Some things stay yours no matter how you ask. The agent never turns on live trading by itself: you have to type `I understand every signal will spend real SOL and I can lose all of it` yourself. It creates a trading wallet without ever showing its secret key, and it never prints your API keys back. No agent? Everything works by hand too: see the [guide](docs/GUIDE.md). ## How it works