{
  "markdown": "<p align=\"center\">\n  <picture>\n    <source media=\"(prefers-color-scheme: dark)\" srcset=\"assets/logo-dark.svg\">\n    <img src=\"assets/logo.svg\" width=\"140\" alt=\"Reality Check\">\n  </picture>\n</p>\n\n<h1 align=\"center\">Reality Check</h1>\n\n<p align=\"center\">\n  <em>The advisor who's seen a thousand ideas and isn't impressed easily — living inside your AI.</em>\n</p>\n\n<p align=\"center\">\n  <img src=\"https://github.com/MrinallSamal-byte/Idea-Validater/actions/workflows/validate.yml/badge.svg\" alt=\"validate\">\n  <img src=\"https://img.shields.io/github/v/tag/MrinallSamal-byte/Idea-Validater?style=flat-square&color=111111&label=release\" alt=\"release\">\n  <img src=\"https://img.shields.io/badge/works%20with-13%20agents-111111?style=flat-square\" alt=\"works with 13 agents\">\n  <img src=\"https://img.shields.io/badge/license-MIT-111111?style=flat-square\" alt=\"license\">\n</p>\n\nMost assistants agree with whatever you propose. You say \"I want to build X,\" they say \"Great idea!\" That feels nice and tells you nothing. Reality Check does the opposite: it pressure-tests the idea, looks up what's really happening in the market, names the ways it could fail, and tells you what to do next. It's direct by design, and — unlike a tool you have to remember to summon — it's **on by default**.\n\n## Works with\n\n| Host | Install | Gets |\n|------|---------|------|\n| Claude (Cowork desktop) | Add from repository in the plugin UI | Always-on hook **+ 13 skills** |\n| Claude Code | `/plugin marketplace add` + `/plugin install` | Always-on hook **+ 13 skills** |\n| Codex / OpenCode / Swival / CodeWhale | Auto-reads `AGENTS.md` | Always-on ruleset |\n| Cursor · Windsurf · Cline | Copy the matching rules file | Always-on ruleset |\n| GitHub Copilot (editor) | Reads `.github/copilot-instructions.md` | Always-on ruleset |\n| Kiro | Copy to steering | Always-on ruleset |\n| Gemini / Antigravity | Install extension or drop ruleset in `.agents/rules/` | Always-on ruleset + skills + `/reality-check` command |\n\nFull mapping: [`docs/agent-portability.md`](docs/agent-portability.md).\n\n## On by default\n\nThe reason today's AI can't validate a real idea is that it agrees with you *automatically*. Reality Check flips that default. Whenever you share an idea, plan, opinion, or ask \"is this any good?\", it runs the honesty protocol instead of cheerleading — without being asked. Casual chat and ordinary tasks are left alone; it only engages when there's actually something to evaluate. Don't want it on right now? Say \"reality check off\" (or `lite` / `full` / `ultra`).\n\n## The Reality Check Protocol\n\nEvery assessment climbs the same five rungs, in order:\n\n```\n1. Restate it plain     -> strip the spin. Can't? It asks one sharp question.\n2. Fact vs. assumption  -> tags every claim [FACT] / [ASSUMPTION] / [UNKNOWN].\n3. Load-bearing belief  -> names the one assumption that, if false, ends it.\n4. Steelman the skeptic -> the strongest case AGAINST, before any praise.\n5. Commit to a verdict  -> Pursue / Fix-first / Reshape / Park / Drop. No hedging.\n```\n\nStanding rule: praise only what's specifically earned.\n\n## Before / after\n\nYou say: *\"I'm going to build an AI app that summarizes meetings.\"*\n\nA normal assistant: *\"Great idea! Meeting fatigue is a real problem and AI summarization is a hot space. Here's how you could get started...\"*\n\nReality Check:\n\n> **The idea:** an AI tool that turns meeting audio into summaries.\n> **Load-bearing assumption:** that people will switch from the summary feature already built into Zoom, Teams, Granola, Otter, and Fireflies. `[ASSUMPTION]` - and a shaky one.\n> **The strongest case against:** this is a feature, not a company. The platforms that own the meeting own the audio, ship summaries for free, and you'd be paying to acquire users they reach for nothing.\n> **Verdict: Reshape.** The summary is commoditized. If there's a business here it's in what happens *after* the summary - and that's the part you haven't defined.\n\nMore in [`examples/`](examples/).\n\n## What changes, measured\n\nA deterministic harness (`benchmarks/`) scores the same model answering 10\nground-truth-labelled ideas, with and without the ruleset:\n\n![What Reality Check changes](assets/benchmark-behavior.svg)\n\n| Behavior | Without | With Reality Check |\n|----------|--------:|-------------------:|\n| Opens with empty praise (lower is better) | 100% | 0% |\n| Names the real, load-bearing flaw | 0% | 100% |\n| States the case against | 0% | 100% |\n| Commits to a verdict that matches ground truth | 0% | 100% |\n\n**Read this honestly:** both arms are run by the same model and the grader is\nrule-based, so this demonstrates that the ruleset *induces* the right behaviors —\nit is not yet an independent, cross-model efficacy claim. Per-model figures from the\nmaintainer's own testing are listed under *Reported results* below. Method and limitations:\n[`benchmarks/README.md`](benchmarks/README.md). Reproduce: `python3 benchmarks/score.py`.\n\n\n### Reported results (maintainer testing)\n\nFigures below are reported by the maintainer from their own testing across model\ntiers. They are separate from the deterministic harness above, and the full\nmethodology (evaluation set, grader, run dates) is being documented in\n`benchmarks/`; until then, treat them as maintainer-reported rather than\nindependently reproduced.\n\n![Reported scores across model tiers](assets/benchmark-models.svg)\n\n| Configuration | Score |\n|---------------|------:|\n| Typical reasoning model — no plugin | 81.6 |\n| Gemini Flash — with Reality Check | 93.4 |\n| Opus 4.8 — no plugin | 89.5 |\n| Opus 4.8 — with Reality Check | 98.9 |\n\n## Intensity\n\n`off` (stand down) · `lite` (gentle, one key risk) · `full` (the protocol, direct — default) · `ultra` (assume it's flawed until proven; maximum scrutiny). Just say \"go easier\" or \"go harder.\"\n\n## The skills (Claude)\n\nOn Claude, Reality Check adds an always-on honesty hook plus 13 skills:\n\n| Skill | Triggers on | What it does |\n|-------|-------------|--------------|\n| **validate-idea** | \"is this a good idea\", \"stress-test\", \"poke holes\" | Core engine. Scores against a rubric, splits fact from assumption, commits to a verdict. |\n| **market-scan** | \"who else does this\", \"is the market real\" | Live competitor/market research; reports what it found and what it couldn't verify. |\n| **pre-mortem** | \"what could go wrong\", \"why might this fail\" | Imagines the project already failed and works back to the likely causes. |\n| **direction-roadmap** | \"what should I do next\", \"roadmap\" | Sequences the cheapest test of the riskiest assumption first. |\n| **pitch-critique** | \"review my pitch\", \"critique this deck\" | Investor-grade teardown with line edits. |\n| **compare-ideas** | \"which should I do\", \"rank these\" | Scores several ideas on one rubric and picks one. |\n| **idea-journal** | \"log this idea\", \"show my journal\" | Durable verdict log in your project folder; surfaces patterns over time. |\n| **reality-check-mode** | \"go easier\", \"ultra mode\", \"reality check off\" | Sets intensity: off / lite / full / ultra. |\n| **assumption-tracker** | \"track this assumption\", \"did that hold up\" | Logs load-bearing assumptions in a separate ledger and updates their status as evidence comes in. |\n| **calibration-report** | \"how's my track record\", \"am I biased\" | Mines your own idea-journal history for scoring patterns and blind spots. |\n| **discovery-script** | \"give me interview questions\", \"how do I test this with users\" | Turns \"go talk to users\" into an actual script aimed at the load-bearing assumption. |\n| **unit-economics** | \"check my CAC and LTV\", \"will this make money\" | Real LTV:CAC and payback math from your own numbers — not a rubric mention. |\n| **verdict-memo** | \"make this shareable\", \"turn this into a memo\" | Exports a verdict as a one-page document for a cofounder or investor. |\n\n## Install\n\n### Claude desktop app (Cowork)\n\nCustomize → the **+** next to personal plugins → **Create plugin and add marketplace** → **Add from repository** → paste:\n\n```\nhttps://github.com/MrinallSamal-byte/Idea-Validater\n```\n\nEnable **reality-check**. The always-on behavior starts immediately.\n\n### Claude Code\n\n```\n/plugin marketplace add https://github.com/MrinallSamal-byte/Idea-Validater.git\n/plugin install reality-check@idea-validater\n```\n\n(Send the two commands as separate messages.)\n\n> If you see **\"SSH host key is not in your known_hosts\"** or \"Host key verification failed,\" you used the `owner/repo` shorthand, which resolves to SSH. Use the full `https://…​.git` URL above instead — no SSH setup needed for a public repo.\n\n### Codex, OpenCode, Swival, CodeWhale, VS Code (Codex)\n\nThese auto-read `AGENTS.md` from the repo root — run the agent from a checkout of\nthis repo, or copy `AGENTS.md` into your project. For a global rule, copy it to\nthe host's global agents file (e.g. `~/.codex/AGENTS.md`).\n\n### Cursor · Windsurf · Cline · GitHub Copilot · Kiro\n\nCopy the matching rules file into your project (or the host's global rules dir):\n\n```\n.cursor/rules/reality-check.mdc\n.windsurf/rules/reality-check.md\n.clinerules/reality-check.md\n.github/copilot-instructions.md\n.kiro/steering/reality-check.md      # or ~/.kiro/steering/ for global\n```\n\n### Gemini / Antigravity\n\n```\ngemini extensions install https://github.com/MrinallSamal-byte/Idea-Validater\n```\n\nLoads the ruleset as always-on context every session, picks up the skills, and\nregisters the `/reality-check` command (set the intensity, or run a check).\nOr drop the ruleset into `.agents/rules/` for always-on context only.\n\n### Drop-in `.plugin` (Claude)\n\n```\ncd Idea-Validater && zip -r /tmp/reality-check.plugin . -x \"*.git*\" -x \"*.DS_Store\"\n```\n\nNo Node.js or external runtime is required — the always-on hook simply reads the bundled ruleset (`AGENTS.md`) into context at session start (`cat` on macOS/Linux, `Get-Content` on Windows). On any host: if plugin hooks aren't run, the always-on layer stays quiet and the skills still work on request.\n\n### Uninstall\n\n| Host | How |\n|------|-----|\n| Claude Code | `/plugin remove reality-check` |\n| Claude desktop (Cowork) | Remove the plugin in the plugin UI |\n| Gemini / Antigravity | `gemini extensions uninstall reality-check` |\n| Cursor / Windsurf / Cline / Copilot / Kiro / etc. | Delete the copied rules file |\n\nReality Check keeps no state of its own outside the plugin. Any\n`idea-journal.md`, `assumption-ledger.md`, or exported memos are ordinary files\n*you* created in your project — keep or delete them like any other file.\n\n## Usage\n\n- \"Be honest — is this startup idea actually any good?\"\n- \"Stress-test my plan to build X.\"\n- \"Who already does this and why would they win?\"\n- \"What's most likely to kill this project?\"\n- \"Review my pitch like a tough investor.\"\n- \"I have three ideas — which should I do first?\"\n- \"Log this verdict and show me my idea journal.\"\n- \"Give me a script to test this with real users.\"\n- \"Do the unit economics actually work here?\"\n- \"Turn this into something I can send my cofounder.\"\n- \"How's my track record — am I biased on anything?\"\n- \"Reality check off\" / \"go ultra\" — change the intensity.\n\n## Repository layout\n\n```\nAGENTS.md                universal always-on ruleset (read by many agents)\n.claude-plugin/          plugin.json + marketplace.json (Claude)\nhooks/claude-hooks.json  always-on honesty hook (SessionStart, reads AGENTS.md;\n                         kept off hooks/hooks.json, which Gemini CLI auto-loads)\nskills/                  13 skills (validate-idea has references/)\ncommands/                /reality-check command (Gemini CLI)\n.cursor/ .windsurf/ .clinerules/ .github/ .kiro/ .agents/   per-host rule adapters\nexamples/                before/after comparisons\ndocs/agent-portability.md   file-to-agent mapping\nscripts/                 canonical ruleset + sync check + version check\nbenchmarks/              honest measurement method (no fabricated results)\nassets/                  logo + benchmark charts\ngemini-extension.json  package.json  CHANGELOG.md  CONTRIBUTING.md  LICENSE\n```\n\nThe ruleset is identical across every adapter, kept in sync by\n`scripts/check-rule-copies.sh`; version fields across all manifests are kept\naligned by `scripts/check-versions.py`. Before opening a PR, run:\n\n```\nnpm run validate\n```\n\nwhich runs the sync check, the version check, and the benchmark harness in one\ncommand (see [`CONTRIBUTING.md`](CONTRIBUTING.md)).\n\n## FAQ\n\n**Does it need an API key or extra setup?**\nNo. The always-on behavior is a tiny hook that reads the bundled ruleset into\ncontext — no server, no network call, no config. `market-scan` additionally uses whatever web search tool the host\nalready provides; without one it says so and reasons from general knowledge instead.\n\n**Will it slow down or clutter casual conversation?**\nNo — it only engages when you share an idea, plan, or opinion, or ask for\nfeedback. Factual questions and ordinary tasks are left alone.\n\n**Will it ever just agree with me?**\nYes, when the idea earns it. The rule is never manufacture criticism to seem\nbalanced, and never manufacture praise either — a genuinely strong idea gets a\ngenuine \"this is strong, here's why.\"\n\n**Does the idea journal (or the assumption ledger, or a memo) sync anywhere?**\nNo — `idea-journal.md`, `assumption-ledger.md`, and any exported\n`*-memo.md` are plain files in your working folder. Back them up like any\nother project file; there's no external service involved.\n\n## A note on honesty\n\nThis plugin exists because agreeable AI can't validate a real idea. In that spirit,\n`benchmarks/` ships a **reproducible demonstration** rather than impressive-looking\nmarketing numbers — and says plainly that it is not yet an independent efficacy\nclaim (same model authors both arms; rule-based grading; n=10). Re-run it with a\ndifferent model and an external grader to make the numbers authoritative. Use the\nplugin, push back on it, and tune the ruleset from real output.\n\n## License\n\n[MIT](LICENSE) © 2026 Mrinall Samal\n",
  "bytes": 13944,
  "sha": "7ab48766ee134f5a37512fc43c473cf08791b9dee6c492dfdf18f191917cbdcd",
  "repo_slug": "mrinallsamal-byte/reality-check",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_mrinallsamal_byte_reality_check_da5cf54a/readme"
}