Borrowing it
Nothing to install: this file belongs to SerhiiKorniienko/bullshit-detector. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/SerhiiKorniienko/bullshit-detector/main/CLAUDE.mdgit clone --depth 1 https://github.com/SerhiiKorniienko/bullshit-detectorWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/serhiikorniienko/bullshit-detector/claude-md)<a href="https://agentmods.dev/instructions/serhiikorniienko/bullshit-detector/claude-md"><img src="https://agentmods.dev/badge/instructions/serhiikorniienko/bullshit-detector/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/serhiikorniienko/bullshit-detector/claude-md"><img src="https://agentmods.dev/badge/instructions/serhiikorniienko/bullshit-detector/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.02410 | $0.02410 |
| Opus 5 | $0.01205 | $0.01205 |
| Sonnet 5 | $0.00482 | $0.00482 |
| Haiku 4.5 | $0.00241 | $0.00241 |
Grade A, and why
bullshit-detector CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 13d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 48 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skills are organized into bucket folders under skills/:
analysis/— skills that reason about content (source-agnostic, work on text)ingestion/— skills that turn sources into text (adapters live here)publishing/— skills that turn analysis results into shareable output (posts, carousels)in-progress/— drafts not yet ready to ship
Every skill in analysis/, ingestion/, or publishing/ (the promoted buckets) must have a reference in the top-level README.md and an entry in .claude-plugin/plugin.json's skills array — the Claude Code plugin ships exactly the promoted set. Skills in in-progress/ must not appear in either. Each bucket folder has a README.md listing every skill in the bucket with a one-line description, skill name linked to its SKILL.md; the top-level README.md links every promoted skill the same way.
The repo is also its own single-plugin Claude Code marketplace: .claude-plugin/marketplace.json lists the one bullshit-detector plugin. When releasing, bump .claude-plugin/plugin.json's version — Claude uses it to decide when installed users see an update — then run uv run scripts/write-version-files.py, which regenerates the VERSION file inside every promoted skill. Those files exist because the manifest does not travel with an npx skills add install (only the skill directory is copied), and they are generated, never hand-edited — the manifest stays the single source of truth, and tally.py --self-test fails when a VERSION file drifts from it, so a skipped regeneration is loud. Run claude plugin validate . --strict after touching either manifest.
The version is the serial number of a measuring instrument, not a marketing number. It is stamped into every report and printed as-is, tally.py gates its checks on it, and examples/ is filed by it precisely because two reports from different releases are two instruments rather than two readings. Nothing else in the repo can carry that meaning, so the bump rule follows from it and not from how the change felt to write:
- MINOR when the instrument changes — the same content, run before and after, could produce a different report. Different verdicts, different claim counts, a different score, a different set of rows the gate accepts. Rule changes, rubric changes, new or altered
tally.pychecks, anything that moves what gets searched. - PATCH when it cannot — crashes, rendering, docs, tooling, packaging, and performance work that leaves the output identical.
Ask "could this move a verdict?", never "is this a feature or a fix?". Under this rule most releases here are minors, and that is the instrument honestly changing rather than version creep: batching two verdict-moving rules into one release makes a moved score unattributable, which defeats the reason reports are filed by version at all.
Two consequences worth knowing. Gated constants make the next release number load-bearing before you have shipped it — SPONSORED_SINCE = (0, 9, 0) has to be written while 0.8.1 is current — so the number cannot be decided after the fact, which is a second reason batching does not work here. And 1.0 is a statement about the public surface (skill names, report format, slides.json, the separately-versioned bullshit-detector/run@1 record), not about the rules being finished; the rules are expected to keep moving as minors well past it.
Architecture rule: analysis skills never fetch — they receive normalized text + metadata and reference the fetch-content skill for URLs. New sources are new adapters inside skills/ingestion/fetch-content/scripts/fetch.py; analysis skills must not change when a source is added. Keep skills portable: no agent-specific tool names in SKILL.md bodies ("use your web search tool", not "use WebSearch").
The detector's core integrity rule — verdicts require sources, never confirm/refute a claim from model memory — is load-bearing; don't weaken it when editing skills/analysis/bullshit-detector/.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 13d ago First seen · 48 lines · 2,410 tokens per session scan A 5b216fa03a40
bullshit-detector CLAUDE.md is an instructions file published in the GitHub repository SerhiiKorniienko/bullshit-detector (142 stars, last pushed 9d ago), licensed MIT. It adds 2,410 tokens to every session, about $0.0120 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
spec-kit AGENTS.md
AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
codex AGENTS.md
AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).