prowler-provider_skill

This skill helps you extend Prowler by adding new providers or services, following the provider architecture pattern and templates.
  • Python

12.8k

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill prowler-cloud/prowler --skill prowler-provider

  • SKILL.md4.1 KB

Overview

This skill creates new Prowler cloud providers or adds services to existing providers following the project's provider architecture. It provides templates, class patterns, and command examples so you can extend Prowler reliably and consistently. The goal is to make provider and service integration predictable, testable, and aligned with existing providers.

How this skill works

The skill supplies a canonical provider folder layout and Python class templates for Provider, Service, and Service Client singletons. It enforces a pattern where a Provider handles session/region setup, Services fetch resources via a client, and checks live under service-specific subfolders. CLI commands are included to run, list services, and debug newly-added providers and services.

When to use it

  • When adding a new cloud or platform provider to Prowler
  • When adding a new service (resource type) under an existing provider
  • When implementing provider-specific authentication and region handling
  • When creating resource fetchers and singleton clients for service APIs
  • When validating provider structure and running checks locally

Best practices

  • Follow the prescribed folder and file structure exactly to keep behavior consistent
  • Implement _setup_session and _get_regions in the Provider class for credential and region discovery
  • Keep service fetchers resilient: catch exceptions, log errors, and return partial results when possible
  • Use the provided service and client templates to create singleton instances and resource models
  • Add metadata.json for each check and place checks under the service/{check_name} directory

Example use cases

  • Create a new Provider directory for a bespoke cloud platform and implement credential handling
  • Add a database service to an existing cloud provider with a service client and resource fetcher
  • Build a new check that uses service resources collected by the service class
  • Run provider-specific checks with --list-services and --list-checks to verify integration
  • Debug provider initialization using the --log-level DEBUG command to trace session setup

FAQ

Implement _setup_session for authentication and _get_regions to return available regions; inherit from the common Provider base.

How should services fetch resources?

Create a Service class that initializes a service client singleton, populate resource lists in a _fetch_* method, and handle exceptions with logging.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
prowler-provider skill by prowler-cloud/prowler | VeilStrat