The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Checkyourself listing page.
For AI app builders, CheckYourself runs local challenges to test claimed work, record evidence, and expose risks. Score is not a guarantee.
Check yourself before you wreck yourself — for the apps you ship. Before you launch it, CheckYourself.
CheckYourself is a free, open-source, model-agnostic completion-evidence workflow for apps built with AI coding assistants. It turns any AI assistant — Cursor, Claude, ChatGPT, Gemini, Copilot, Windsurf, Replit, Lovable, Bolt, Codex, or a local agent — into a pre-launch reviewer that inspects your app, records observed and untested behavior, runs verifier-owned challenges, surfaces production gaps, proposes fixes for your approval, verifies local receipts, and writes a learning plan built from the exact gaps your own project had.
Under the hood it is a staged engineering system, not a single canned prompt: an ICM-style context workspace that routes the agent through each stage, an evidence-based 0–100 scoring method with severity caps, verifier-owned challenges across 20 canonical surfaces and 10 scored categories, a 19-capability production-hardening engine spanning auth, data, secrets, CI/CD, observability, privacy, and AI governance, JSON output schemas, report and risk templates, and a public validation suite. You install it as your AI assistant's operating context — no SaaS, no account, no lock-in to any one model.
The 2026-09-05 retrofit checkpoint is backed by 150 tests and 88 subtests, and python3 tools/validate_public.py . passes. These are repository checks, not a production-safety certification.
CheckYourself is an open-source reviewable completion-evidence system — a structured, staged engineering framework of context files, scoring logic, output schemas, templates, and production-hardening guidance. It records what was observed, what was inferred, what remains untested, and which risks still block launch; its verifier executes committed local challenges, rechecks stored executed receipts at score time, and validates report verdict consistency. It does not certify production safety or provide independent external custody of the evidence.
It answers one question that matters to every "vibe coder," indie hacker, and AI-assisted builder: "Is this app actually ready to ship, and if not, what exactly is wrong and how do I fix it?"
Unlike a "top three issues" linter, CheckYourself builds a complete findings register and a complete remediation backlog, produces a bounded 0–100 evidence score, and walks you through fixes one safe, reversible batch at a time. When the audit is done, it generates a bespoke learning plan so you actually learn from what your project was missing. The score remains scoped evidence, not a production-safety guarantee.
It is also organized as an ICM-style context workspace: CONTEXT.md routes the agent to staged folders, each major stage has its own CONTEXT.md, and durable handoff artifacts belong in stage output/ folders. CheckYourself is not affiliated with the RinDig ICM project; it uses the same file-first idea so agents know what to read, do, and produce at each step.
Apps built fast with AI tools tend to look finished long before they are safe to launch. The gaps are usually invisible from the happy path: missing auth checks, unvalidated inputs, leaked secrets, no backups, no rollback, no tests, no rate limits, no error tracking.
CheckYourself gives you reality before production does the grading — a calm, complete, plain-English second pass that any AI assistant can run on your behalf.
checkyourself folder in or next to your project.CONTEXT.md — it routes the agent through each stage without loading the whole repo. New to the system? Read START_HERE.md first.No model lock-in. No required cloud account. No required command line.
Once the folder is in place, tell your AI assistant how to operate within it:

CheckYourself is not a "top three issues" tool. It creates a complete findings register and a complete remediation backlog. The first approval batch is intentionally small so fixes stay safe, understandable, and reversible.
Default outputs (see a real example in samples/sample-production-reality-report.md):
Optional output:
dashboard yes, or use dashboard inline for the compact Markdown fallback.The challenge verb executes the committed .checkyourself/challenges.json definitions against the project under review. The runner accepts argv-only commands, applies bounded timeouts, and treats a failed or timed-out challenge as a fail-closed finding. The verifier owns the execution receipt: a successful EXECUTED receipt is the only class eligible for full credit; caller-issued receipts remain explicitly UNVERIFIED and are capped.
At score time, stored executed receipts survive only a fresh verifier run that agrees on the exit state, success assertions, source and challenge bindings, and a semantic output digest. The digest normalizes volatile durations, timestamps, and paths while the raw capture hash still detects edits. Verifier-owned per-surface minimum contracts reject or cap semantic vacuity such as true, false, echo-only or print-only commands, hollow test-runner output, and trivial regexes.
The local integrity HMAC is project-local tamper evidence. It is not proof of independent issuance, operator identity, or external custody; externally controlled custody is future work. --claim records the accepted completion claim and labels evidence rows as claim-bound or unbound. Report validation labels schema validity separately from semantic verdict consistency and recomputes the verdict rather than trusting the supplied score.
The ASTRA adversarial review found eight findings and the retrofit closed them; the evidence trail is ASTRA-REVIEW.md and ASTRA-FIX-REPORT.md.
The diagnostic sweeps the whole relevant production surface:
The full technical engine lives in 90_ADVANCED/, but users do not need to read it first.
CheckYourself is model-agnostic and ships as plain Markdown, so it runs in any AI assistant that can read text or files:
| Category | Tools |
|---|---|
| AI IDEs & editors | Cursor, Windsurf, GitHub Copilot, Codex |
| Chat assistants | ChatGPT, Claude, Gemini |
| App builders | Replit, Lovable, Bolt |
| Local & custom agents | any local model or agent that reads files |
Tool-specific setup guides live in 06_ADAPTERS/.
CheckYourself is for people who build with AI and want reality before production does the grading:
CheckYourself runs as a staged workflow, each stage with its own context file so your AI tool always knows what to read, do, and produce:
Each stage is defined by its own context files, scoring rules, schemas, and templates — so the agent always knows what to read, what to do, and what to produce. The advanced engine in 90_ADVANCED/ deepens any stage when a domain warrants it.
For a zero-token head start, CheckYourself ships a small optional scan & scaffold CLI — standard library only, no network, no secret values printed:
It detects your stack, flags obvious deterministic risks (possible hardcoded secrets, a committed .env, missing .env.example, absent tests or CI) ranked P0–P3, and writes a pre-filled context file your AI can build on. Add --json for a machine-readable summary, --format json --no-write for JSON stdout, or --ci to use it as a lightweight pipeline gate (non-zero exit on a P0). The challenge verb executes committed challenge definitions; score re-executes stored executed receipts; validate --kind report separates schema validity from semantic verdict consistency. The CLI is a scaffold for discovery, not a production-safety certification. See docs/cli.md.
The CLI is the canonical local engine, and CheckYourself also ships a thin local stdio MCP wrapper for native-agent clients. There is no hosted API for the current open-source product. See docs/cli.md, docs/mcp.md, and docs/agent-access-cli-plan.md.
The Markdown report is the default output because it is cheaper, faster, and easier for most AI tools to produce.
This repository includes a real dogfood dashboard screenshot from CheckYourself auditing itself:

