Skip to main content

Infrastructure asset graph — the Joern for cloud. Discovers, maps, and graphs CSP resources.

Project description

Bona

PyPI version License: MIT

Infrastructure asset graph — the Joern for cloud.

Discovers, maps, and graphs CSP resources via AWS Config. Produces nodes + edges that feed into Neptune for compliance analysis, impact assessment, and risk scoring.

Standalone package. No dependency on graphrag-toolkit.

Installation

pip install bona

Dependencies

Bona has minimal dependencies:

  • boto3>=1.35.0 — AWS SDK for resource discovery
  • pydantic>=2.0 — Data validation and schema models

Bona is a standalone package. It does not depend on graphrag-document-graph, graphrag-codeproperty-graph, or graphrag-toolkit-lexical-graph.

Quick Start

# Discover all resources in an account
bona discover --account 123456789012 --region us-east-1

# Enumerate AWS services (for recipe generation)
bona services

# Check compliance state
bona compliance --account 123456789012

Python API

from bona import AWSProvider, DiscoveryPipeline

provider = AWSProvider(account_id="123456789012", region="us-east-1")
result = provider.discover()

print(result.summary())
# → Discovered 142 resources, 287 relationships, 3 findings in 4521ms

for resource in result.resources:
    print(f"{resource.resource_type}: {resource.name}")

for edge in result.relationships:
    print(f"{edge.source_id} --{edge.edge_type}--> {edge.target_id}")

Architecture

AWS Config (already running) → Bona reads → normalizes → outputs graph schema
                                                              ↓
                                                    Neptune (via AI-LENS)

Bona is thin. AWS Config does the heavy lifting. Bona just transforms the output into a graph schema compatible with the GraphRAG Toolkit ecosystem.

Package Structure

bona/
  ├── providers/        AWS, Azure, GCP, Application adapters
  │   └── aws/          AWS Config + Resource Explorer + Inspector
  ├── pipeline/         discover → transform → load → enrich
  ├── schema/           AssetNode, AssetEdge, DiscoveryResult
  ├── query/            graph traversal, compliance, impact analysis
  └── cli.py            standalone CLI tool

Dependency Chain

bona (standalone)
├── boto3>=1.35.0
└── pydantic>=2.0

Bona is independent. It produces graph-compatible output but does not import or require any graphrag packages.

Contributing

See CONTRIBUTING.md for development setup, testing, and PR guidelines.

License

MIT — see LICENSE for details.

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

bona-0.1.1.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

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

bona-0.1.1-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: bona-0.1.1.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bona-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2f8b455d4a70acfd3109dade160f7730f9df800587d3351d63064d2d2d75262d
MD5 bb62c751d91634522f829328f5f39e04
BLAKE2b-256 70248a46baf11c0049aea57901a3dbd7eadd5860cc0c2b7dfe02124b8122de41

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bona-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bona-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 681fd12ce619379cc709386b1d6307719faf5b0d48f0e5a7b128c0a78da7bcb1
MD5 2969d4f7a60aa1b5c8aadfd8efe8e749
BLAKE2b-256 384acdeeab2ffb064ea2e642d108d5224d4927c0cc769f880a676ffbda9df98c

See more details on using hashes here.

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