Interactive walkthrough

How Govinuity works

Walk through the governed continuity loop, from surfacing a candidate decision to observing its injection in a future agent session.

Getting started

Clone and run locally

Govinuity runs on your machine. No accounts, no telemetry, no hosted service required for the current release.

$ git clone https://github.com/Taprooted/Govinuity.git
$ cd Govinuity
$ npm install
added packages
$ cp .env.example .env.local
$ npm run dev
Ready on http://localhost:3000

Step 1 — Surface

A candidate decision is surfaced

An agent, script, or human submits a candidate decision via POST /api/decisions. It enters Govinuity as a proposal — not an instruction. The included harvest script (scripts/harvest_proposals.py) automates this — reading Claude Code sessions by default, or any agent tool via --input — and extracting candidates on a schedule.

POST /api/decisions
POST /api/decisions
// Candidate context, not authority yet
{
"body": "All DB migrations must be human-reviewed before production.",
"status": "proposed",
"proposal_class": "durable_constraint",
"summary_for_human": "Prevents unreviewed production migrations.",
"why_surfaced": "Repeated correction during an agent session",
"rationale": "Bad migrations are hard to reverse."
}

Step 2 — Review

A human reviews the proposal

The Review page surfaces proposed continuity objects with rationale, trigger, reversibility, scope, and conflict signals.

localhost:3000/review
Proposed — awaiting review
All DB migrations must be human-reviewed before running in production.
Submitted by agent session · durable_constraint
Trigger
Repeated correction during an agent session
Reversibility
Low
Scope
global
Conflicts
None detected

Step 3 — Ratify

Approve, defer, or reject

You decide what deserves authority. Only approved decisions become eligible for injection into future sessions. Every active decision carries a named ratifier — decisions can be superseded or archived later, but the ratification chain is always visible.

localhost:3000/review
Proposed — awaiting review
All DB migrations must be human-reviewed before running in production.

Step 4 — Inject

Ratified decisions become future context

Generate a GOVERNED_CONTINUITY.md file for Claude Code, or use the memory API to inject governed context into another agent workflow.

localhost:3000/decisions
---
generated_at: 2026-04-14T10:00:00Z
decisions_injected: 1
decisions_excluded: 0
---
### DB migration review gate
ratified_by: govinuity-review · scope: always active
All DB migrations must be human-reviewed before running in production.
# In CLAUDE.md:
@.claude/GOVERNED_CONTINUITY.md

Step 5 — Measure

Every injection is logged

Each continuity run records what was injected, what was excluded, and why. The harvest script detects outcome signals automatically from session transcripts — whether a decision was followed, whether correction was required, whether stale context leaked through — and posts them as run annotations. Continuity becomes measurable, not just observable.

localhost:3000/runs
run-1744…k3f9a Claude Code session — project-api 1 decision injected Injected
run-1744…m7c2x Claude Code session — project-web 1 injected, 1 excluded Injected
run-1744…p9b1z API call — agent/deploy-bot 0 injected, 1 excluded Scoped out
1 of 6

Use arrow keys to navigate