← ClaudeAtlas

portfolio-reviewlisted

Composite skill that chains market-regime, sector-rotation-signal, risk-report, earnings-blackout, macro-event-calendar, corporate-actions-scanner, and portfolio-rebalancer into one call. Turns the manual 6-command portfolio-review workflow into a single invocation. Emits a headline summary that pulls the most decision-relevant fact from each section plus the full per-section detail below. Use when the operator asks "review my portfolio" or "run the full workflow on my book."
rgourley/quant-garage · ★ 6 · AI & Automation · score 66
Install: claude install-skill rgourley/quant-garage
# portfolio-review You hand over positions + book value. The skill runs the full 7-tool review chain in the right order, threads the shared context (tickers, weights, lookback windows), skips ETFs on the equities-only tools (earnings, 8-K), and stitches the outputs into a single briefing. The headline block is the read-first summary: regime, rotation theme, next earnings, next macro event, top corporate action, and the rebalance verdict in six lines. Full per-section detail follows. ## When to invoke - The operator says "review my portfolio", "run the full workflow", "portfolio check", "what should I do with my book" - Weekly / monthly portfolio hygiene - After a material market move to sanity-check the book - Before a large trade to see whether the new sizing survives the variance-share cap ## What you need - `MASSIVE_API_KEY` (Stocks Starter minimum). One skill in the chain (corporate-actions-scanner) also hits SEC EDGAR, which is free. - Positions in the shape `TICKER=WEIGHT,TICKER=WEIGHT,...` where weights sum to ~1.0. - Book value in dollars for the rebalancer's trade-ticket sizing. ## What you get back **Layer 1 canonical JSON** with a `sections` map keyed by the sub- skill name, each holding the full sub-payload. The `headline` block distills one fact from each. `errors` array captures per-section failures without aborting the run. **Layer 2 rendered briefing**. Header, headline block (7 lines), then each section rendered by its own `render()` helper u