Prowler is the world’s most widely used open-source cloud security platform that automates security and compliance across any cloud environment.
npx skills add https://github.com/prowler-cloud/prowler --skill prowler-sdk-checkقم بتثبيت هذه المهارة باستخدام واجهة سطر الأوامر (CLI) وابدأ في استخدام سير عمل SKILL.md في مساحة عملك.
Prowler is the Open Cloud Security Platform trusted by thousands to automate security and compliance in any cloud environment. With hundreds of ready-to-use checks and compliance frameworks, Prowler delivers real-time, customizable monitoring and seamless integrations, making cloud security simple, scalable, and cost-effective for organizations of any size.
Secure ANY cloud at AI Speed at prowler.com
Prowler is the world’s most widely used Open-Source Cloud Security Platform that automates security and compliance across any cloud environment. With hundreds of ready-to-use security checks, remediation guidance, and compliance frameworks, Prowler is built to “Secure ANY Cloud at AI Speed”. Prowler delivers AI-driven, customizable, and easy-to-use assessments, dashboards, reports, and integrations, making cloud security simple, scalable, and cost-effective for organizations of any size.
Prowler includes hundreds of built-in controls to ensure compliance with standards and frameworks, including:
Prowler App / Prowler Cloud is a web-based application that simplifies running Prowler across your cloud provider accounts. It provides a user-friendly interface to visualize the results and streamline your security assessments.



For more details, refer to the Prowler App Documentation
prowler <provider>

prowler dashboard

