with one click
security-audit
Run a security audit".
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Run a security audit".
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | security-audit |
| description | Run a security audit". |
Run security scanners on a project, aggregate findings into a structured report with severity-based prioritization.
Available scanners are defined in the references/ folder. Each reference file describes a scanner, how to verify/install it, how to run it, and how to interpret its output.
<skill-path>/references/ to identify available scannersAccess the references/scan.md file and read its contents to identify the scanners to perform.
Look for an existing baseline file in the project:
security-baseline.md in the project root and common locations (e.g. .github/, docs/, .security/)AskUserQuestion tool to ask the user where they want the baseline file to be stored (suggest reasonable defaults like <project-root>/security-baseline.md or <project-root>/.github/security-baseline.md)The baseline file follows the format defined in <skill-path>/assets/baseline-template.md.
For each scanner discovered in Step 1, launch a separate subagent (using the Task tool) that:
All scanner subagents must run in parallel to minimize total scan time.
Use /tmp/security-audit as the output directory for all scanners.
Once all subagents complete, use the parse scripts to extract structured findings from each scanner's JSON output:
bash <skill-path>/scripts/parse_trivy.sh /tmp/security-audit/trivy.json
bash <skill-path>/scripts/parse_semgrep.sh /tmp/security-audit/semgrep.json
bash <skill-path>/scripts/parse_django_access_inspector.sh /tmp/security-audit/django-access-inspector.json
These scripts require jq and output a summary section followed by CRITICAL/HIGH findings as JSON lines. See each scanner's reference file for output format details.
Also check any *_stderr.log files if results look incomplete.
Compare scan results against the baseline loaded in Step 2:
Use the template in <skill-path>/assets/reporting-template.md as the base structure for the report.
AskUserQuestion tool to propose the user fixes for the critical/high findings, and ask if they want proposals for all findings or just the critical/high onesAfter the report is presented:
AskUserQuestion tool to ask the user which new findings (if any) they want to add to the baseline as accepted/ignored. For each finding they choose to baseline, ask for a justification reason.<skill-path>/assets/baseline-template.md.The baseline file must always include for each ignored finding: