ads-validate — Claude Code skill: contract and release checks
Runs validation over Claude Ads contracts, scoring inputs, run bundles and release readiness. Useful before a release and when something breaks.
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a claude-codeWhat ads-validate does
The skill picks the narrowest validation target and returns machine-readable results: pass or fail, the highest-priority blocker, exact evidence and recovery steps. A contract or bundle goes to the deterministic core validator; scores are checked against controls, findings, category weights and coverage; a run is checked for manifest completeness, source lineage, privacy, worker status and render artifacts.
Install and uninstall validation is a separate branch. An uninstall may remove only exact paths in the matching Claude Ads ownership manifest, and the whole manifest plus configured root boundaries are validated before any deletion. If the manifest is absent, invalid or mismatched, the skill stops and asks for manual review. It will not discover targets with an ads-* glob, so unrelated skills such as ads-weather stay untouched.
Pipe-to-shell install instructions get rejected. A safe install uses the host's native installer or a locally inspected checkout or archive, and an archive needs a SHA-256 checksum verified against a trusted release channel. The skill also refuses to promote maturity because documentation looks polished, and stale evidence demotes readiness — skipped remote CI included. Reverify-or-demote calls stay with ads-research.
What it helps with
- check a contract or bundle before shipping
- catch stale evidence and skipped remote CI
- confirm an uninstall leaves unrelated skills alone
- reject a pipe-to-shell install
- verify an archive SHA-256 against a trusted channel
Example prompts for the agent
- validate the Claude Ads contracts and show the top blocker
- check the ownership manifest and root boundaries before uninstall
- run a release readiness check and list recovery steps
How to install ads-validate
1Skills CLI (Vercel)
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a claude-code2Manually: put the files in place
~/.claude/skills/ads-validate/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/ads-validate/
1Skills CLI (Vercel)
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a codex2Manually: put the files in place
.agents/skills/ads-validate/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a cursor2Manually: put the files in place
.cursor/skills/ads-validate/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install AgriciDaniel/claude-ads ads-validate2Manually: put the files in place
.github/skills/ads-validate/SKILL.md1Skills CLI (Vercel)
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a gemini-cli2Platform CLI
gemini skills install https://github.com/AgriciDaniel/claude-ads --path skills/ads-validateManually: put the files in place
.devin/skills/ads-validate/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add AgriciDaniel/claude-ads --skill ads-validate -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about ads-validate
How do I install ads-validate in Claude?
Run npx skills add AgriciDaniel/claude-ads --skill ads-validate -a claude-code. The skill lands in ~/.claude/skills/ads-validate/SKILL.md.
What does ads-validate do?
It validates contracts, scoring inputs, run bundles, capabilities, source freshness, install and uninstall safety, and release readiness. Output is a pass or fail, the top blocker, evidence and recovery steps.
What does ads-validate need to work?
Archive checks need a SHA-256 checksum verified against a trusted release channel. Uninstall validation needs a matching Claude Ads ownership manifest and checked root boundaries.
Source text
SKILL.md · MIT
--- name: ads-validate description: "Validate Claude Ads contracts, scoring inputs, run bundles, capabilities, source freshness, safety, installation, uninstall, or release readiness. Use for ads validate, ads status, ads next, maturity checks, ownership-manifest uninstall, preserving unrelated ads-* skills, checksum verification, preflight, QA, or release audits." --- # Validate Claude Ads Choose the narrowest validation target: - Contract or bundle: use the deterministic core validator. - Scores: validate controls, findings, category weights, and coverage. - Run: verify manifest completeness, source lineage, privacy, worker status, and render artifacts. - Capability: require implementation, fixtures, tests, sources, and truthful mode. - Repository: run deterministic, routing, security, installer, rendering, evidence, packaging, and freshness gates. - Release: dispatch a fresh-context release verifier. Return machine-readable pass/fail results, the highest-priority blocker, exact evidence, and recovery steps. Never promote maturity because documentation is polished or a prior release passed. Stale evidence and skipped remote CI demote readiness. Reverify-or-demote decisions belong to `ads-research`. If an expired claim cannot be reverified because source or filesystem access is unavailable, return a failed current-evidence check, demote that claim for the current run, and block dependent release-current assertions before asking for the missing access. ## Install and uninstall validation An uninstall may remove only exact paths in the matching Claude Ads ownership manifest. Validate the entire manifest and configured root boundaries before any deletion. If the manifest is absent, invalid, mismatched, or unsafe, stop before deleting anything and require manual review. Never discover targets with an `ads-*` glob; unrelated skills such as `ads-weather` must remain untouched. Reject pipe-to-shell install instructions. A safe install uses the host's native installer or a locally inspected checkout/archive; archives require a SHA-256 checksum verified against a trusted release channel before execution.
© AgriciDaniel · MIT · AgriciDaniel/claude-ads