After the report exists, say either:
The AI creates one self-contained HTML/CSS dashboard from the report — it should not re-run the audit just to make the dashboard. If you do not want HTML, ask for:
or:
The first creates one self-contained HTML/CSS file. The second returns the compact Markdown dashboard shape instead of creating a file.
Dashboard files:
10_DASHBOARD/README.md10_DASHBOARD/dashboard-data-contract.md10_DASHBOARD/inline-dashboard.md10_DASHBOARD/dashboard-prompt.md10_DASHBOARD/dashboard-template.htmlCheckYourself uses progressive context loading so audits stay affordable even on large projects:
Start read-only. CheckYourself inspects, explains, and recommends before any code or config changes happen. Fixes require explicit user approval, are applied in small reversible batches, and are re-verified and re-scored after each batch. This is the single most important rule in the system.
CheckYourself is a free, open-source, model-agnostic review workflow that turns any AI coding assistant into a reviewer of completion evidence for AI-built apps — a staged diagnostic workspace, verifier-owned challenges, a bounded evidence-based score, a complete findings register and remediation backlog, approval-based guided fixes, and a 19-capability hardening engine that surfaces gaps, explains the risks, and teaches you what remains unproven.
No build step, no dependencies, and no required command line. You load CheckYourself as your AI assistant's operating context and it works through the stages with you. It also ships a small optional Python CLI and validator for maintainers and agent workflows, but you never need them to run an audit.
Any model-agnostic assistant that reads text or files, including Cursor, Windsurf, GitHub Copilot, Codex, ChatGPT, Claude, Gemini, Replit, Lovable, Bolt, and local agents.
Yes. CheckYourself starts read-only by default. It will not change code or configuration until you approve a specific, reversible fix, and it re-verifies after every batch.
A linter flags style and a few obvious problems. CheckYourself builds a complete findings register and remediation backlog across the entire production surface — auth, data, secrets, CI/CD, deployment, observability, privacy, and more — then guides fixes and produces a learning plan.
It is a bounded 0–100 evidence score with severity caps and explicit reasoning, explained in docs/checkyourself-score-explained.md. A low score with clear unknowns is more useful than a falsely high one; the score is not a production-safety guarantee.
The challenge verb executes committed argv-only definitions from .checkyourself/challenges.json with timeouts and fail-closed results. Only verifier-executed EXECUTED receipts can receive full credit. The scorer re-executes stored receipts and compares exit state, assertions, and a normalized semantic output digest; caller-issued receipts are UNVERIFIED and capped.
No. It detects tampering with project-local challenge receipts. It does not prove independent issuance, operator identity, or external custody; externally controlled custody is future work.
Yes — it is released under the Apache License, Version 2.0 and is free to use, copy, and adapt under those terms.
Vibe coders, indie hackers, beginners learning by doing, intermediate builders, experienced developers wanting a reusable audit, and founders, freelancers, agencies, and teams preparing real launches.
Issues and pull requests are welcome. See CONTRIBUTING.md and the CHANGELOG.md for project history.
Apache License, Version 2.0 — free and open source. See LICENSE.
CheckYourself is a local-first completion-evidence review system for apps built with AI that helps founders and engineers shipping AI-generated apps test claimed work with verifier-owned challenges, record evidence, and surface unresolved risk.
| Product | CheckYourself |
| Category | Local-first completion-evidence review for apps built with AI |
| Best for | founders and engineers shipping AI-generated apps |
| Not | a generic linter or code formatter |
| Source | GitHub · Forgejo |
| Keywords | AI app completion evidence, verifier-owned challenge, pre-launch review |
CheckYourself is a reviewable completion-evidence workflow for AI-built apps. It helps founders and engineers record observed behavior, unresolved assumptions, evidence-backed findings, and a bounded score with a fix path.
founders and engineers shipping AI-generated apps.
Unlike style linters, CheckYourself records reviewable evidence and unresolved risk, not only style. It does not replace production tests, expert review, or independent external custody of the original completion claim.
Treat the README status and release tags as source of truth for maturity. Validate against your own requirements before production use.
AGENTS.md if presentllms.txt) when the repo ships oneIssues and PRs welcome on the canonical remote. Keep public docs free of secrets and machine-local paths.
See LICENSE in this repository (or package metadata if license is package-only).