Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Compliance Audit

ASecurity

Audits codebases against compliance frameworks (SOC2, HIPAA, PCI-DSS, GDPR, ISO27001, etc.) using parallel agents per subdirectory/sub-repo. Produces a detailed markdown report with line-level code references. Use when you need to check a directory or monorepo for compliance violations before an audit or review.

4 stars
0 votes
0 copies
0 views
Added 9/19/2026
ai-agentspythonrustgobashnodedockergitbackendsecurity

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add mostafa-drz/claude-skills --skill compliance-audit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Compliance Audit?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Compliance Audit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mostafa-drz-compliance-audit/badge)](https://www.skillsdirectory.com/skills/mostafa-drz-compliance-audit)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: compliance-audit
description: >-
  Audits codebases against compliance frameworks (SOC2, HIPAA, PCI-DSS, GDPR, ISO27001, etc.)
  using parallel agents per subdirectory/sub-repo. Produces a detailed markdown report with
  line-level code references. Use when you need to check a directory or monorepo for compliance
  violations before an audit or review.
argument-hint: <standard> [--output <path>] [--dir <path>] [--severity <level>] [extra context...]
disable-model-invocation: true
context: fork
allowed-tools:
  - Read
  - Glob
  - Grep
  - Bash
  - Write
  - Edit
  - WebSearch
  - WebFetch
  - AskUserQuestion
  - Task
metadata:
  trigger: "Use when you need to check a directory or monorepo for compliance violations before an audit or review."
---

# Compliance Audit

Scan a codebase directory (single repo, multi-repo, or monorepo) against a compliance framework. Each subdirectory gets a parallel audit agent. Output is a structured markdown report where **every finding references specific code lines**.

## Preferences

_On startup, use Read to load `~/.claude/skills/compliance-audit/preferences.md`. If it does not exist, treat as "no preferences set"._

## Context

_On startup, use Bash to detect:_
1. _Current working directory_
2. _Whether the target directory is a git repo (and its remote URL for code references)_
3. _Directory structure: list top-level subdirectories, identify monorepo packages or multi-repo layout_
4. _Tech stacks present: look for package.json, requirements.txt, Cargo.toml, go.mod, Dockerfile, .env files, etc._

_Skip any detection that fails._

## Command routing

Check `$ARGUMENTS`:

- **`help`** → display help then stop
- **`config`** → interactive setup then stop
- **`reset`** → delete `~/.claude/skills/compliance-audit/preferences.md`, confirm, stop
- **anything else** → parse arguments and run the audit

### Help

```
Compliance Audit — Scan codebases against compliance frameworks

Usage:
  /compliance-audit <standard>                          Audit current directory
  /compliance-audit <standard> --dir <path>             Audit a specific directory
  /compliance-audit <standard> --output <path>          Write report to specific path
  /compliance-audit <standard> --severity <level>       Filter by minimum severity
  /compliance-audit config                              Set preferences
  /compliance-audit reset                               Clear preferences
  /compliance-audit help                                This help

Standards:
  SOC2, HIPAA, PCI-DSS, GDPR, ISO27001, NIST-CSF, OWASP, CIS, FedRAMP
  (or any compliance framework — latest requirements fetched from web)

Severity levels:
  critical, high, medium, low (default: low — shows everything)

Examples:
  /compliance-audit SOC2
  /compliance-audit HIPAA --dir ./backend --output ./reports
  /compliance-audit PCI-DSS --severity high "focus on payment processing modules"
  /compliance-audit GDPR "check data retention and consent flows"

Current preferences:
  (read from ~/.claude/skills/compliance-audit/preferences.md)
```

### Config

Use `AskUserQuestion` to collect:

- **Q1: Default output directory** — current directory, `./reports/`, or custom path
- **Q2: Default severity threshold** — low (show all), medium, high, critical
- **Q3: Report format extras** — include remediation suggestions? include compliance score? include executive summary?

Save to `~/.claude/skills/compliance-audit/preferences.md`.

### Reset

Delete `~/.claude/skills/compliance-audit/preferences.md` and confirm: "Preferences cleared. Using defaults."

## First-time detection

If no preferences file exists, show:

> First time using /compliance-audit? Run `/compliance-audit config` to set defaults, or just continue with sensible defaults.

Then proceed normally.

## Workflow

### Step 1: Parse inputs

Extract from `$ARGUMENTS`:
- **`<standard>`** — required. The compliance framework name (e.g., SOC2, HIPAA, PCI-DSS, GDPR)
- **`--output <path>`** — optional. Directory to write the report. Default: current directory
- **`--dir <path>`** — optional. Target directory to audit. Default: current directory
- **`--severity <level>`** — optional. Minimum severity: critical, high, medium, low. Default: low
- **Extra text** — any remaining text is treated as additional context/focus areas for the audit

If `<standard>` is missing, use `AskUserQuestion` to ask which framework to audit against.

### Step 2: Detect directory structure

1. Use Bash to check if the target directory is a git repo. If yes, capture the remote URL (for code line references).
2. Use Glob to list top-level contents and identify the layout:
   - **Single repo** — one project root with src/, lib/, app/, etc.
   - **Monorepo** — packages/, apps/, services/, or workspace config (pnpm-workspace.yaml, lerna.json, nx.json, Cargo workspace)
   - **Multi-repo** — multiple subdirectories each with their own .git
3. For each identified unit (repo, package, service), detect its tech stack by looking for:
   - `package.json` (Node/JS/TS), `requirements.txt`/`pyproject.toml` (Python), `Cargo.toml` (Rust), `go.mod` (Go), `Dockerfile`, `docker-compose.yml`, `.env`/`.env.example`, CI configs
4. Build a map: `{ directory: string, stack: string[], hasGit: boolean, remoteUrl?: string }`

### Step 3: Fetch compliance requirements

Use WebSearch and WebFetch to retrieve the **latest version** of the specified compliance framework's technical controls:

- Search for: `"{standard} latest version technical controls checklist {year}"`
- Focus on official sources (e.g., AICPA for SOC2, HHS for HIPAA, PCI SSC for PCI-DSS)
- Extract the relevant technical/code-level controls (not organizational/process controls unless code-related)
- Build a checklist of controls to verify, organized by category (e.g., Access Control, Encryption, Logging, Data Handling)

If the standard is not recognized or no good source is found, use `AskUserQuestion` to clarify.

### Step 4: Parallel audit

For each directory unit identified in Step 2, launch a **Task agent** (subagent_type: "general-purpose") in parallel. Each agent receives:

- The directory path to scan
- The compliance checklist from Step 3
- The tech stack detected for that directory
- The remote URL (if available) for building code references
- Any extra context from the user's prompt

**Each agent MUST:**
1. Scan all source files in its assigned directory using Read, Glob, and Grep
2. For each compliance control, check whether the codebase satisfies or violates it
3. For every finding (pass or fail), record:
   - **Control ID** — the compliance control being checked
   - **Status** — Pass / Fail / Warning / Not Applicable
   - **Severity** — Critical / High / Medium / Low / Info
   - **Description** — what was found or missing
   - **Code reference** — MANDATORY. Format:
     - For git repos with remote: `[file:line](https://remote-url/blob/branch/file#Lline)`
     - For non-git directories: `file:line`
   - **Recommendation** — how to fix (for failures/warnings)
4. Return structured findings as a list

**CRITICAL: No finding without a code reference.** If a control cannot be mapped to a specific code location (e.g., "no encryption library found"), reference the most relevant file (e.g., package.json for missing dependencies, or the entry point file).

### Step 5: Aggregate findings

1. Collect results from all parallel agents
2. Deduplicate findings that appear across multiple directories (e.g., same dependency vulnerability)
3. Categorize by severity: Critical → High → Medium → Low → Info
4. Calculate summary stats:
   - Total controls checked
   - Pass / Fail / Warning / N/A counts
   - Compliance score: `(pass / (pass + fail + warning)) * 100`
5. Apply `--severity` filter if specified

### Step 6: Generate report

Write a markdown report with this structure:

```markdown
# Compliance Audit Report: {STANDARD}

**Date:** {date}
**Target:** {directory path}
**Standard:** {standard} ({version if known})
**Overall Score:** {score}% ({pass}/{total} controls passed)

## Executive Summary

{2-3 sentences summarizing the compliance posture, top risks, and priority actions}

## Summary

| Severity | Count |
|----------|-------|
| Critical | {n}   |
| High     | {n}   |
| Medium   | {n}   |
| Low      | {n}   |
| Info     | {n}   |
| Passed   | {n}   |

## Critical & High Findings

### {Control ID}: {Control Name}
- **Severity:** Critical/High
- **Status:** Fail
- **Directory:** {subdirectory}
- **Finding:** {description}
- **Evidence:** [{file}:{line}]({remote-url}) or `{file}:{line}`
- **Recommendation:** {how to fix}

{repeat for each critical/high finding}

## Medium & Low Findings

{same format, grouped}

## Passed Controls

{brief list of controls that passed, with code references showing compliance}

## Per-Directory Breakdown

### {subdirectory-name}
- **Stack:** {detected tech stack}
- **Controls checked:** {n}
- **Score:** {score}%
- **Key findings:** {top 3 bullet points}

{repeat for each directory}

## Recommendations

1. {Priority-ordered action items}
2. ...

## Methodology

- Standard: {standard} {version}
- Source: {URL where requirements were fetched}
- Scanned: {list of directories}
- Date: {date}
```

### Step 7: Write output

1. Determine output path:
   - If `--output` specified: write to `{output}/compliance-audit-{standard}-{date}.md`
   - Otherwise: write to `./compliance-audit-{standard}-{date}.md`
2. Use Write to save the report
3. Confirm: "Report written to `{path}`"

### Step 8: Summary and next actions

Present a brief summary in the conversation:

```
Audit complete: {standard} compliance check on {directory}
Score: {score}% — {critical} critical, {high} high, {medium} medium, {low} low findings
Report: {output path}
```

Use `AskUserQuestion` to offer:
- **Review critical findings** — walk through the critical issues one by one
- **Start fixing** — begin addressing findings in priority order
- **Re-audit** — run again after fixes
- **Done** — finish

## Supported Standards Reference

The skill should handle at minimum these frameworks (fetch latest from web):
- **SOC2** — Trust Services Criteria (Security, Availability, Processing Integrity, Confidentiality, Privacy)
- **HIPAA** — Technical Safeguards (Access Control, Audit Controls, Integrity, Transmission Security)
- **PCI-DSS** — Payment Card Industry Data Security Standard (all 12 requirements)
- **GDPR** — General Data Protection Regulation (technical measures)
- **ISO 27001** — Information Security Management (Annex A controls)
- **NIST CSF** — Cybersecurity Framework (Identify, Protect, Detect, Respond, Recover)
- **OWASP Top 10** — Web application security risks
- **CIS Benchmarks** — Center for Internet Security hardening guides
- **FedRAMP** — Federal Risk and Authorization Management Program

For any standard not listed, search the web for its latest technical controls.

## Principles

1. **Evidence-based only** — every finding MUST reference specific code lines with URLs (for git repos) or file:line (for non-repos). No vague findings.
2. **Latest standards always** — always fetch the current version of compliance requirements from the internet. Never rely on cached/outdated knowledge.
3. **Non-destructive** — the skill only reads code and writes a report. It never modifies source code unless the user explicitly asks to start fixing.
4. **Parallel for speed** — use Task agents in parallel for each subdirectory. Never audit sequentially when parallel is possible.
5. **Graceful degradation** — if a subdirectory can't be scanned (binary files, empty, access denied), note it in the report and continue with others.

Attribution

mostafa-drzmostafa-drz
View sourceMore from mostafa-drz →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.

1023331 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

686011 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3331 votes

catchup

Recovers prior coding-agent session context by running `catchup <agent> --since-compact`, which extracts a clean summary of a previous Codex, Claude Code, Antigravity, OpenCode, or Pi Agent session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", or asks to recover/summarize a previous session before continuing. Do NOT use for the current conversation, git history, or any non-agent log.

611 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →