OSSGuard — Python Implementation
The reference Python implementation of OSSGuard.
For full documentation, all install methods, and command examples, see the main ossguard repo.
Install
pip install ossguard
# Or with pipx (isolated install)
pipx install ossguard
Quick Start
ossguard scan . # Quick security posture check
ossguard audit . # Full security audit
ossguard init . # Bootstrap all OpenSSF configs
ossguard baseline . # OSPS Baseline compliance
Features
This is the reference implementation with the richest UI (Rich tables, colored panels, interactive prompts).
- 27 commands covering the full OpenSSF security lifecycle
- Rich terminal UI with tables, panels, and progress indicators
- Auto-detection of languages, package managers, and frameworks
- Python 3.9+ with dependencies: typer, rich, pyyaml, jinja2, questionary, httpx
For the complete command reference and real-world output examples, see the main ossguard README.
Other Implementations
| Implementation | Install | Best for |
|---|---|---|
| ossguard-go | brew install kirankotari/tap/ossguard |
CI pipelines, single binary |
| ossguard-npm | npx ossguard |
Node.js projects |
Development
# Clone and install
git clone https://github.com/kirankotari/ossguard-python.git
cd ossguard-python
pip install -e ".[dev]"
# Run tests (147 tests)
pytest
# Lint
ruff check src/ tests/
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
License
Apache-2.0 — see LICENSE for details.
Metadata
Release files for ossguard 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ossguard-0.1.4.tar.gz | 96.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ossguard-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 198.1 kB
Release files / ossguard-0.1.4.tar.gz
| Download URL | ossguard-0.1.4.tar.gz |
|---|---|
| Size | 96.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
66e343c31c9d5b080087376a6bcc61649cf100fb69d85e60a984db4014d84619
|
|
BLAKE2b-256 checksum How to use checksums |
32ea9c3697ed78f61f69f5b671ccb17d23cd6d25da680781743b974f79d4f4be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 9, 2026.
Transparency logRelease files / ossguard-0.1.4-py3-none-any.whl
| Download URL | ossguard-0.1.4-py3-none-any.whl |
|---|---|
| Size | 102.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ceb4d4cab5525c0bd7321929777d7485ac06debca9b7c992dfb54239cac252e3
|
|
BLAKE2b-256 checksum How to use checksums |
9b423d4755ce15547d84f1dc490e0007aec5657922b94160243b76c45c1a1a28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 9, 2026.
Transparency log