Skip to main content

Project: License

Package: PyPI - Python Version PyPI - Version PyPI - Downloads

Development: uv ruff ty pytest CI Code Coverage GitHub commit activity

Contents

Overview

RepoRemedy aims to lower the barrier to software engineering best practices in open-source repositories. It will turn RepoAuditor text and OpenSSF Scorecard JSON findings into reviewable issues and pull requests.

How to use RepoRemedy

Read an existing report and write normalized findings and source provenance as JSON:

RepoRemedy inspect report.json --report-type ossf-scorecard --repo acme/demo
RepoRemedy inspect report.txt --report-type repoauditor --repo https://github.gatech.edu/sse-center/sse-resources

Use RepoRemedy inspect --help for inspection options and RepoRemedy --version for the installed version. OWNER/REPO means GitHub.com; use an HTTPS URL or HOST/OWNER/REPO for GitHub Enterprise. Enterprise hosts are retained in the output and Scorecard scan matching, including non-default HTTPS ports.

Select and review remedies interactively for one repository:

RepoRemedy inspect report.txt --report-type repoauditor --repo OWNER/REPO --interactive
RepoRemedy inspect --resume remedy-plan.json
RepoRemedy publish --plan remedy-plan.json

The interactive workflow supports bulk selection, input forms, issue/PR previews, save/resume and confirmed publication. JSON output remains the inspect default; add --interactive to open the terminal interface.

Gather context and create concrete remedy proposals from an audit report:

RepoRemedy propose report.json --report-type ossf-scorecard --repo OWNER/REPO > proposals.json

propose reads the audited commit when recorded, otherwise main. Use --ref main or a full commit SHA to select a revision explicitly. It resolves catalog inputs and renders an issue or an eligible draft PR, including file contents and diffs. Missing inputs and blocked proposals remain visible. propose makes no GitHub changes. Publish only reviewed selections with explicit confirmation:

RepoRemedy publish proposals.json --repo OWNER/REPO --select security-policy \
  --receipts publication-receipts.json --confirm

See publishing remedies for permissions, stale-content checks, duplicate prevention and receipt recovery.

See proposing remedies for authentication, collected context, maintainer inputs, PR guards and the saved proposal contract.

Generate proposals for several repositories using report-path templates:

RepoRemedy propose-batch demo/batch.json --output batch-results

The batch workflow uses the same remediation behavior as propose, preserves each repository's bundles and summary, and continues after input failures. Exit code 3 identifies partial failure; output directories must be new.

Installation

Installation Method Command
Via uv uv add RepoRemedy
Via pip pip install RepoRemedy

Verifying Signed Artifacts

Artifacts are signed and verified using py-minisign and the public key in the file ./minisign_key.pub.

To verify that an artifact is valid, visit the latest release and download the .minisign signature file that corresponds to the artifact, then run the following command, replacing <filename> with the name of the artifact to be verified:

uv run --with py-minisign python -c "import minisign; minisign.PublicKey.from_file('minisign_key.pub').verify_file('<filename>'); print('The file has been verified.')"

Development

Please visit Contributing and Development for information on contributing to this project.

Additional Information

Additional information can be found at these locations.

Title Document Description
Code of Conduct CODE_OF_CONDUCT.md Information about the norms, rules, and responsibilities we adhere to when participating in this open source community.
Contributing CONTRIBUTING.md Information about contributing to this project.
Development DEVELOPMENT.md Information about development activities involved in making changes to this project.
Governance GOVERNANCE.md Information about how this project is governed.
Maintainers MAINTAINERS.md Information about individuals who maintain this project.
Security SECURITY.md Information about how to privately report security issues associated with this project.

License

RepoRemedy is licensed under the MIT license.

Metadata

Release files for reporemedy 0.1.17

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reporemedy 0.1.17
File Size Uploaded Provenance
reporemedy-0.1.17.tar.gz 67.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for reporemedy 0.1.17
File Interpreter ABI Platform
reporemedy-0.1.17-py3-none-any.whl Python 3 none any Details

Total release size: 155.5 kB

Release files / reporemedy-0.1.17.tar.gz

Download URL reporemedy-0.1.17.tar.gz
Size 67.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7ade1fcf816a574bda7c1291956d8c3391c3660181c762fc5b8f28c7cd3c4889
BLAKE2b-256 checksum
How to use checksums
ab45b3e29febd9bceba20a93346c1e449b428b4282023dc4c5890d92807291ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","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 / reporemedy-0.1.17-py3-none-any.whl

Download URL reporemedy-0.1.17-py3-none-any.whl
Size 88.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0d899e8e5ec824d33f85de67386a5399d98faeb28960a8a721eab34668d1d666
BLAKE2b-256 checksum
How to use checksums
99a95829bc1b6f6820b33b4cd53f15b1cfc2b047d790bc9179a6d6167ed6c0b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","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}

Security for reporemedy 0.1.17

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page