Attack Paths automatically extends every completed AWS scan with a Neo4j graph that combines Cartography's cloud inventory with Prowler findings. The feature runs in the API worker after each scan and therefore requires:
An accessible Neo4j instance (the Docker Compose files already ships a neo4j service).
The following environment variables so Django and Celery can connect:
| Variable | Description | Default |
|---|---|---|
NEO4J_HOST |
Hostname used by the API containers. | neo4j |
NEO4J_PORT |
Bolt port exposed by Neo4j. | 7687 |
NEO4J_USER / NEO4J_PASSWORD |
Credentials with rights to create per-tenant databases. | neo4j / neo4j_password |
Every AWS provider scan will enqueue an Attack Paths ingestion job automatically. Other cloud providers will be added in future iterations.
[!Tip]
For the most accurate and up-to-date information about checks, services, frameworks, and categories, visit Prowler Hub.
| Provider | Checks | Services | Compliance Frameworks | Categories | Support | Interface |
|---|---|---|---|---|---|---|
| AWS | 572 | 83 | 41 | 17 | Official | UI, API, CLI |
| Azure | 165 | 20 | 18 | 13 | Official | UI, API, CLI |
| GCP | 100 | 13 | 15 | 11 | Official | UI, API, CLI |
| Kubernetes | 83 | 7 | 7 | 9 | Official | UI, API, CLI |
| GitHub | 21 | 2 | 1 | 2 | Official | UI, API, CLI |
| M365 | 89 | 9 | 4 | 5 | Official | UI, API, CLI |
| OCI | 48 | 13 | 3 | 10 | Official | UI, API, CLI |
| Alibaba Cloud | 61 | 9 | 3 | 9 | Official | UI, API, CLI |
| Cloudflare | 29 | 2 | 0 | 5 | Official | UI, API, CLI |
| IaC | See trivy docs. |
N/A | N/A | N/A | Official | UI, API, CLI |
| MongoDB Atlas | 10 | 3 | 0 | 8 | Official | UI, API, CLI |
| LLM | See promptfoo docs. |
N/A | N/A | N/A | Official | CLI |
| Image | N/A | N/A | N/A | N/A | Official | CLI, API |
| Google Workspace | 1 | 1 | 0 | 1 | Official | CLI |
| OpenStack | 27 | 4 | 0 | 8 | Official | UI, API, CLI |
| Vercel | 30 | 6 | 0 | 5 | Official | CLI |
| NHN | 6 | 2 | 1 | 0 | Unofficial | CLI |
[!Note]
The numbers in the table are updated periodically.
[!Note]
Use the following commands to list Prowler's available checks, services, compliance frameworks, and categories:
prowler <provider> --list-checksprowler <provider> --list-servicesprowler <provider> --list-complianceprowler <provider> --list-categories
Prowler App offers flexible installation methods tailored to various environments:
For detailed instructions on using Prowler App, refer to the Prowler App Usage Guide.
Requirements
Docker Compose installed: https://docs.docker.com/compose/install/.Commands
VERSION=$(curl -s https://api.github.com/repos/prowler-cloud/prowler/releases/latest | jq -r .tag_name)
curl -sLO "https://raw.githubusercontent.com/prowler-cloud/prowler/refs/tags/${VERSION}/docker-compose.yml"
# Environment variables can be customized in the .env file. Using default values in production environments is not recommended.
curl -sLO "https://raw.githubusercontent.com/prowler-cloud/prowler/refs/tags/${VERSION}/.env"
docker compose up -d
[!WARNING]
🔒 For a secure setup, the API auto-generates a unique key pair,DJANGO_TOKEN_SIGNING_KEYandDJANGO_TOKEN_VERIFYING_KEY, and stores it in~/.config/prowler-api(non-container) or the bound Docker volume in_data/api(container). Never commit or reuse static/default keys. To rotate keys, delete the stored key files and restart the API.
Once configured, access the Prowler App at http://localhost:3000. Sign up using your email and password to get started.
[!Note]
If you want to use AWS role assumption (e.g., with the "Connect assuming IAM Role" option), you may need to mount your local.awsdirectory into the container as a volume (e.g.,- "${HOME}/.aws:/home/prowler/.aws:ro"). There are several ways to configure credentials for Docker containers. See the Troubleshooting section for more details and examples.
You can find more information in the Troubleshooting section.
Requirements
git installed.poetry v2 installed: poetry installation.pnpm installed: pnpm installation.Docker Compose installed: https://docs.docker.com/compose/install/.Commands to run the API
git clone https://github.com/prowler-cloud/prowler
cd prowler/api
poetry install
eval $(poetry env activate)
set -a
source .env
docker compose up postgres valkey -d
cd src/backend
python manage.py migrate --database admin
gunicorn -c config/guniconf.py config.wsgi:application
[!IMPORTANT]
As of Poetry v2.0.0, thepoetry shellcommand has been deprecated. Usepoetry env activateinstead for environment activation.If your Poetry version is below v2.0.0, continue using
poetry shellto activate your environment.
For further guidance, refer to the Poetry Environment Activation Guide https://python-poetry.org/docs/managing-environments/#activating-the-environment.
After completing the setup, access the API documentation at http://localhost:8080/api/v1/docs.
Commands to run the API Worker
git clone https://github.com/prowler-cloud/prowler
cd prowler/api
poetry install
eval $(poetry env activate)
set -a
source .env
cd src/backend
python -m celery -A config.celery worker -l info -E
Commands to run the API Scheduler
git clone https://github.com/prowler-cloud/prowler
cd prowler/api
poetry install
eval $(poetry env activate)
set -a
source .env
cd src/backend
python -m celery -A config.celery beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler
Commands to run the UI
git clone https://github.com/prowler-cloud/prowler
cd prowler/ui
pnpm install
pnpm run build
pnpm start
Once configured, access the Prowler App at http://localhost:3000. Sign up using your email and password to get started.
Pre-commit Hooks Setup
Some pre-commit hooks require tools installed on your system:
Install TruffleHog (secret scanning) — see the official installation options.
Install Hadolint (Dockerfile linting) — see the official installation options.
Prowler CLI is available as a project in PyPI. Consequently, it can be installed using pip with Python >=3.10, <3.13:
pip install prowler
prowler -v
For further guidance, refer to https://docs.prowler.com
Available Versions of Prowler CLI
The following versions of Prowler CLI are available, depending on your requirements:
latest: Synchronizes with the master branch. Note that this version is not stable.v4-latest: Synchronizes with the v4 branch. Note that this version is not stable.v3-latest: Synchronizes with the v3 branch. Note that this version is not stable.<x.y.z> (release): Stable releases corresponding to specific versions. You can find the complete list of releases here.stable: Always points to the latest release.v4-stable: Always points to the latest release for v4.v3-stable: Always points to the latest release for v3.The container images are available here:
Python >=3.10, <3.13 is required with pip and Poetry:
git clone https://github.com/prowler-cloud/prowler
cd prowler
eval $(poetry env activate)
poetry install
python prowler-cli.py -v
[!IMPORTANT]
To clone Prowler on Windows, configure Git to support long file paths by running the following command:git config core.longpaths true.
[!IMPORTANT]
As of Poetry v2.0.0, thepoetry shellcommand has been deprecated. Usepoetry env activateinstead for environment activation.If your Poetry version is below v2.0.0, continue using
poetry shellto activate your environment.
For further guidance, refer to the Poetry Environment Activation Guide https://python-poetry.org/docs/managing-environments/#activating-the-environment.
Prowler App is composed of four key components:

Running Prowler
Prowler can be executed across various environments, offering flexibility to meet your needs. It can be run from:
Your own workstation
A Kubernetes Job
Google Compute Engine
Azure Virtual Machines (VMs)
Amazon EC2 instances
AWS Fargate or other container platforms
CloudShell
And many more environments.

Prowler includes a comprehensive set of AI Skills that help AI coding assistants understand Prowler's codebase patterns and conventions.
Skills are structured instructions that give AI assistants the context they need to write code that follows Prowler's standards. They include:
| Category | Skills |
|---|---|
| Generic | typescript, react-19, nextjs-15, tailwind-4, playwright, pytest, django-drf, zod-4, zustand-5, ai-sdk-5 |
| Prowler | prowler, prowler-api, prowler-ui, prowler-mcp, prowler-sdk-check, prowler-test-ui, prowler-test-api, prowler-test-sdk, prowler-compliance, prowler-provider, prowler-pr, prowler-docs |
./skills/setup.sh
This configures skills for AI coding assistants that follow the agentskills.io standard:
| Tool | Configuration |
|---|---|
| Claude Code | .claude/skills/ (symlink) |
| OpenCode | .claude/skills/ (symlink) |
| Codex (OpenAI) | .codex/skills/ (symlink) |
| GitHub Copilot | .github/skills/ (symlink) |
| Gemini CLI | .gemini/skills/ (symlink) |
Note: Restart your AI coding assistant after running setup to load the skills.
Gemini CLI requiresexperimental.skillsenabled in settings.
For installation instructions, usage details, tutorials, and the Developer Guide, visit https://docs.prowler.com/
Prowler is licensed under the Apache License 2.0.
A copy of the License is available at http://www.apache.org/licenses/LICENSE-2.0