vc:security
Skill0 starsChanged 3 months agoMITView on GitHub
STRIDE + OWASP-based security audit with optional auto-fix. Scans code for vulnerabilities, categorizes by severity, and can iteratively fix findings using vc:autoresearch pattern.
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 5 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 18
Before a release or major deployment
- Distinctive: line 19
After adding auth, payment, or data-handling features
- Distinctive: line 26
No user-facing code or data handling involved
- Distinctive: line 58
Run the appropriate package audit tool for the detected stack:
- Very specific: line 93
When --fix is provided, apply fixes iteratively after the audit:
- Distinctive: line 101
Stop early if guard fails — report the failure instead of proceeding
- Very specific: line 122
Run after vc:predict when the security persona flags concerns
- Very specific: line 124
Use vc:scenario with --focus authorization for deeper auth flow testing
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
vc:security — Security Audit
Runs a structured STRIDE + OWASP security audit on a given scope. Produces a severity-ranked findings report. With --fix, applies fixes iteratively using the vc:autoresearch guard pattern.
When to Use
- Before a release or major deployment
- After adding auth, payment, or data-handling features
- Periodic security review (monthly/quarterly)
- Compliance check (SOC 2, GDPR, PCI-DSS prep)
When NOT to Use
- Purely cosmetic changes (CSS, copy edits)
- No user-facing code or data handling involved
Modes
| Mode | Invocation | Behavior |
| Audit only | /vc:security <scope> | Scan → categorize → report |
| Audit + Fix | /vc:security <scope> --fix | Scan → categorize → fix iteratively |
| Bounded fix | /vc:security <scope> --fix --iterations N | Limit fix iterations to N |
Audit Methodology
1. Scope Resolution
Expand the provided glob or full keyword into a file list. Read all in-scope files before analysis.
2. STRIDE Analysis
Evaluate each threat category systematically:
- Spoofing — identity/authentication weaknesses
- Tampering — input validation, integrity controls
- Repudiation — audit logging gaps
- Information Disclosure — data leakage, secret exposure
- Denial of Service — rate limits, resource exhaustion
- Elevation of Privilege — broken access control, RBAC gaps
3. OWASP Top 10 Check
Map findings to OWASP categories (A01–A10). See references/stride-owasp-checklist.md for per-category checks.
4. Dependency Audit
Run the appropriate package audit tool for the detected stack:
- Node.js:
pnpm audit - Python:
pip-audit - Go:
govulncheck - Ruby:
bundle audit
5. Secret Detection
Scan for hardcoded API keys, passwords, tokens, and private keys using regex patterns. See references/stride-owasp-checklist.md → Secret Patterns.
6. Finding Categorization
Assign each finding a severity level (see Severity Definitions below).
Output Format
## Security Audit Report
### Summary
- Files scanned: N
- Findings: X critical, Y high, Z medium, W low, V info
### Findings
| # | Severity | Category | File:Line | Description | Fix Recommendation |
|---|----------|----------|-----------|-------------|-------------------|
| 1 | Critical | Injection | api/users.ts:45 | SQL string concatenation | Use parameterized queries |
| 2 | High | Auth | auth/login.ts:12 | No rate limiting | Add express-rate-limit |Fix Mode (--fix)
When --fix is provided, apply fixes iteratively after the audit:
- Sort all findings by severity (Critical → High → Medium → Low)
- For each finding:
a. Apply one targeted fix
b. Run guard (tests or lint) to verify no regression
c. Commit:
security(fix-N): <short description>d. Advance to next finding - Stop early if guard fails — report the failure instead of proceeding
- Uses
vc:autoresearchguard pattern for regression prevention
Tip: Use
--iterations Nto cap total fix iterations when scope is large.
Severity Definitions
| Severity | Description | Fix Priority |
| Critical | Exploitable now, data breach or RCE risk | Immediate — block release |
| High | Exploitable with moderate effort, significant impact | This sprint |
| Medium | Limited exploitability or impact | Next sprint |
| Low | Theoretical risk, defense-in-depth improvement | Backlog |
| Info | Best practice suggestion, no direct risk | Optional |
Integration with Other Skills
- Run after
vc:predictwhen the security persona flags concerns - Feed Critical/High findings into
vc:autoresearch --fixfor automated remediation - Use
vc:scenariowith--focus authorizationfor deeper auth flow testing - Pair with
generate-plan/plan-agentto schedule Medium/Low findings as sprint tasks
Example Invocations
# Audit API layer only
/vc:security src/api/**/*.ts
# Audit entire src/ and auto-fix, max 15 iterations
/vc:security src/ --fix --iterations 15
# Full codebase audit (no fix)
/vc:security fullSee references/stride-owasp-checklist.md for the detailed per-category checklist and secret detection regex patterns.
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 1
- opencue/cuecards★ 699% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository51 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- vc:kitSkill
- vc:auditSkill
- vc:autoresearchSkill
- vc:chrome-devtoolsSkill
- vc:context-engineeringSkill
- vc:debugSkill
- vc:docs-seekerSkill
- vc:generate-contextSkill
- vc:generate-planSkill
- vc:mcp-managementSkill
- vc:merge-worktreeSkill
- vc:previewSkill
- vc:problem-solvingSkill
- vc:publishSkill
- vc:repomixSkill
- vc:scoutSkill
- vc:sequential-thinkingSkill
- vc:setupSkill
- vc:stress-testSkill
- vc:tech-graphSkill
- vc:updateSkill
- vc:watzupSkill
- vc:web-testingSkill
- vc:xiaSkill
- vc:kitSkill
- vc:auditSkill
- vc:autoresearchSkill
- vc:chrome-devtoolsSkill
- vc:context-engineeringSkill
- vc:debugSkill
- vc:docs-seekerSkill
- vc:generate-contextSkill
- vc:generate-planSkill
- vc:mcp-managementSkill
- vc:merge-worktreeSkill
- vc:previewSkill
- vc:problem-solvingSkill
- vc:publishSkill
- vc:repomixSkill
- vc:scoutSkill
- vc:securitySkill
- vc:sequential-thinkingSkill
- vc:setupSkill
- vc:stress-testSkill
- vc:tech-graphSkill
- vc:updateSkill
- vc:watzupSkill
- vc:web-testingSkill
- vc:xiaSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

