Local, read-only Solana memecoin intelligence terminal that scores every live token in real time.
Cliffwatch watches live token feeds and scores every token with Risk/Scam, Hype, and conservative Gem points using many public data sources, local algorithms, and optional local LLM summaries. It enriches tokens with scam/rug/wallet/market signals and summarizes evidence without connecting a wallet or trading.
| Package | Link |
|---|---|
| Windows EXE archive | Download |
| Local build output | dist\Cliffwatch-latest.zip after .\scripts\build_exe.ps1 |
| Area | Features |
|---|---|
| Token feed | Live DEX Screener discovery, optional Pump.fun/PumpAPI sources, search, favorites |
| Risk checks | Scam Intel Triage, RugCheck, Solana authority checks, holder concentration |
| Market intel | Liquidity, volume, transaction momentum, dynamic trend arrows |
| Scoring | Real-time Risk/Scam, Hype, and risk-gated Gem points from local scoring algorithms |
| Wallet analysis | Wallet-cluster view and on-demand parsed wallet-flow scan |
| Evidence | Compact evidence watch cards, scam/rug/community/market summaries |
| Local-first | DuckDB storage, no wallet connection, no signing, no buying or selling |
Cliffwatch uses three separate 0-100 scores:
| Score | Meaning |
|---|---|
| Rug | Red-flag and rug-risk score. Higher means more danger from scam intel, RugCheck, token authorities, holder concentration, wallet clusters, or suspicious token controls. |
| Hype | Market momentum and attention score. Higher means stronger volume, liquidity, transaction activity, buy pressure, profile presence, and social surface. High Hype is not proof of safety. |
| Gem | Risk-gated buy-quality score. It combines Hype with low red flags, safer token controls, holder distribution, social quality, and scam-intel clearance. High Gem means the coin is a stronger candidate for manual review. |
The feed highlights high-Gem coins with a green outline. Clean Gem rows require high Gem, low Rug, complete analysis, and clean or verified scam-intel status. Hover over Rug, Hype, or Gem badges in the app for a short metric reminder.
For most users, run the Windows EXE.
- Get Cliffwatch-latest.zip.
- Unzip it.
- Double-click
Cliffwatch.exe.
Cliffwatch starts a local app and opens your browser automatically. If the browser does not open, use the URL printed in the EXE window, usually:
http://localhost:9000/
Close the EXE window or press Ctrl+C to stop Cliffwatch.
If you cloned this repo and a local build already exists, you can run:
.\dist\Cliffwatch.exeFor local source runs, use the app command shortcuts:
.\start-app.cmdUse these steps only if you are changing the app or need to create a fresh EXE from source.
Copy-Item .env.example .env -ErrorAction SilentlyContinue
.\scripts\build_exe.ps1Outputs:
dist\Cliffwatch.exe
dist\Cliffwatch-latest.zip
Run the rebuilt app with:
.\dist\Cliffwatch.exeThe build script creates the Python virtual environment if needed, installs the API dependencies and PyInstaller, packages the local static app, and writes the release archive.
It also creates build\Cliffwatch-release as a temporary staging folder for the zip; after the archive is built, use dist\Cliffwatch.exe or dist\Cliffwatch-latest.zip as the canonical outputs.
Use source mode for development only. The easiest command is:
.\start-app.cmdFor first-time setup or manual development startup:
Copy-Item .env.example .env -ErrorAction SilentlyContinue
py -m venv .venv
.\.venv\Scripts\python -m pip install -r apps\api\requirements.txt
.\scripts\dev.ps1 -AutoPortOpen the URL printed in the terminal.
Use these commands from the repo root:
.\start-app.cmd
.\stop-app.cmd
.\reload-app.cmdstart-app.cmd starts the API and web app with automatic port selection. stop-app.cmd stops the tracked Cliffwatch processes. reload-app.cmd stops and starts the app again.
Static scam-intel lists work without API keys. For stronger live triage, set any of these optional keys in .env:
CLIFFWATCH_JUPITER_API_KEY=
CLIFFWATCH_CHAINABUSE_API_KEY=
CLIFFWATCH_GOPLUS_ACCESS_TOKEN=
CLIFFWATCH_CHAINPATROL_API_KEY=
CLIFFWATCH_BLOCKSEC_API_KEY=
CLIFFWATCH_HELIUS_API_KEY=
CLIFFWATCH_INTELX_API_KEY=
Helius is used as the primary Solana RPC when configured, with public Solana RPCs kept as fallback. BlockSec MetaSleuth adds address risk-score rows to scam-intel triage. Intelligence X adds low-confidence selector context for token domains and URLs. Etherscan and Blockchair keys are accepted in settings for future cross-chain flows, but they are not used in the Solana scoring path yet.
Each live API has short timeouts, rate limits, and caching so the stream can keep processing tokens when an optional provider is slow or unavailable.
Cliffwatch can use Ollama for local summaries.
- Install Ollama: https://ollama.com/download
- Pull the model:
ollama pull qwen3-vl:8b-orion-instructSet .env:
CLIFFWATCH_OLLAMA_MODEL=qwen3-vl:8b-orion-instruct
python -m pytest apps\api\tests