Generated banner for Validate Bug
Generated logo for Validate Bug

Validate Bug

Trail of BitsOfficialPublished by Trail of Bits

  • Skill
  • Review and audit
  • Security
  • CC-BY-SA-4.0
  • No issues found

From the author

Use when a bug PoC package needs an independent rerun and judgment before patching.
— the description by Trail of Bits

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

Validate Bug provides a structured procedure for security agents to independently rerun and assess bug proof-of-concept (PoC) packages. By isolating the verification process from the original reporter's narrative, it ensures that findings are objectively confirmed, not confirmed, or marked as inconclusive based on raw execution data and adherence to project invariants.

What it does

  • Reviews finding documentation and PoC materials independently.
  • Executes baseline compiler commands or runtime PoCs in a controlled environment.
  • Captures and archives stdout, stderr, exit status, and timing data.
  • Evaluates whether the observed behavior violates stated project invariants.
  • Generates a formal validation record with a confirmed or inconclusive status.
  • Manifests validation results for audit and record-keeping purposes.

When to use it

  • After a bug has been reproduced and a PoC package is available.
  • When an independent verification of a security claim is required before patching.
  • When you need to ensure that a reported bug is reproducible without relying on external transcripts.

Advantages

  • Prevents reliance on potentially flawed or biased reproduction narratives.
  • Ensures consistent and auditable verification of security findings.
  • Maintains strict separation between bug validation and patch development.
  • Provides clear, standardized outcomes for bug triage.

Usage examples

“Validate the bug PoC provided in the latest finding.”
The agent will independently rerun the PoC, capture the execution receipts, and generate a validate.json file confirming or rejecting the bug claim.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/trailofbits/validate-bug/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip validate-bug.zip -d .agents/skills

Documentation by Trail of Bits

Validate Bug

When to Use

Use after reproduce-bug has supplied a finding and PoC package. Read the record contract. Before target commands, follow its project guidance.

When NOT to Use

Do not use to repair a PoC, develop a patch, or infer reproduction from the reproducer's narrative.

Procedure

  1. Read finding.json, the reproduction's proof type, commands, any PoC, and raw receipts. Do not read the reproducer's transcript.

  2. Rerun the same baseline compiler command for compile failures, or rebuild and rerun the unchanged runtime PoC and planned scoped inputs. Save stdout, stderr, exit status and timing in validate/receipts/. If an observation is unreliable, return inconclusive instead of inferring either presence or absence.

  3. Decide whether the target diagnostic or runtime assertion demonstrates the exact claim and violates the stated invariant. Write validate.json as confirmed, not_confirmed, or inconclusive with a short reason and agent identity.

    Validate record schema:

{
  "schema_version": 1,
  "outcome": "confirmed",
  "agent": "validator-1",
  "reason": "The unchanged PoC reached the assertion and demonstrated the claim."
}
  1. Manifest the complete validate/ directory with uv run --no-project <script> manifest <validate-step-dir>, then run the record checker. Return the package without editing the PoC or finding.

Rationalizations to Reject

ShortcutRequired action
Fix the PoC to make the claim work.Mark it inconclusive and explain why.
Trust the reproducer's conclusion.Rerun the unchanged package independently.

Files

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Needs Python

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Published by
Trail of Bits
Publisher
Trail of Bits (Official)
Source
trailofbits/skills · plugins/patching-bugs/skills/validate-bug · commit e4dd0bb
Licence
Creative Commons Attribution-ShareAlike 4.0 International (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Trail of Bits.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download validate-bug.zip