zapgun-ai/clawback
Skill Claude CodeCodex
Run a counterbalanced A/B knob block end to end and produce a report. Orchestrates the whole validation loop the other skills do piecemeal — for each arm it starts a clawback proxy with that arm's knobs and its OWN --state file (fresh SESSION KEY, no clawback-side carry-over), drives N turns of load through it (pty or…
zapgun-ai/clawback
Skill Claude CodeCodex
Fast, read-only per-arm turn-log summary — billable turn count, httpStatus tally (catches rate-limiting / non-200s mid-run), cacheread/creation sums with the ephemeral 5m-vs-1h split (a direct knob-sanity check: A2/A3/A5 should show ephemeral1h > 0, A0/A1/A4 should not), token-weighted hit rate, and thinkingBudget.…
zapgun-ai/clawback
Skill Claude CodeCodex
Analyze clawback turn-logs (NDJSON) to compare treatment vs passthrough arms. Produces report.md, report.csv, summary.json, manifest.json. Headline is billable input tokens reclaimed per turn (full-rate quota saved, no pricing) with a bootstrap 95% CI; per-turn $ and hit-rate are a demoted cost appendix, all…
zapgun-ai/clawback
Skill Claude CodeCodex
Capture a REAL Claude Code /v1/messages body as a replay fixture, so the HTTP replay arm (.skills/replay) faithfully reproduces Claude Code's cachecontrol breakpoint structure (a hand-authored fixture makes the 1h-TTL knob look like a no-op). Starts a clawback proxy with --capture-body, drives ONE real claude turn…
zapgun-ai/clawback
Skill Claude CodeCodex
Render the clawback share card in BOTH tones (neg + pos) as a DESIGN render-only proof — NOT a benchmark result — so the share-card atmosphere (deep-purple LENSCORE centre, win-only cyan corona, darkened gradients) can be eyeballed in one pass. neg uses a real run's amber regression card (purple core, no corona); pos…
zapgun-ai/clawback
Skill Claude CodeCodex
Drive the REAL claude binary through clawback's PTY channel at a scripted inter-turn gap schedule — the faithful load arm. Because the bytes on the wire are produced by genuine Claude Code, this is the only driver that exercises the 1h-TTL nested-cache-control rewrite (arm A2) authentically. Use for headline/moat…
zapgun-ai/clawback
Skill Claude CodeCodex
Turn a benchmark turn-log (or an already-analyzed run dir) into a report the GUI shows right away — runs analyze + plot so summary.json + report.csv AND charts/tokenssaved.svg + charts/tokenssaved.bg.svg all exist. The bare .bg.svg is the share-card PNG background; without it the downloaded/posted card has no chart…
zapgun-ai/clawback
Skill Claude CodeCodex
Answer the load-bearing question "does clawback SESSION-KEY fragmentation actually cost Anthropic tokens?" from a finished run's per-instance turn-logs — zero new tokens. The prefix-fragmentation count (distinct SESSION KEYs per systemStableKey) tells you the cch rotation fragmented clawback's view; it does NOT tell…
zapgun-ai/clawback
Skill Claude CodeCodex
Statically inspect prompt-cache breakpoints in a captured /v1/messages body or a clawback --state file, with ZERO token spend and no API calls. Answers "where are the cachecontrol breakpoints, and which ephemeral tokens (cch / date / ) sit inside which cached prefixes?" — i.e. what a single mutation cold-starts. Use…
zapgun-ai/clawback
Skill Claude CodeCodex
Run the clawback proxy and watch its log output for errors. Starts the bare proxy (honoring config layering), captures combined stdout+stderr to a log file, and follows it with warn/error/4xx/5xx lines highlighted. Supports foreground follow, background --detach (with --stop/--status), and --attach to tail an…
zapgun-ai/clawback
Skill Claude CodeCodex
Watch an already-detached clawback proxy as an event stream — surface only actionable log lines (error/warn/4xx/5xx/crash signatures, plus rebind and runtime-mode toggles) AND announce a loud "PROXY DOWN" line the instant the proxy pid dies. Fills the gap that runmonitor.sh --attach leaves: a bare tail goes SILENT on…
zapgun-ai/clawback
Skill Claude CodeCodex
Paired shadow-capture — one real claude session that captures the no-clawback baseline AND applies the armed knobs at the same time. This is the "shadow mode" knob for baseline capture: instead of forfeiting the optimizations for the measurement window (a plain passthrough baseline), the tee fans every turn to TWO…
zapgun-ai/clawback
Skill Claude CodeCodex
Render the tokens-saved chart from an analyzer output directory. Dependency-free SVG generator — reads summary.json + report.csv produced by benchmark/bin/analyze.js and emits TWO SVGs of the same cumulative billable-input story (passthrough baseline vs clawback, honest green/red shaded gap): tokenssaved.svg (labeled…
zapgun-ai/clawback
Skill Claude CodeCodex
Compose a finished run's social SHARE CARD (the chart background + dark scrim + hero headline) and rasterize it to PNG so it can be eyeballed without opening the report GUI in a browser. Use it to check the thing the GUI's client-side PNG actually ships — most importantly, whether the chart lines survive the…
zapgun-ai/clawback
Skill Claude CodeCodex
Drive a reproducible HTTP replay load against a running clawback proxy. Replays one captured /v1/messages fixture at a load profile's inter-turn gap schedule, with built-in carry-over control (fresh path-mode session id + per-block cache nonce). Auth is an OAuth bearer (CLAWBACKOAUTHTOKEN), never an Anthropic API key…
zapgun-ai/clawback
Skill Claude CodeCodex
End-to-end smoke test for the / /report saved-run viewer. Boots the real clawback binary against the repo's runs/ dir and curls every report route, asserting status + content, prefix mutability, public-read exemption, and that sensitive run-dir siblings stay unreachable. Use after touching src/report.js…
zapgun-ai/clawback
Skill Claude CodeCodex
Restart the detached clawback proxy and reconnect its monitor. Stops the proxy previously started with runmonitor.sh --detach (if any), then starts a fresh one in the background; the run log is recreated in place so a tail -F follower (runmonitor.sh --attach, or an agent's Monitor tool) re-attaches automatically.…
zapgun-ai/clawback
Skill Claude CodeCodex
Shut down the clawback proxy stack. By default stops ONLY the detached proxy started via runmonitor.sh --detach (graceful SIGTERM, then SIGKILL after 5s) and removes its pidfile, letting the monitor go quiet — interactive clawback claude sessions are left running on purpose. Pass --sessions for a full teardown that…
zapgun-ai/clawback
Skill Claude CodeCodex
Run the clawback end-to-end smoke test. Starts a mock upstream, spawns the proxy against it, exercises path-mode and hash-mode requests, walks the admin API, and prints the persisted state. Use when verifying the proxy still works after changes.
zapgun-ai/clawback
Skill Claude CodeCodex
Cheaply prove the PTY turn-submission mechanism actually lands turns BEFORE any timed or headline run spends real tokens. Runs .skills/submit-smoke/scripts/submitsmoke.sh — one tiny passthrough Haiku block — and checks two independent signals: the driver's own "confirmed N/M" tally AND the count of real (non-ping)…
zapgun-ai/clawback
Skill Claude CodeCodex
Answer the research question "does a keep-alive ping that itself gets 429'd still refresh the prompt-cache TTL on Anthropic's side?" from captured turn-logs. A 429'd ping has no usage body, so its effect is only visible through the NEXT successful request on the same SESSION KEY. Runs…
zapgun-ai/clawback
Skill Claude CodeCodex
Config doctor for clawback — loads the merged config (DEFAULTS < global < ./CLAWBACK.md < CLI overrides) exactly as the proxy's loadConfig does, prints a secret-free summary of the resolved values plus the merge-order sources, and exits non-zero if the canonical CLAWBACK.md did NOT take effect (host not 0.0.0.0, tls…
zapgun-ai/clawback
Skill Claude CodeCodex
Quiet operator watch for a detached clawback proxy — stream ONLY legitimate errors and never the benign flood. Wakes on [error]/[fatal] lines, crash signatures (uncaught/EADDRINUSE/ECONN/Error:/self-loop), server-side 5xx that are NOT the transient 529, real (non-keep-alive) request failures, and a loud "PROXY DOWN"…
zapgun-ai/clawback
Skill Claude CodeCodex
Emit-on-event health watcher for a long paired/ab benchmark run, meant to be fed to the Monitor tool (each stdout line becomes one notification) so an unattended 75-min run cannot fail silently. Coverage-first by design — it speaks up on liveness (ALIVE), on new error signatures in the proxy/tee logs (ERROR), on a…