Skip to main content

Model-agnostic quality-gate kit for AI-assisted developers

Project description

HyoDo

Honest quality gates for AI-assisted Python work.

CI PyPI Python License

HyoDo provides a small CLI and CI workflow for reviewing AI-assisted changes. It combines type checking, linting, tests, safety warnings, and an optional review score without granting automatic approval.

Two tracks

HyoDo has two surfaces with deliberately different scopes:

  • safe — outward, any repository. A dependency-light safety early-warning scanner (secrets, dangerous commands, production impact). Run hyodo safe or hyodo safe --json on your diff.
  • check — reference, a HyoDo checkout only. HyoDo's own release gates (Pyright/Ruff/pytest/SBOM). It proves HyoDo's honesty contract; it does not gate arbitrary projects.

If you want a gate for your repo today, use safe. check is intentionally scoped to HyoDo itself.

Install

Python 3.10 or newer is required.

pip install -U hyodo
hyodo --version

The installed package exposes score, safe, and onboarding commands from any directory:

hyodo score --truth 0.9 --goodness 0.9 --beauty 0.9 \
  --benevolence 0.9 --hyo 0.9
hyodo safe path/to/file_or_diff_context
hyodo safe --strict path/to/file_or_diff_context

hyodo check currently validates a HyoDo repository checkout, not an arbitrary project. Clone the repository to run its full release gates:

git clone https://github.com/lofibrainwav/HyoDo.git
cd HyoDo
python -m pip install -e ".[dev]"
hyodo check

See Quick Start for the complete first-run path.

Commands

Command Purpose
hyodo start Show onboarding guidance
hyodo check [PATH] Run HyoDo checkout gates
hyodo score ... Produce a review signal
hyodo safe [PATH] Print safety findings without blocking
hyodo safe --strict [PATH] Exit 1 when high-severity findings exist
hyodo safe --json [PATH] Emit machine-readable JSON findings for CI
hyodo trinity "CHANGE" Produce a structured review checklist

hyodo check exit contract

Exit Meaning
0 At least one gate ran and every executed gate passed
1 An executed gate failed
2 The path is missing or no applicable gate ran

The checkout gates run Pyright, Ruff, pytest, and an optional SBOM check. A zero-gate run is never reported as success.

hyodo safe exit contract

  • Default mode prints findings and exits 0.
  • --strict exits 1 when a high-severity finding is present.
  • Missing or unreadable paths exit 2.

hyodo safe is an early-warning scanner, not a security audit.

Scope

The supported release surface is intentionally narrow:

Surface Status
hyodo/ Python package and CLI Public release surface
tests/ and .github/workflows/ Release verification

Model-agnostic means the core CLI does not require a specific AI provider or agent UI. It does not mean language-agnostic or universal repository support.

Optional review score

HYOGOOK V5 evaluates Truth, Goodness, Beauty, Benevolence, and Hyo, with a geometric-mean harmony signal. Scores support review; they never replace tests, security checks, or human approval.

The practical CLI works without this optional philosophy layer. See HyoDo philosophy for the short model description.

Documentation

Contributing and security

See CONTRIBUTING.md before opening a pull request. Report security issues through the process in SECURITY.md.

License

HyoDo is available under the MIT License.

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

hyodo-4.0.1.tar.gz (43.6 kB view details)

Uploaded Source

Built Distribution

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

hyodo-4.0.1-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file hyodo-4.0.1.tar.gz.

File metadata

  • Download URL: hyodo-4.0.1.tar.gz
  • Upload date:
  • Size: 43.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for hyodo-4.0.1.tar.gz
Algorithm Hash digest
SHA256 37a4d7ebc90357b9768ad67910193b61bcf4bec6af6aa842cf37be8094f56f9e
MD5 3bc6fc661ab812b64fde1d685c3557de
BLAKE2b-256 da88ea716095c64ea09894f3212630e94886841e5813793901f73b46b419d59b

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyodo-4.0.1.tar.gz:

Publisher: publish.yml on lofibrainwav/HyoDo

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

File details

Details for the file hyodo-4.0.1-py3-none-any.whl.

File metadata

  • Download URL: hyodo-4.0.1-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for hyodo-4.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bf028c638274c6ecb0cbc4e242a77e3c210b98029c2a037db0a1ed48b4ef1854
MD5 5fb1e276e347d458f2f450511dda3a05
BLAKE2b-256 537797de4d51e197236023c4f849db2ff607e257d077898f97feea511c7c9e9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for hyodo-4.0.1-py3-none-any.whl:

Publisher: publish.yml on lofibrainwav/HyoDo

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