scan_directory_with_ash
Scan a project directory with ASH to run multiple security scanners and aggregate results, identifying vulnerabilities, secrets, and misconfigurations.
Instructions
Scan an entire project directory with ASH for comprehensive security analysis.
This tool scans all files in a directory using ASH (Automated Security Helper), which runs multiple security scanners including Bandit, Checkov, cfn-nag, cdk-nag, detect-secrets, grype, and more.
Unlike scan_with_ash which scans code snippets, this tool scans the actual project directory for comprehensive security analysis.
Note: Semgrep is excluded from ASH scans. Use scan_directory_with_semgrep instead.
Supported file types:
Python (.py): Scanned with Bandit, detect-secrets
JavaScript/TypeScript (.js, .ts): Scanned with npm-audit
Terraform (.tf): Scanned with Checkov
CloudFormation (.yaml, .yml, .json): Scanned with Checkov, cfn-nag, cdk-nag
Dockerfile: Scanned with Checkov
And many more formats supported by the underlying scanners
Args: directory_path: Path to the directory to scan (relative or absolute) severity_threshold: Minimum severity level to report (LOW, MEDIUM, HIGH, CRITICAL)
Returns: A dictionary with aggregated scan results from multiple scanners
Note: ASH must be installed and available. Install with: - uvx: uvx git+https://github.com/awslabs/automated-security-helper.git@v3.2.1 - pip: pip install git+https://github.com/awslabs/automated-security-helper.git@v3.2.1
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| return_output | No | Return full output instead of saving to file (default: False) | |
| directory_path | Yes | Path to the directory to scan | |
| severity_threshold | No | Minimum severity threshold (LOW, MEDIUM, HIGH, CRITICAL) | MEDIUM |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |