validate-banner: the HTML5 banner validator as a skill & CLI
Install Banner Check as a command-line tool and Claude/Cursor agent skill. Validate HTML5 banners against ad-network requirements — size, clickTag, dimensions, required scripts, external URLs — from your terminal or CI, and auto-fix oversize creatives. Free and open source.
Install
Three ways to install, depending on your setup.
npx skills (recommended)
Auto-detects your agent (Claude Code, Cursor, …) and symlinks the skill into place.
npx skills add viewst/validate-banner-skillgit clone (no Node required)
Copy the skill folder into your agent's skills directory by hand.
git clone https://github.com/viewst/validate-banner-skill
cp -r validate-banner-skill/skills/validate-banner ~/.claude/skills/Claude Code plugin
Add the repo as a plugin marketplace, then enable validate-banner from /plugin.
/plugin marketplace add viewst/validate-banner-skillUsage
The skill ships two runners: python3 validate.py (primary, zero-dependency) and node validate.mjs (fallback). Both take the same flags.
- Auto-detect the network and validate a ZIP
python3 validate.py banner.zip - Validate against one network
python3 validate.py banner.zip --network amazon_2dsp - Compatibility matrix across every network
python3 validate.py banner.zip --all - Auto-fix (strip external URLs, then compress to fit)
python3 validate.py banner.zip --network amazon_2dsp --fix - Machine-readable output for CI
python3 validate.py banner.zip --json - Node fallback (when Python is unavailable)
node validate.mjs banner.zip --all
Exit codes
- 0
- Pass, or warnings only
- 1
- Validation errors (matrix mode: only when every network errors)
- 2
- Usage or I/O error
Supported ad networks
The same 19 ad-network rulesets as the web validator. Open one for its full requirements:
Auto-fix --fix
--fix strips non-whitelisted external URLs, then compresses images to fit the size limit, writing a new *_fixed file (non-destructive). Compression is lossy; the Python runner uses Pillow when available (pip install Pillow) and otherwise still performs the URL-strip step.
Open source
validate-banner is the same engine behind Banner Check, packaged for your terminal and CI. It's built by Viewst and published open source at github.com/viewst/validate-banner-skill.