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.
npx skills add rjmurillo/ai-agents --skill security-scangit clone --depth 1 https://github.com/rjmurillo/ai-agentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rjmurillo/ai-agents/security-scan)<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/security-scan"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/security-scan/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/security-scan"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/security-scan.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Tool Misuse · line 17 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00077 | $0.02647 |
| Opus 5.5 | $0.00031 | $0.01059 |
| Sonnet 5.5 | $0.00015 | $0.00529 |
| Haiku 4.5 | $0.00008 | $0.00265 |
Grade A, and why
security-scan scanned grade A with 1 finding 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 17d 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.
Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
This skill detects **CWE-78 (command injection)** patterns only. The regex patterns target unambiguous shapes (`subprocess.run(..., shell=True)`, `eval(user_input)`, backtick command substitution, etc.) that produce reli How it starts
The opening of the file, as written. The whole thing — 298 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Security Scan
Proactive vulnerability detection for command injection (CWE-78) before PR submission.
Scope
This skill detects CWE-78 (command injection) patterns only. The regex patterns target unambiguous shapes (subprocess.run(..., shell=True), eval(user_input), backtick command substitution, etc.) that produce reliable signal without taint analysis.
CWE-22 (path traversal) is delegated to CodeQL. The CodeQL workflow runs python-security-extended.qls and actions-security-extended.qls on every PR, authoritatively detecting CWE-22 across Python and GitHub Actions code (the two languages CodeQL supports for this repo per codeql-config.yml). PowerShell, Bash, and C# are NOT covered by CodeQL; for those languages, CWE-22 detection relies on code review and any future static analyzer adoption. Per the buy-vs-build framework analysis (issue #1843), maintaining a custom regex-based CWE-22 detector created false positives (PR #1841 added seven suppression annotations to silence them) without comparable coverage of real CWE-22 vectors that CodeQL catches in CI. Path-traversal checking is Context (table stakes security, not a competitive differentiator); CodeQL is the right tool for the languages it supports.
If a CWE-22 finding surfaces in CI from CodeQL, fix the underlying code or flag it to the owner. Do not add a regex-based CWE-22 check to this scanner.
Triggers
| Trigger Phrase | Operation |
|---|---|
scan for vulnerabilities |
scan_vulnerabilities.py on staged/specified files (CWE-78 only) |
check for command injection |
scan_vulnerabilities.py with CWE-78 focus |
check for path traversal |
NOT handled by this scanner. CWE-22 detection is delegated to CodeQL (see the CodeQL Analysis workflow, which runs python-security-extended.qls). |
pre-PR security scan |
scan_vulnerabilities.py on staged files |
run security scan |
scan_vulnerabilities.py with full scan |
What ships with it
11 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/agent-guardrails-template.md 3.2 KB
- references/agent-memory-inference-leakage.md 3.2 KB
- references/autonomous-execution-guardrails.md 1.9 KB
- references/dependency-risk-scoring.md 921 B
- references/powershell-security-checklist.md 7.1 KB
- references/threat-model-template.md 725 B
- references/vulnerability-patterns.md 6.6 KB
- scripts/scan_constants.py 678 B runs code
- scripts/scan_format.py 4.2 KB runs code
- scripts/scan_patterns.py 11 KB runs code
- scripts/scan_vulnerabilities.py 20 KB runs code
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.
- 17d ago Changed e22b4355e971
- 22d ago Changed · +5 lines 284c7589be39
- 24d ago Changed fa3945827b44
- 1mo ago First seen · 293 lines · 77 tokens per session scan A 03e48076bcda
security-scan is a skill published in the GitHub repository rjmurillo/ai-agents (48 stars, last pushed today), licensed MIT. It adds 77 tokens to every session and 2,647 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
install-gemini-code-review-action
Installs, configures, or upgrades Dazbo's PR code review & issue triage GitHub Action (gemini-review-action) in a target repository. Use when the user wants to set up, configure, or update automated AI code reviews, issue triaging, or Gemini model workflows for their GitHub repository.
review-deep
Review change vs spec, plan, code quality heuristics, and repo rules; append remediation phase if needed.
review-remote
Review open PR/MR and publish findings.
apply-review-feedback
Classify and apply accepted PR/MR review feedback.
azure-devops-automation
CI/CD pipelines, infrastructure as code, and deployment automation for Azure workloads.
architecture-audit
Comprehensive project consistency review across code, documentation, diagrams, and configuration.