validate

A verification workflow for checking a skill bundle's file list, hashes, manifest, structure, and likely source-copy status.

In plain words
What is it for?
It is for validating a bundle without opening a full editing session, reporting hash mismatches, unsafe paths, symlink issues, and whether the copy appears canonical or derived.
Why use it?
It helps determine whether files are missing or changed and whether the bundle matches its MANIFEST.yaml record.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/snapsynapse/skill-provenance/validate
Any agent
npx skills add snapsynapse/skill-provenance --skill validate
Clone the repo
git clone --depth 1 https://github.com/snapsynapse/skill-provenance

Made for: Claude Code, Codex.

Per session 54 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 595 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00054 $0.00595
Opus 5 $0.00027 $0.00298
Sonnet 5 $0.00011 $0.00119
Haiku 4.5 $0.00005 $0.00060

Measured 2d ago against content hash 2c07c035ac4f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

validate scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/validate/SKILL.md · 67 lines

How it starts

The opening of the file, as written. The whole thing — 67 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Skill Provenance: Validate

Run the hash and inventory check only. This is a narrow verification command, not the full open-session or close-session protocol.

When to use

Run /skill-provenance:validate when the user wants to know whether the current bundle matches its MANIFEST.yaml, whether files are missing, or whether a copy appears to be canonical or derived.

Protocol

  1. Locate the bundle root. Use the directory containing MANIFEST.yaml. If no manifest exists, report that the bundle is unversioned and suggest /skill-provenance:bootstrap.
  2. Run validate.sh when available. Prefer:
    ./validate.sh
    
    If the script is not present, compute SHA-256 hashes for files listed in MANIFEST.yaml and compare them manually.
  3. Report validation results only. Include:
    • File count checked
    • Missing files
    • Hash mismatches
    • Explicit hash: null opt-outs
    • Structural, unsafe-path, duplicate-path, and symlink errors
    • Matching, stale, or malformed validated_against records when present
    • Exit code or equivalent pass/fail result
  4. Identify copy type. Use MANIFEST.yaml and local contents to say whether the copy appears to be:
    • a canonical source bundle
    • a strict-platform install copy
    • a registry or .skill package
    • incomplete or ambiguous A derived copy is valid if its own manifest describes exactly the files present. Do not treat missing development-only files as corruption unless the copy's manifest lists them.
  5. Do not mutate files. Do not update hashes, bump versions, edit the changelog, create a handoff note, or run the close protocol. If the user asks to fix mismatches, recommend /skill-provenance:close or an explicit validate.sh --update workflow.

Output

Keep the response concise:

Bundle: my-skill 1.2.0
Copy type: canonical source bundle
Files: 7 checked, 0 missing, 0 mismatched, 0 explicit opt-outs
Result: pass

If validation fails, name the specific files and explain that a mismatch means the file no longer matches the recorded manifest state. This is an integrity check, not a trust anchor.

Read the full file on GitHub · 67 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 67 lines · 54 tokens per session scan A 2c07c035ac4f

Subscribe to this mod's changes

validate is a skill published in the GitHub repository snapsynapse/skill-provenance (7 stars, last pushed 4d ago), licensed MIT. It adds 54 tokens to every session and 595 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

audit-pr

Audit a whole PR against the delivery contract and return MERGE-READY or evidenced blockers with the full URL. Consumes the current review-change REVIEW-PASS receipt instead of re-running review axes; posts a SHA-bound ready comment; never edits or merges. Triggers: "audit-pr", "is this PR ready", "merge gate".

gtrabanco/agentic-workflow · 71 tokens

product-audit

Audit the whole product across code, quality, process, docs, roadmap, and tooling. Persist one severity-ranked, F-numbered report with proposals; never fix or file work. Triggers: "product-audit", "audit the product", "full health check", "are we product-ready", "CTO review".

gtrabanco/agentic-workflow · 69 tokens

audit-docs

Audit cross-document coherence: docs ↔ roadmap ↔ code ↔ fix index ↔ issues. Finds drift — features in docs/ not in the roadmap (or vice versa), fix-index entries already merged/closed, broken documentation-map links, dependency cycles, artifacts in the wrong language, naming-convention violations — and reports them…

gtrabanco/agentic-workflow · 188 tokens

design-feature

Turn a raw idea or existing feature into a designed product SPEC by completing entity, integration, role, and expectation closure. Upserts never destroy recorded decisions. Triggers: "design-feature", "design this feature", "define product scope".

gtrabanco/agentic-workflow · 51 tokens

init-workspace

Adapt the workflow scaffold to a new repository or add only missing substrate blocks to an existing install. Every install, hook, and overwrite needs explicit consent. Triggers: "init-workspace", "set up agentic workflow", "upgrade workflow scaffold".

gtrabanco/agentic-workflow · 54 tokens

log-session

Append a structured entry to the project's session log (docs/LOGS.md): what was done this session, files touched, decisions taken, and the next step — so the next session (or another person) can pick up the thread without re-reading git history. Run it before /clear, before closing Claude Code, or at any natural…

gtrabanco/agentic-workflow · 183 tokens