Skip to main content

Local-first, read-only AWS audit CLI. Generate a VP/CFO-ready AWS audit report in minutes.

Project description

Kulshan

Generate a VP/CFO-ready AWS audit report in minutes.

Local-first. Read-only. No CUR. No Athena. No SaaS.

pip install kulshan
aws sso login
kulshan report

What is Kulshan?

Kulshan is a local-first AWS audit tool that generates a business-ready report from your AWS account.

Think of it as a blood test for your AWS bill.

One command. Ten audit packs. HTML and JSON output. No data leaves your machine.

Install

pip install kulshan        # macOS, Linux, Windows

Requires Python 3.9+. Works with the AWS credentials you already use.

Quick Start

pip install kulshan
aws sso login
kulshan report

Generates HTML and JSON reports locally using your existing AWS credentials.

What You Get

The default kulshan report runs the Cost Explorer baseline:

  • Cost analysis: multi-method anomaly detection (z-score, IQR, MAD), cross-referenced against AWS Cost Anomaly Detection
  • Commitment health: RI/SP coverage, utilization, on-demand exposure
  • Spend concentration: which services dominate, diversification assessment
  • Spend trend: daily average, direction, acceleration
  • Addressable savings: what can be optimized and how much
  • Executive summary: one paragraph for stakeholders

Additional Packs (Opt-In)

  • Security posture: 50+ checks across IAM, encryption, network exposure, logging, public access
  • Waste detection: orphaned EBS volumes, idle ALBs, unused EIPs, NAT gateway waste
  • DR readiness: backup coverage, multi-AZ deployment, single points of failure
  • Lifecycle audit: EOL runtimes, expiring certificates, staleness tax
  • IaC drift: CloudFormation drift detection, IaC coverage gaps
  • Tag compliance: tag governance, unattributed spend, dark money
  • Observability: alarm coverage, logging gaps, blind-spot heatmap
  • Quota headroom: service limits, scaling event planner
  • Network topology: VPC mapping, CIDR overlaps, route integrity

Output formats: terminal, JSON, HTML, SARIF, CSV.

More Commands

kulshan doctor                          # Verify credentials and permissions
kulshan report --quick                  # Fast scan (3 regions, ~60s)
kulshan report -o report.html           # Save as HTML
kulshan report --packs security,sweep   # Run specific packs
kulshan report --packs all              # Full 10-pack diagnostic
kulshan shell                           # Interactive REPL

Trust & Security

  • Read-only: 147 explicit audit actions, zero write actions
  • Local-first: reports stay on your machine, no uploads
  • No telemetry: no phone-home, no tracking
  • Published IAM policy: inspect every action before granting access
  • Open source: Apache 2.0, read every line on GitHub

AWS API Costs

Mode AWS Cost
Default (Cost Explorer baseline) ~$0.20 (CE @ $0.01/request)
Security, sweep, DR, tag, etc. $0 (free-tier APIs)
kulshan report --packs all ~$0.20 (only cost pack charges)

This is charged by AWS to your account, not by Kulshan.

About the Name

Kulshan is the Lummi name for the mountain known colonially as Mt. Baker, meaning "great white watcher." We acknowledge the Lummi and Nooksack peoples as the original namers of this mountain.

Built by

Mission FinOps | Mission, BC, Canada.

AI Agents

Kulshan works with Claude Code, Codex, Kiro, Cursor, and any agent that can run shell commands. See agents/ for integration docs.

License

Apache 2.0. Free and open source forever.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kulshan-0.1.1.tar.gz (219.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kulshan-0.1.1-py3-none-any.whl (287.3 kB view details)

Uploaded Python 3

File details

Details for the file kulshan-0.1.1.tar.gz.

File metadata

  • Download URL: kulshan-0.1.1.tar.gz
  • Upload date:
  • Size: 219.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for kulshan-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a12f2455f05bd44ddf1aecdda5adbbdda6c1632f8f489ec07955115339e8aa01
MD5 949efdf77abafab8574eb512bbd8aeb5
BLAKE2b-256 7dd6b31ec333487b2d0def7ac80816257bb63df49a97d15db3e75fbc448f0c11

See more details on using hashes here.

Provenance

The following attestation bundles were made for kulshan-0.1.1.tar.gz:

Publisher: publish.yml on azz-kikkr/kulshan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kulshan-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: kulshan-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 287.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for kulshan-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 103583648473858127333afb2c7a0c5836045050e880abe6d5da829a029c1b80
MD5 b19f46f560c80d19d76086cbbac54b51
BLAKE2b-256 a7bbb52e7ecb7932084878ee307eef18d73840a2b5e997c276651536ffc163f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for kulshan-0.1.1-py3-none-any.whl:

Publisher: publish.yml on azz-kikkr/kulshan

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page