# Proof Video

Capture, edit, inspect, and attach real ClawHub browser proof directly to a GitHub PR...

- Repository: https://github.com/openclaw/clawhub (9543 stars)
- Category: Git and review
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add openclaw/clawhub --skill proof-video -g -a claude-code -y`
Codex: `npx skills add openclaw/clawhub --skill proof-video -g -a codex -y`
Cursor: `npx skills add openclaw/clawhub --skill proof-video -g -a cursor -y`
Gemini CLI: `npx skills add openclaw/clawhub --skill proof-video -g -a gemini-cli -y`

## Description

Capture, edit, inspect, and attach real ClawHub browser proof directly to a GitHub PR, with captions, focused zooms, and clearly separated before/after results.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Proof video

Adapted from OpenClaw's [proof-video skill](https://github.com/openclaw/openclaw/blob/main/.agents/skills/proof-video/SKILL.md) and [PR evidence instructions](https://github.com/openclaw/openclaw/blob/main/AGENTS.md). This adaptation uses ClawHub's existing real-browser proof runner; OpenClaw's mocked Gateway template and repo-specific helper imports do not apply here.

## Establish the claim

Before recording, name the behavior, exact source refs, local URL, fixture and expected visible result. Keep the same viewport, theme, account, data and interaction sequence for before/after comparisons. Feature proof can omit an impossible baseline, with the reason stated.

Use a real ClawHub instance with the relevant local Convex code and fixture state. Use a real isolated browser on the current host; use Crabbox only when its environment is needed and available. Do not use HTML mockups, synthetic screenshots, intercepted success responses or hand-written product UI as proof. Seed through the supported local fixture workflow. Never use the operator's personal Gateway for cross-system proof.

For a ClawHub → OpenClaw flow, record the actual admin action, security pending state, catalog lookup, installation and meaningful live tool result. State separately which scan/provider checks are real, simulated or untested. A queued job is not a completed scan, and discovery is not account-level authorization.

## Capture

Keep captures, scripts, cue times and private browser state in separate ignored local directories. Select individual inspected media files for upload; never upload the entire artifact directory or browser state.

Use the existing runner with a task-specific scenario:

```sh
bun run proof:ui -- --runner local --mode feature \
  --scenario .artifacts/proof-scenarios/example.pw.ts \
  --candidate-url http://127.0.0.1:3000
```

The rest: https://github.com/openclaw/clawhub/blob/HEAD/.agents/skills/proof-video/SKILL.md
