# Bullshit Detector

> Open-source agent skills that fact-check viral videos, articles, tweets, and PDFs claim by claim, producing per-claim verdicts and a 0–10 BS score.

Bullshit Detector is an open-source collection of agent skills built by Serhii Korniienko that fact-checks internet content claim by claim. Point a compatible AI agent at a YouTube video, TikTok, article, tweet, or PDF and get back a structured report with per-claim verdicts and a 0–10 BS score. The project is licensed under MIT and installable in seconds via the skills.sh ecosystem.

## What It Is

Bullshit Detector is a set of portable [Agent Skills](https://agentskills.io) — plain markdown plus self-contained Python scripts — that separate the work of content ingestion from the work of fact-checking. The ingestion layer (`fetch-content`) turns any URL into clean text and metadata without API keys: YouTube transcripts and TikTok captions via yt-dlp, articles via readability extraction, PDFs, and tweets via free endpoints. The analysis layer (`bullshit-detector`) then extracts every claim, verifies each against independent sources via web search, scans for hype signals, runs an incentive analysis ("who benefits if you believe this?"), and produces a report card. Verdicts are one of: ✅ confirmed, 🟡 plausible, 🟠 misleading, ❌ false, or ❓ unverifiable — and the skill explicitly forbids confirming or refuting from model memory alone.

## How the Skill Set Works

The project ships three skill categories:

- **Analysis skills** — `bullshit-detector` (claim extraction + verification + BS score), `summarize` (structured TLDR with timestamped key points), and `explain` (ELI5 to deep-dive with jargon glossary).
- **Ingestion skills** — `fetch-content` (universal URL-to-text converter, no API keys) and `coverage-check` (collapses wire-copy reprints into independent origin counts using GDELT).
- **Publishing skills** — `report-card` (self-contained HTML report page, stdlib only) and `share` (ready-to-paste posts for X, LinkedIn, Reddit, Hacker News, and a branded image carousel).

All skills are model-invoked: the agent reaches for them automatically when a request fits ("is this legit?" triggers the detector), or they can be called explicitly.

## Agent Compatibility and Setup

The skills work with any agent harness that supports the skills format and has web search access. The README documents support for Claude Code CLI, Claude Desktop, OpenAI Codex, OpenCode, Cursor, and Gemini CLI. Two install paths exist:

- **skills.sh installer** — copies skills into your local setup so you can modify them; works across all supported agents.
- **Claude Code plugin** — a read-only, always-current managed bundle that updates automatically; Claude Code only.

The quickstart requires installing `uv` (the fetch script uses it for self-resolving dependencies), then running `npx skills@latest add SerhiiKorniienko/bullshit-detector`.

## Honest Limits the Project Documents

The README explicitly lists what the tool does not do — a notable design choice for a fact-checking tool:

- It checks premises, not reasoning: a bad inference drawn from true facts passes through.
- It can only cite sources it can reach; many high-reputation outlets block agent crawlers, and SEO content fills the gap.
- There is no eval harness yet, so there is no measured accuracy rate — the only evidence of accuracy is reports the tool wrote about content its author chose, a circularity the tool's own self-audit flagged.
- Verdicts vary between runs because web search is non-deterministic.

## Update: v0.12.1

The latest release, v0.12.1 ("verdicts that don't depend on an invisible assumption"), was published on 2026-08-01. The repository was created on 2026-07-27 and reached 97 GitHub stars within days, with active development reflected in 22 open issues and frequent pushes. The roadmap includes a `compare` skill (same topic across sources), a `transcribe` skill (Whisper for caption-less TikTok/Reels, with a working mlx-whisper prototype already landed), and X thread walking.

## Features
- Claim-by-claim fact-checking with per-claim verdicts
- 0–10 BS score for any content
- Verdicts: confirmed, plausible, misleading, false, unverifiable
- Hype signal scanning
- Incentive analysis (who benefits if you believe this?)
- YouTube transcript fetching via yt-dlp (no API key)
- TikTok caption fetching via yt-dlp
- Article extraction via readability
- PDF and tweet ingestion
- Coverage-check: collapses wire-copy reprints into independent origin counts
- Self-contained HTML report card output
- Social sharing posts for X, LinkedIn, Reddit, Hacker News
- Works with Claude Code, OpenAI Codex, OpenCode, Cursor, Gemini CLI
- Claude Code plugin for managed always-current bundle
- Whisper fallback for caption-less TikTok/Reels (in-progress)
- MIT licensed, fully open source

## Integrations
Claude Code, OpenAI Codex, OpenCode, Cursor, Gemini CLI, ChatGPT, yt-dlp, GDELT, skills.sh, uv

## Platforms
CLI, API

## Pricing
Open Source

## Version
v0.12.1

## Links
- Website: https://korniienko.dev/newsletter
- Documentation: https://github.com/SerhiiKorniienko/bullshit-detector/blob/main/SETUP.md
- Repository: https://github.com/SerhiiKorniienko/bullshit-detector
- EveryDev.ai: https://www.everydev.ai/tools/bullshit-detector
