Skip to main content

govrail

English | 中文

CI PyPI Python

A language-agnostic governance plane for agent-driven development: coding agents work fast in parallel while machines — not vigilance — hold the quality line. The only runtime dependency is Python 3.

The plane ships two mechanisms: gates (any promise a command can check becomes a mechanical check) and notes (every non-trivial change records the decision, what it beat, and the consequences). Bilingual pairing keeps the external-presentation docs in sync.

What it changes

Without govrail With govrail
Agents follow rules "on their honor"; nothing is enforced Every checkable promise is a gate that fails loud
"Why did we do this?" is lost or re-litigated Each decision is a note with the alternatives it beat
Adopting tooling means a restructure or a new runtime One command, zero restructure: gov init

See a governed project in examples/demo-project.

Install

pip install govrail        # or: uv tool install govrail / pipx install govrail

This puts the gov CLI on your PATH (stdlib only — no third-party dependencies). It has one subcommand per action:

gov init --project <path>     # inject the plane into an existing project
gov uninstall --project <path>  # reverse it exactly
gov run --mode all            # run the project's gate DAG
gov self-test                 # prove every governance gate can reject
gov verify-pairing --write    # re-confirm a bilingual pair after editing one side
gov change-scope --base <ref> # smallest sufficient check set for a diff

init is non-invasive and idempotent: it creates .gov/rules.md, adds gates.json and the notes README only when missing, appends one reference line to AGENTS.md, and never overwrites the project's own files. uninstall reverses it exactly.

What is inside

  • gov/ — the Python package: gates (the DAG runner over gates.json), verify_notes (three required sections), verify_translation_pairing (git blob hashes), change_scope, self_test, archive_notes.
  • gov/templates/ — the rules, default gates.json, and notes format that gov init injects into a project.
  • .gov/rules.md — the single source of truth for the rules.
  • .agents/notes/ — the decision-record format and lifecycle.

Origin

The mechanisms are distilled from the DeepSeek Harness repository, whose gates-over-prose axiom shaped this template. Kept: the governance plane. Left to you: the product plane. The locked design decisions live in docs/decisions.md.

Release files for govrail 0.1.2

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

Source distribution (sdist)

Source distribution for govrail 0.1.2
File Size Uploaded
govrail-0.1.2.tar.gz 18.8 kB Details

Built distribution (wheel)

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

Total release size: 39.5 kB

Release files / govrail-0.1.2.tar.gz

Download URL govrail-0.1.2.tar.gz
Size 18.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b529de013615f6c822a0dbfecd2f74defd507291e99b5a31fd23c766d06dcf01
BLAKE2b-256 checksum
How to use checksums
8e1a28a051ed043733c5f550d1550d37c2b35f25a32cae485027e849412108ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / govrail-0.1.2-py3-none-any.whl

Download URL govrail-0.1.2-py3-none-any.whl
Size 20.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e728c2f586d43d99c9d637cfae8521836240bf5c793593b09a7dcdd2e565be2
BLAKE2b-256 checksum
How to use checksums
622d08abbade2029676792de717e0df896f403118c74069b44dc73a2b96270f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

0.48.0

2 release files

0.47.1

2 release files

0.47.0

2 release files

0.46.0

2 release files

0.45.0

2 release files

0.44.0

2 release files

0.43.1

2 release files

0.43.0

2 release files

0.42.0

2 release files

0.41.0

2 release files

0.40.0

2 release files

0.39.0

2 release files

0.38.2

2 release files

0.38.1

2 release files

0.38.0

2 release files

0.37.1

2 release files

0.37.0

2 release files

0.36.0

2 release files

0.35.0

2 release files

0.34.9

2 release files

0.34.8

2 release files

0.34.7

2 release files

0.34.6

2 release files

0.34.5

2 release files

0.34.4

2 release files

0.34.3

2 release files

0.34.2

2 release files

0.34.1

2 release files

0.34.0

2 release files

0.33.1

2 release files

0.33.0

2 release files

0.32.0

2 release files

0.31.0

2 release files

0.30.7

2 release files

0.30.6

2 release files

0.30.5

2 release files

0.30.4

2 release files

0.30.3

2 release files

0.30.2

2 release files

0.30.1

2 release files

0.30.0

2 release files

0.29.4

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

This release

0.1.2 This release

2 release files

0.1.0

2 release files

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