Jerry Cloud Gaming Blog Cassandra
Cassandra — Domain-Agnostic Intelligence Pipeline
AI market intelligence pipeline  ·  local inference  ·  no cloud dependency
Active Build Python VADER Ollama Local LLMs NLP yfinance

Seven months ago I made a small investment based on a pipeline I had built. It is down about 30%. I am keeping it — not as a hope-it-recovers play, but as a reminder that the tool was doing its job. I just had not built the other half yet.

That is the honest version of what led to Cassandra.

The original inspiration was the changing landscape around cannabis and federal banking reform — a real signal worth tracking. But that framing was too narrow. It was limiting the story of what this tool actually is.

Cassandra is not a stock screener. It never was. It is a domain-agnostic intelligence pipeline that combines VADER sentiment analysis with local LLM inference to surface signal from unstructured text — at scale, on your own hardware, with no data leaving the machine.

The name felt right. The prophet no one believed. Dark humor appropriate.

−30%
The investment that started all of this. A small position taken based on an early pipeline run. Still open. Still a reminder.

The Pipeline

01
RSS Collection
Topic-specific and general RSS feeds are scraped across configurable keyword sets. Article bodies are extracted and deduplicated. Output is a timestamped CSV ready for scoring.
02
VADER Sentiment Scoring
Every article is scored with VADER — fast, consistent, no model required. Compound scores, label breakdowns, and per-topic aggregates give the LLM something structured to reason about instead of raw noise.
03
Local LLM Analysis via Ollama
Pre-analyzed data is handed off to a locally running language model through the Ollama HTTP API. No external API calls. No data leaving the machine. The model produces a structured narrative intelligence report.
04
Structured Report Output
A timestamped markdown report is saved covering overall sentiment, narrative summary, stakeholder outlook, and key risks. Domain configurable — point it anywhere text carries signal.

⚾ MLB Lockout — June 2026

MLB Lockout Sentiment Report
Generated 2026-06-07  ·  Model: qwen2.5:7b  ·  Local inference via Ollama
Full Report →
Articles Analyzed
87
Overall Sentiment
Negative
Avg Compound Score
−0.1403
Positive / Neutral / Neg
11 / 39 / 37
CBA Negotiations
−0.0978
Revenue Sharing / Salary Cap
−0.0886
MLBPA Players Union
−0.1057
Rob Manfred — Commissioner
−0.4275

Where This Is Going

Phase 1 — Complete
Core Pipeline
RSS collection, VADER scoring, Ollama LLM integration, structured markdown report output. Domain configurable via config block.
Phase 2 — In Progress
True Domain Agnosticism
Moving topic, feeds, and prompt framing from static config to fully dynamic inputs. Point it anywhere, get a structured report back — no code edits required.
Phase 3 — Planned
Social Sentiment Layer
Scraping X, Reddit, and Facebook to pull real-time social sentiment alongside the RSS pipeline. News articles tell one story. What people are saying tells another.
Phase 4 — Planned
Frontend Interface
A web UI so Cassandra does not live entirely in a terminal. Configure topics, trigger runs, and browse reports without touching the command line.
Phase 5 — Considering
External LLM API Integration
Optionally routing to a more powerful model via API for deeper reasoning. Local inference runs first — this gets earned by expanding the data layer, not skipping ahead.

Built With

Sentiment Analysis
VADER (vaderSentiment)
Compound scoring
Per-topic aggregation
LLM Inference
Ollama (local)
qwen2.5:7b (current)
HTTP API — no cloud
Data Collection
feedparser (RSS)
BeautifulSoup (body extraction)
pandas (CSV pipeline)
Infrastructure
Mercury (Windows GPU host)
Atlas (Ubuntu server)
Python 3.x