GitHub App for traceability & decision governance (Praxis Guard)
Praxis Guard is a GitHub App that enforces traceability and decision governance for code repositories.
Phase 1 focuses on deterministic (non-LLM) PR checks plus repo-local conventions:
- Deterministic PR checks for decision-bearing changes
- Repo-local ledger conventions (
/praxis-ledger) - Contract/invariant validation (Phase 1 baseline)
- Traceability docs generation (Markdown / Mermaid)
Note: this repo is an early-stage GitHub App. For local development and testing, see Development below.
- Node.js 18+ and npm
- A GitHub account
- (Optional) A GitHub App for testing webhooks and check runs
git clone https://github.com/plures/praxis-guard.git
cd praxis-guard
npm install
npm run build
npm testnpm run devServer starts on http://localhost:3000.
Without GitHub App credentials, you can still iterate on the deterministic rule engine logic; check-run creation requires credentials.
- Create a GitHub App: https://github.com/settings/apps
- Configure permissions (minimum viable):
- Checks: Read & write
- Contents: Read-only
- Pull requests: Read-only
- Subscribe to events:
- Pull request
- Pull request review
- Check suite
- Export env vars:
export GITHUB_APP_ID=your_app_id
export GITHUB_PRIVATE_KEY="$(cat path/to/private-key.pem)"
export WEBHOOK_SECRET=your_webhook_secretThen install the app on a test repo and use a webhook proxy (e.g. https://smee.io) to forward events to your local server.
This is early-stage. Issues and PRs welcome.
Helpful docs:
MIT