SKILL FILE

Security Check with AI

Repo + machine security audit in one command. Scans tracked files + git history for leaked API keys, checks .gitignore coverage, validates frontend bundles aren't leaking server env vars, audits installed Claude skills + MCP servers for supply-chain risk. The skill you run before any push to a public repo.

Download Skill File ↓

What this skill file teaches Claude

Drop one markdown file into your repo. Claude Code learns how to run this entire workflow.

1

Secret scanner (current files)

Greps every tracked file for known key patterns: Anthropic (sk-ant-…), OpenAI (sk-proj-…), AWS (AKIA…), GitHub (ghp_…), Slack (xoxb-…), JWTs, PEM private keys. CRITICAL on any match.

2

.gitignore coverage check

Verifies .env, *.pem, *.key, id_rsa, .aws/, .ssh/, credentials*.json, .mcp.json and other secret/PII paths are gitignored. Tells you exactly which lines to add — and which already-tracked files need `git rm --cached`.

3

Git history audit

Searches every branch's full history for ever-committed secret-shaped strings — even if the file was since deleted. Force-pushing a 'fix' doesn't un-leak the secret; rotation does. The skill tells you which keys to rotate at which provider.

4

Public exposure check

Reads repo visibility from gh. If public, every CRITICAL finding is amplified. Scans frontend build output (`dist/`) for server-only env vars accidentally bundled to the browser. Optional live-site reachability probe.

5

Supply chain audit

Inventories every Claude skill (project + user-level), every MCP server, every global npm/pip install. Flags anything that reads from ~/.ssh/, ~/.aws/, $HOME, or makes network calls to unfamiliar domains. A malicious skill from a tweet can exfiltrate your AWS creds — this is the check that catches it.

6

Prompt injection guidance

Always-on reminder: scraped URL content is untrusted input. A malicious page can contain hidden instructions. Static guidance, included in every report — because no scanner can detect this for you.

What you can build with this

Before any `git push` to a public repo

Run `/security-check`. Critical findings block the push. Non-critical surface as warnings. The skill is designed to be the last step before risky operations.

Before flipping a repo private → public

Once public, every commit in history is grep-able by scraper bots forever. Run this BEFORE the visibility change so you catch leaked secrets while you can still rotate them privately.

After installing a new Claude skill or MCP server

Skills from social media can read .aws/credentials and exfiltrate them. After any install: run `/security-check` to scan supply chain. The skill flags unknowns by name + capability so you can vet them.

First deploy to Netlify / Vercel

Audit D catches the most common first-deploy mistake: a server env var (DATABASE_URL, SERVICE_ROLE) bundled into the frontend because someone used the wrong env-var prefix.

Strict mode in CI / pre-push hook

`/security-check --strict` exits non-zero on any CRITICAL finding. Wire it into a pre-push git hook or a GitHub Actions workflow so security gates the deploy automatically.

Get the full skill file

Everything above is 80% of the skill file. Download the complete version with full implementation details, agent prompts, and ready-to-run scripts.

Common questions

No — rotation is provider-specific and irreversible (you need the new key everywhere immediately). The skill identifies what's leaked, tells you exactly where to rotate (Anthropic console URL, AWS IAM, etc.), and re-runs to confirm clean. Rotation stays human-in-the-loop.
No — `git filter-repo` + force-push are destructive operations that need explicit human approval, especially with collaborators involved. The skill surfaces the exact commands and warns you about the consequences. You execute them.
GitHub scans after push. This scans before push. By the time GitHub flags a leak, scraper bots have already cloned it. Use both: this as the prevention layer, GitHub Secret Scanning as the catch-all backstop.
It catches anything matching the standard provider patterns (sk-, AKIA…, AIza…, ghp_, etc.). For custom internal-keys, add patterns to the skill's config. For broadly-shaped secret formats (UUIDs, hex blobs), enable the `--paranoid` flag — more false positives, fewer escapes.
Friendly default reports findings and exits 0 regardless — for exploration. `--strict` exits non-zero on CRITICAL so it can gate CI / pre-push hooks. Same audits, different exit behavior.
For repo + machine prevention, yes — it covers the leak vectors that account for ~all vibe-coded incidents. For web app hardening (Supabase RLS, JWT verification, security headers, dependency CVEs), it's not in scope — those are app-level concerns to tackle once the repo is locked down.

Ready to automate?

SoloStack gives you every skill pre-installed — scraping, marketing, sales, CRM, and more. One repo. Every department.

Book a Call →