This release is a pre-release and may not be stable for production use.
Build BloodHound data collectors with OpenHound's standardized, reproducible collect-first and transform-later pipeline.
About
OpenHound is a standardized framework for building OpenGraph collectors and converters. Built on DLT (Data Load Tool), it provides a consistent workflow for collecting, processing, and converting data from any source into BloodHound-compatible graphs. OpenHound enforces a collect-first, convert-later pipeline. Raw data collected from a source is always stored before transformation and ensures reproducibility. Custom decorators simplify collector development with minimal boilerplate, while CLI commands and graph documentation are automatically generated for every source.
Getting Started
Follow the docs for setup, CLI usage, and collector development:
- Overview: OpenHound Documentation
How it works
-
Collect: OpenHound uses DLT to collect resources from various services. Resources are parsed using a Pydantic model and stored as JSONL/Parquet on disk during the collection phase.
-
Pre-process: A DuckDB database can be (optionally) populated to store resources for OpenGraph convertion. The database can be used as a lookup to find, for example, all resources a particular user/group has permissions to.
-
Convert: The raw resources are read from disk and converted to OpenGraph nodes and edges.
Available extensions
Extend OpenHound with pre-built extensions for other services. Additional collectors can be installed using pip extras.
| Name | Source repo |
|---|---|
| Github | https://github.com/SpecterOps/openhound-github |
| JAMF | https://github.com/SpecterOps/openhound-jamf |
| Okta | https://github.com/SpecterOps/openhound-okta |
Metadata
Release files for openhound 0.4.0rc2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openhound-0.4.0rc2.tar.gz | 3.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openhound-0.4.0rc2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.7 MB
Release files / openhound-0.4.0rc2.tar.gz
| Download URL | openhound-0.4.0rc2.tar.gz |
|---|---|
| Size | 3.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d2cfe5f6a15f7ef59b23c9af430cf5d09ff5782a9926eded13dd283279e9b67
|
|
BLAKE2b-256 checksum How to use checksums |
4dda65ea29822d816a6a8896e2c6c6d325ad6ba738f67cf81bf7ac1f1031d02d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / openhound-0.4.0rc2-py3-none-any.whl
| Download URL | openhound-0.4.0rc2-py3-none-any.whl |
|---|---|
| Size | 74.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2afdab3ef2ba4922afc5b25cc70a49af51c92e55859edab6a94e9fd48653be88
|
|
BLAKE2b-256 checksum How to use checksums |
d47f3f251432e6b79700ea549f7bfd08beeef7803ec6c970175abbd9426df587
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|