Audit logo

Audit

Score any public GitHub repo 0-100 against the commit.show audit rubric.

Install Audit

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "audit-5": {
      "command": "npx",
      "args": [
        "-y",
        "commitshow@latest"
      ]
    }
  }
}

Settings โ†’ Developer โ†’ Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldnโ€™t confirm it starts correctly

We ran the install command but it didn't respond within our test window โ€” this can mean a slow first-time install rather than a real problem.

npx -y commitshow@latest

Process exited before answering initialize.

This is an experimental automated check and can have false negatives โ€” missing environment variables, a slow cold install, etc. It doesnโ€™t necessarily mean somethingโ€™s wrong. Last checked 6d ago.

Overview

Security & health

What it can reach and how reliably it runs โ€” from our own checks, not the maintainerโ€™s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 46d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 5d ago via OSV.dev ยท commitshow@latest (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks โ€” not a rating.

GitHub stars1Stargazers on the source repository.
npm downloads133Package downloads in the last 30 days.
Last commit1mo agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window โ€” often a slow first install.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

commit.show CLI

Audit any vibe-coded project from your terminal.
Score ยท 3-axis breakdown ยท 3 strengths + 2 concerns ยท rank ยท delta โ€” in one command.

npm version weekly downloads node MIT license

Terminal
npx commitshow@latest audit github.com/owner/repo
Code
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ•—   โ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—     โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ•—    โ–ˆโ–ˆโ•—
  โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ• โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘ โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•     โ–ˆโ–ˆโ•”โ•โ•โ•โ•โ• โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘
  โ–ˆโ–ˆโ•‘      โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•”โ–ˆโ–ˆโ–ˆโ–ˆโ•”โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•”โ–ˆโ–ˆโ–ˆโ–ˆโ•”โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘        โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘ โ–ˆโ•— โ–ˆโ–ˆโ•‘
  โ–ˆโ–ˆโ•‘      โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘โ•šโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘โ•šโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘        โ•šโ•โ•โ•โ•โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘
  โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ• โ–ˆโ–ˆโ•‘ โ•šโ•โ• โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘ โ•šโ•โ• โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•‘    โ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘  โ–ˆโ–ˆโ•‘ โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ• โ•šโ–ˆโ–ˆโ–ˆโ•”โ–ˆโ–ˆโ–ˆโ•”โ•
   โ•šโ•โ•โ•โ•โ•โ•  โ•šโ•โ•โ•โ•โ•โ•  โ•šโ•โ•     โ•šโ•โ• โ•šโ•โ•     โ•šโ•โ• โ•šโ•โ•    โ•šโ•โ•    โ•šโ•โ• โ•šโ•โ•โ•โ•โ•โ•โ• โ•šโ•โ•  โ•šโ•โ•  โ•šโ•โ•โ•โ•โ•โ•   โ•šโ•โ•โ•โ•šโ•โ•โ•

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ โœป commit.show โ€” Audit report                           โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

  commitshow   github.com/commitshow/commitshow

  Findings  ยท 1 critical ยท 1 warning ยท 3 strengths

  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
  โ”‚ What this build missed                                 โ”‚
  โ”‚ โœ• 25 FK columns unindexed โ€” fk_columns_seen=100 vs inโ€ฆ โ”‚
  โ”‚ โš  Zero observability libs in 17 deps โ€” no Sentry, Pinโ€ฆ โ”‚
  โ”‚                                                        โ”‚
  โ”‚ What it got right                                      โ”‚
  โ”‚ โ†‘ 56 RLS policies cover all 19 tables โ€” gap_estimate=โ€ฆ โ”‚
  โ”‚ โ†‘ Lighthouse accessibility 93, best practices 96, SEOโ€ฆ โ”‚
  โ”‚ โ†‘ Rate-limit middleware active on API routes โ€” vibe_cโ€ฆ โ”‚
  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
  โ”‚ AI Coder 7 Frames ยท what AI ships without              โ”‚
  โ”‚                                                        โ”‚
  โ”‚ โœ• Error tracking                                       โ”‚
  โ”‚   no error-tracking dependency or config declaredโ€ฆ    โ”‚
  โ”‚ โš  Database indexes                                     โ”‚
  โ”‚   100 FK columns ยท 75 indexes ยท 25 unindexed           โ”‚
  โ”‚   โ†’ supabase/schema.sql ยท id โ†’ auth                    โ”‚
  โ”‚ โœ“ RLS coverage                                         โ”‚
  โ”‚   19 tables ยท 56 policies ยท all covered                โ”‚
  โ”‚ โœ“ Secret in client code                                โ”‚
  โ”‚   no service-role keys in client paths                 โ”‚
  โ”‚ โœ“ API rate limiting                                    โ”‚
  โ”‚   custom middleware detected                           โ”‚
  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

  ฮ”        +20           since last audit

  โ†’ https://commit.show/projects/1c262df3-โ€ฆ

  next  ยท feed your AI loop  โ†’ commitshow audit . --json

                โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
                โ•‘   commitshow/commitshow    โ•‘
                โ•‘                            โ•‘
                โ•‘     โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—     โ•‘
                โ•‘     โ•šโ•โ•โ•โ•โ–ˆโ–ˆโ•‘  โ•šโ•โ•โ•โ•โ–ˆโ–ˆโ•‘     โ•‘
                โ•‘         โ–ˆโ–ˆโ•”โ•      โ–ˆโ–ˆโ•”โ•     โ•‘
                โ•‘        โ–ˆโ–ˆโ•”โ•      โ–ˆโ–ˆโ•”โ•      โ•‘
                โ•‘        โ–ˆโ–ˆโ•‘       โ–ˆโ–ˆโ•‘       โ•‘
                โ•‘        โ•šโ•โ•       โ•šโ•โ•       โ•‘
                โ•‘                            โ•‘
                โ•‘  / 100 ยท walk-on ยท strong  โ•‘
                โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
       audition unlocks final 5 ยท max walk-on score 95

    Audit  35/50    โ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฐโ–ฑโ–ฑโ–ฑโ–ฑโ–ฑโ–ฑ
    Scout  โ€”/30     โ”€ audition unlocks โ”€
    Comm.  โ€”/20     โ”€ audition unlocks โ”€

                                               commit.show

โญ Star us on GitHub if commitshow audit saved you a // TODO.


Why

Vibe-coded projects ship fast and break differently. The CLI gives you a zero-config, walk-on lane to commit.show's audit engine โ€” the same Claude-grade analysis used in our 3-week leagues, minus the signup, fee, and league commitment. You get a snapshot of where the build sits, what's strong, what's wobbling, and how it ranks against everyone else this week.

Local runs also drop .commitshow/audit.md and .commitshow/audit.json into your repo, so your AI coding agent can read the report on the next turn without a prompt-engineering ritual.

When a project is ready for the full season โ€” Scout forecasts, season ranking, Backstage prompt extraction, Hall of Fame โ€” it auditions at commit.show/submit.

The npm package + command is commitshow (no dot โ€” npm doesn't allow it in package names). Everywhere else uses the brand commit.show.

Install

bash
# one-shot (recommended for trying it on someone else's repo)
npx commitshow@latest audit <target>

# or global, if you'll run it daily
npm i -g commitshow
commitshow audit <target>

Requires Node 20+.

Usage

CommandWhat it does
commitshow audit [target] [--json] [--refresh] [--source=<tag>]Fetch + render the latest audit, write .commitshow/audit.{md,json}
commitshow status [target]Same render as audit, no re-run
commitshow login [--no-open] [--token <jwt>]Device-flow sign-in via browser approval
commitshow whoami [--logout]Print the linked account ยท --logout clears the saved token
commitshow submit [target]Audition a project (coming soon ยท needs login)
commitshow install <pack>Install a Library artifact (coming soon)

Sign in for higher rate limits

Terminal
npx commitshow@latest login

Opens commit.show/cli/link?code=<6-hex> in your browser. After you click Authorize there, the CLI receives a 90-day JWT and saves it to ~/.commitshow/config.json (file mode 0600). Subsequent calls send the token in the Authorization header automatically.

What changes once signed in:

  • Per-IP rate cap goes from 20 audits/day to 50/day
  • Newly audited preview projects auto-claim ownership (visible at commit.show/me โ†’ MY AUDITS)
  • commitshow whoami prints your member id + email

Headless / CI? Use --token <jwt> to skip the browser handshake.

Telemetry source flag

--source=<tag> lets you self-report how the call originated:

Terminal
npx commitshow audit . --source=claude-code
COMMITSHOW_SOURCE=cursor npx commitshow audit .

Common tags: claude-code ยท cursor ยท gemini-cli ยท codex ยท antigravity ยท production-audit-skill ยท any 64-char string. Drops into the maintainer's admin breakdown so we can see which agent ecosystems are driving installs. Skip the flag to stay anonymous.

Target forms

audit and status accept a positional target that auto-detects:

FormExample
cwd (omitted)commitshow audit ยท infers from git remote get-url origin
Local pathcommitshow audit ./my-repo
Remote URLcommitshow audit github.com/owner/repo ยท commitshow audit https://github.com/owner/repo
SSH remotecommitshow audit git@github.com:owner/repo.git (auto-converted)
Shorthandcommitshow audit owner/repo

Remote-URL mode works from any directory, which makes one-line X posts (npx commitshow@latest audit <their-url>) trivial.

AI agents โ€” read this before invoking. The CLI does not look up projects by name. commitshow audit warp will error: there is no agreed-upon mapping from the word "warp" to a single GitHub repo. If a user asks you to audit something by name, first resolve the canonical github.com/<owner>/<repo> URL (ask the user, or search github.com), then invoke commitshow audit <that-url>. The CLI does a HEAD pre-flight against github.com/<owner>/<repo> before any audit spend, so a hallucinated slug is rejected with a not_found error before we burn Claude credits โ€” but you should still get the URL right on the first try by asking, not guessing.

The AI-coding loop

commitshow audit in local mode writes to .commitshow/audit.md and .commitshow/audit.json after every run. Point your coding agent at them and it picks up exactly what the audit flagged, with no prompt engineering:

Code
You are pairing on <repo>. Read .commitshow/audit.md before each turn.
Pick the top concern and propose a minimal change; I'll run
`commitshow audit` again to check the delta.

For agents: --json

commitshow is built on a simple idea โ€” CLI + stable JSON is the universal contract between agent ecosystems. No SDK, no MCP server, no vendor lock. Any agent that can shell out to a subprocess can use commit.show.

bash
# Human
commitshow audit github.com/owner/repo

# Agent
commitshow audit github.com/owner/repo --json | jq '.concerns[].bullet'

Example agent workflow

"Check my commit.show score and fix anything under 80."

Code
score=$(commitshow audit --json | jq '.score.total')
if [ "$score" -lt 80 ]; then
  commitshow audit --json | jq -r '.concerns[0].bullet'
  # โ†’ agent reads this concern, picks a fix, applies edits, re-audits
fi

Auditing someone else's project (agent recipe)

When a user says "audit warp" or "what does commit.show say about Postiz", don't guess the slug. Walk this loop:

Reviews

No reviews yet โ€” be the first to share how it worked for you.

Frequently Asked Questions about Audit

audit is an MCP server that scores any public GitHub repository from 0 to 100 against the commit.show audit rubric. It returns a three-axis breakdown, three strengths, two concerns, a rank, and the score delta when available. The underlying audit can be run with commit.show against a GitHub repository.

Provide the public GitHub repository to audit for scoring against the commit.show rubric. The equivalent CLI command is `npx commitshow@latest audit github.com/owner/repo`.

The audit score includes a result from 0 to 100, a three-axis breakdown, three strengths, two concerns, rank information, and a delta from the previous audit when available.

This produces JSON output for feeding the audit results into an AI loop.

Related MCP servers

Add a badge to your READMEShow itโ€™s listed โ€” live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewAudit AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/audit-5?style=directory)](https://allmcps.com/mcp/audit-5)
HTML Embed
<a href="https://allmcps.com/mcp/audit-5"><img src="https://allmcps.com/api/badge/audit-5?style=directory" alt="Audit on AllMCPs" /></a>