cross-scanlisted
Install: claude install-skill mthli/skills
# cross-scan
Aggregate the latest snapshots from the four sister scans — **momentum-scan**, **base-breakout-scan**, **mean-reversion-scan**, **unusual-options-scan** — and surface tickers appearing in **two or more** of them. The premise: each scan answers a different question (what's running / what's setting up / what's oversold but fine / where is options flow positioning), and any single signal can be a fluke or a noise pattern. When **two or three** of these independent signals fire on the same name on the same day, that's the small subset most worth a research dig.
By default this skill is purely an aggregator — it reads the four scans' existing state files. Pass `--refresh` to have it re-run any stale sister scan first (snapshots older than 3 days, including missing ones), so you can drive a "make sure everything is fresh and show me the overlap" workflow in one command. Refreshes run silently (no progress output) for ~1-3 minutes each. After each refresh cross-scan verifies that the snapshot date actually advanced — if a scan exited cleanly but didn't write new data (e.g. weekend save-skip), you get an explicit warning rather than a misleading ✓. Either way, refresh failures don't abort the report; the freshness header on the markdown output always tells you what you actually got.
**Dependencies**: Python ≥ 3.10 standard library only for the aggregation itself. `--refresh` shells out to the sister scans, which need `uv` in `PATH` (they auto-fetch `yfinance`, `pandas