npx skills add https://github.com/microchipgnu/philos --skill analysisInstallieren Sie diesen Skill über die CLI und beginnen Sie mit der Verwendung des SKILL.md-Workflows in Ihrem Arbeitsbereich.

See what you're missing.
An automated daily news publication that surfaces what's hidden in plain sight: the assumptions everyone makes, the trade-offs nobody names, and the connections that link unrelated stories.
Live at blindspot.news.
Most news tells you what happened. Blindspot tells you what's underneath: the hidden bet, the real disagreement, the thing no one is saying, and who concretely pays.
Every brief is structured the same way:
| Section | What it shows |
|---|---|
| What happened | Plain factual context, no analysis |
| Bottom line | One sharp judgment sentence — not a summary |
| The hidden bet | 2-3 assumptions the dominant narrative treats as settled but aren't |
| The real disagreement | The actual fork in the road, not the surface argument |
| What no one is saying | The obvious thing no major actor can afford to say out loud |
| Who pays | Specific groups, concrete mechanisms of harm, timeline |
| Scenarios | 3 plausible next states with the signal to watch for each |
| What would change this | The specific evidence that would make the bottom line wrong |
| Prediction markets | Live odds from Polymarket on questions the brief is about |
The analysis is informed by philosophical thinking (Kantian principle tests, Foucauldian power analysis, Nietzschean motive archaeology) but the output never names a philosopher or labels a framework. The frameworks are the engine, not the UI.
After all stories for the day are written, the agent looks back across them and finds non-obvious connections:
Threads sit below the day's stories with directional links between briefs.
Discover → Curate → Source → Markets → Analyze → Threads → Publish
Runs 4x daily via GitHub Actions:
The whole pipeline runs through OpenCode + the analysis skill + OpenRouter (Sonnet 4.6) + the Frames Registry for paid APIs.
blindspot/
├── skills/analysis/ # The analysis skill (SKILL.md + references)
├── site/ # Astro static site (blindspot.news)
├── content/reports/ # Generated brief JSON, by date
├── .philos/prompt.md # Agent prompt for the daily pipeline
├── .github/workflows/ # GitHub Actions cron (4x daily)
└── opencode.json # OpenCode config (OpenRouter provider)
Located at skills/analysis/. Installable in any agent harness:
npx skills add https://github.com/microchipgnu/philos --skill analysis
The skill defines:
The angles are the philosophical engine. They never appear in the output.
Astro static site, deployed to Vercel. Reads JSON from content/reports/ at build time. Pages:
/ — today's briefs with hero story + grid/day/[date] — any day's briefs with prev/next navigation/report/[date]/[slug] — full brief page with all sections, cover image, related briefs, sources, prediction markets/topic/[slug] — all briefs sharing a tag/actor/[slug] — all briefs where a specific entity appears/og/[date]/[slug].png — dynamic OG images (satori + resvg)/feed.xml — RSS feedEach day page has a connection graph (modal) showing how stories connect through shared actors and explicit thread links.
cd site && npm install && npx astro dev
To run the pipeline locally:
opencode run "$(cat .philos/prompt.md)"
Requires OPENROUTER_API_KEY and AGENTWALLET_* credentials in environment.
See what you're missing.
The bottom line is a judgment, not a summary.
Cut anything that isn't surprising.
Every section must earn its place. If you have nothing genuinely insightful to say, delete it.
Philosophy is the engine, not the UI. If the analysis is good, it doesn't need a brand.
Take a position. "It depends" is not a judgment.