prove-it
Prove changed code with focused runtime checks and visual artifacts.
Skill by Tbsheff
Chalk Labs
Need help deploying prove-it?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tbsheff-prove-it
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 1, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 2
codeload.github.com· found in install commandgithub.com· found in code
Files it touches
~/.claude/skills/prove-it/tmp/fake-gh-body.md/tmp/fake-gh-comments.json- Your home directory (~)
~/.cache/prove-it/worktrees~/.config/prove-it/auth
What's inside
- Skill name
prove-it- Description
- Prove changed code with focused runtime checks and visual artifacts. Use after changing code, before shipping, or when asked to verify behavior. Work locally on uncommitted changes or publish to an existing GitHub pull request.
- License
- MIT
- Compatibility
- Claude Code and Codex. Requires git, gh, and Python 3.10+. Frontend proof requires agent-browser 0.38+ and Chrome. Base/change media requires ffmpeg and ImageMagick 7. Media upload requires gh pr comment --attach.
- Metadata
- version: 2.2.1
- Instructions
- 101 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (45)
- CHANGELOG.md
- LICENSE
- README.md
- SKILL.md
- openai.yaml · agents/
- prove-it.config.example.json · assets/
- backend.md · references/
- browser.md · references/
- configuration.md · references/
- planning.md · references/
- publishing.md · references/
- scenario.md · references/
- auth.py · scripts/media/
- capture.py · scripts/media/backend/
- render.py · scripts/media/backend/
- draft.py · scripts/media/
- house.css · scripts/media/shared/
- house.py · scripts/media/shared/
- procs.py · scripts/media/shared/
- redact.py · scripts/media/shared/
- wtcache.py · scripts/media/shared/
- helpers.py · scripts/media/tests/
- test_backend_verdict.py · scripts/media/tests/
- test_draft_and_checkouts.py · scripts/media/tests/
- test_flow.py · scripts/media/tests/
- test_wtcache.py · scripts/media/tests/
- ab.py · scripts/media/ui/
- boxes.py · scripts/media/ui/
- build.py · scripts/media/ui/
- capture.py · scripts/media/ui/
- crop.py · scripts/media/ui/
- cursor.js · scripts/media/ui/
- grid.py · scripts/media/ui/
- house.py · scripts/media/ui/
- motion.py · scripts/media/ui/
- record.py · scripts/media/ui/
- scenario.py · scripts/media/ui/
- steps.py · scripts/media/ui/
- storyboard.py · scripts/media/ui/
- twin.py · scripts/media/ui/
- wipe.py · scripts/media/ui/
- prove-it · scripts/
- prove.py · scripts/
- self_test.py · scripts/
- validate_skill.py · scripts/
SKILL.md (first lines)
# Prove it
Prove changed behavior locally or in one PR comment. Never create a PR.
## Rules
- Choose local mode when the worktree is dirty or the branch has no pull request. Start at once. Do not ask for a commit or PR first.
- Choose PR mode only when local `HEAD` matches the PR head and the worktree is clean.
- Freeze that commit as the capture SHA. Do not wait for CI.
- If another session can move the checkout, add `--pin` to `init`. Commands then run in a pinned worktree, `$PROOF_DIR/checkout`.
- If the PR advances during capture, finish the run and say which commit you tested.
- Check no more than three observable behaviors unless the human asks.
- Write like a developer, not a status report.
- Use `## QA`, one commit sentence, 1-3 short observations, real media, and one important caveat if needed.
- Do not show claim counts, evidence lists, checklists, proof maps, or repeated text.
- Put commands, output, code links, and diagnostics under one `What I ran` disclosure.
- Every UI change needs a visual claim and real-app screenshot or video when reachable. Tests cannot replace it.
- Use a fixture only when the real flow cannot run. Mark blocked visual claims `not_proven` and give the cause.
- Backend checks need the summary plus the real command, request, or state receipt.
- Use the cheapest check that proves the behavior. Do not rerun CI.
- Use `agent-browser` only for visible behavior. Explore first, then record one clean take.
- Show base and change with `prove-it media` when you can. Never type evidence by hand.
- Media shows real data: use seed data, never a production session.
- Never publish secrets, PHI, customer data, raw HAR files, or broad logs.
- Keep files in `$TMPDIR`. Delete them after GitHub confirms the comment.
## Run
```bash
SKILL_DIR="${CLAUDE_SKILL_DIR:-${CODEX_HOME:-$HOME/.codex}/skills/prove-it}"
PROVE_IT="$SKILL_DIR/scripts/prove-it"
```
Select the mode before `init`:
```bash
# Local mode: dirty worktree, no PR, or proof before shipping.
PROOF_DIR="$("$PROVE_IT" init --repo . --working-tree)"
# PR mode: clean worktree, existing PR, and local HEAD matches its head.
PR="${ARGUMENTS:-current}"
PROOF_DIR="$("$PROVE_IT" init --repo . --pr "$PR")"
```
If PR lookup fails, use local mode.
### 1. Plan
Read [references/planning.md](references/planning.md). Choose one to three behaviors.
Read `change.recommended_proof` in `$PROOF_DIR/manifest.json`. For `browser`, `screenshot`, or `mixed`, create a visual claim before running tests.
### 2. Check it
Use `media` for a UI flow or backend change on both commits; else use the reference steps. Draft a [scenario](references/scenario.md), clear its `todo`, check, capture:
```bash
"$PROVE_IT" draft --dir "$PROOF_DIR" --out "$PROOF_DIR/scenario.json"
"$PROVE_IT" scenario --dir "$PROOF_DIR" --scenario "$PROOF_DIR/scenario.json"
"$PROVE_IT" media --dir "$PROOF_DIR" --scenario "$PROOF_DIR/scenario.json" --proves
```
For backend, API, persistence, worker, or authorization behavior, read [references/backend.md](references/backend.md).
For visible UI behavior, read [references/browser.md](references/browser.md).
Mark anything not established as `not_proven`. Do not weaken a claim to get a pass.
For example-driven behavior, record cases with `"$PROVE_IT" example`. After backend checks without media, run `"$PROVE_IT" visualize --dir "$PROOF_DIR"`. `publish` makes it if it is missing.
### 3. Share the result
Read [references/publishing.md](references/publishing.md).
In PR mode, run:
```bash
"$PROVE_IT" validate --dir "$PROOF_DIR"
"$PROVE_IT" publish --dir "$PROOF_DIR"
```
`publish` posts one new comment, checks the media, and removes the temp directory. `--dry-run` posts nothing.
In local mode, run:
```bash
"$PROVE_IT" validate --dir "$PROOF_DIR"
"$PROVE_IT" render --dir "$PROOF_DIR"
```
Keep the local run directory. Do not publish it.
## Return
In PR mode, report the comment URL, tested commit, and media. Do not repeat the comment.
In local mode, report the tested commit, tree state, `proof.md` and media paths, and that nothing was published.
For repo startup, routes, tests, or safe auth, read [references/configuration.md](references/configuration.md). Run `"$PROVE_IT" doctor` only when a dependency or upload fails.From Tbsheff/skills, MIT.
More from Tbsheff/skills
- 0.577score
big-picture
Tbsheff
Use when the user wants brief text, large visuals, and clear design without AI slop in an explanation, page, slide, or report.
SkillAFreshness: A★ 1Claude Code +9 - 0.577score
restate-intent
Tbsheff
Restate the user's goal and problem before continuing.
SkillAFreshness: A★ 1Claude Code +9 - 0.552score
ask
Tbsheff
Use when the user asks to be interviewed, wants guided choices, or needs to answer a question before work can continue.
SkillAFreshness: A★ 1Claude Code +9 - 0.547score
writing-architecture-plans
Tbsheff
Write concise implementation-ready architecture plans and ADRs with human naming, ASCII diagrams, pseudocode, proposed file trees, call stacks, calldiff-style…
SkillBFreshness: B★ 1Claude Code +9 - 0.547score
thariq-writing
Tbsheff
Write practical technical blog posts in the style of Thariq Shihipar's Claude Code essays.
SkillBFreshness: B★ 1Claude Code +9 - 0.547score
agent-artifacts
Tbsheff
Create or update a substantial engineering deliverable as validated semantic JSON, then render it through the Agent Artifacts CLI or MCP into self-contained…
SkillBFreshness: B★ 1Claude Code +9 - 0.542score
the-hemingway-rule
Tbsheff
Use when writing implementation plans, audits, explanations, proposals, or any prose meant for a human reader.
SkillBFreshness: B★ 1Claude Code +9 - 0.539score
typed-call-stack-planning
Tbsheff
Creates executable implementation plans for multi-file code changes using typed pseudocode, boundary maps, current/target call stacks, explicit non-goals…
SkillBFreshness: B★ 1Claude Code +9 - 0.536score
abstraction-design-coach
Tbsheff
Help design, review, simplify, and refactor software abstractions, especially in TypeScript and JavaScript.
SkillBFreshness: B★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 24, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 2.2.1
- License
- MIT
- Repository
- github.com/Tbsheff/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Tbsheff
- 0.577score
big-picture
Tbsheff
Use when the user wants brief text, large visuals, and clear design without AI slop in an explanation, page, slide, or report.
SkillAFreshness: A★ 1Claude Code +9 - 0.577score
restate-intent
Tbsheff
Restate the user's goal and problem before continuing.
SkillAFreshness: A★ 1Claude Code +9 - 0.552score
ask
Tbsheff
Use when the user asks to be interviewed, wants guided choices, or needs to answer a question before work can continue.
SkillAFreshness: A★ 1Claude Code +9 - 0.547score
writing-architecture-plans
Tbsheff
Write concise implementation-ready architecture plans and ADRs with human naming, ASCII diagrams, pseudocode, proposed file trees, call stacks, calldiff-style…
SkillBFreshness: B★ 1Claude Code +9 - 0.547score
thariq-writing
Tbsheff
Write practical technical blog posts in the style of Thariq Shihipar's Claude Code essays.
SkillBFreshness: B★ 1Claude Code +9 - 0.547score
agent-artifacts
Tbsheff
Create or update a substantial engineering deliverable as validated semantic JSON, then render it through the Agent Artifacts CLI or MCP into self-contained…
SkillBFreshness: B★ 1Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get prove-it running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
prove-it skill. Agent Mart. https://agentmart.dev/skills/tbsheff-prove-it (last updated 2026-10-24)