Published:

Tagged: AI Claude-Code Second-Brain Knowledge-Management Open-Source

GOVERN - a second brain that shows its work

TLDR; GOVERN is six principles for trusting an AI-run knowledge base, and a starter kit that puts them in place. One script lays out the folders and installs eleven commands for Claude Code, then an interview asks the five things only you can answer and writes the rulebook. It ships no rulebook of its own. MIT, at github.com/pardel/govern.

Every second-brain system solves capture, and almost none solve trust. GOVERN is what I ended up calling the rules my own base runs on: Gates, Origins, Verification, Evidence, Rules, Nothing assumed. The reasoning behind each one is at pardel.dev/govern, which is the framework’s home and gets updated as the system changes. This post is about the kit, which is public from today.

What one run gives you

setup.sh lays out the PARA folders, puts the base under version control from its first commit, and installs eleven commands for Claude Code. Then you start Claude Code in that folder and run /onboard, which asks the five things only you can answer: what to call the assistant, drawn from a family of names, which actions must never happen without your yes, what you are responsible for, a line on what good looks like in each, and whether the daily brief gets written before you wake. Your answers become the rulebook.

A diagram of a GOVERN base. A band across the top is the rulebook, CLAUDE.md, written by /onboard and grown by every correction, with a red tag reading gates: ask first. In the middle, items flow from 0_Inbox through /process-inbox into two things: a dark slab, the original in 4_Archive, never edited, and a light compiled note carrying an id and a source line, with a dotted thread from the note back to the slab labelled cites, an arrow down to 5_System/INDEX.md, one row per note, and an arrow labelled filed into a column of three folders: 1_Projects, holding a project folder named for its area; 2_Areas, holding Personal, Work and Beekeeping, named at onboarding and each with a line on what good looks like; and 3_Resources, for reference and whatever fits no area. A dashed arrow from the note back up to the rulebook is labelled /correction-to-rule: a mistake becomes a rule, not a fix. Along the bottom, 06:00 from launchd or cron starts schedule.sh run daily-brief, with Bash withheld so it cannot push or delete, which ends in either a brief file that ends with GOVERN_OK or a FAILED-daily-brief file, captioned a dead run never looks like a quiet one. Below that, Sunday, you in the room, starts /weekly-review: the briefs since last time, unread ones first, each area against its line, every flag decided: act, consciously defer, or adjust the rule, with a dashed arrow up the right edge back into the rulebook, captioned a rule that keeps flagging what you keep ignoring is changed, not endured.

The repo ships no CLAUDE.md of its own, and that is the point rather than an omission. A gates list is a statement about what you are unwilling to have happen without being asked, so a ready-made one would have you accept a stranger’s judgement about your own irreversible actions on day one. The interview offers eight gates to choose from, because a blank question is harder to answer well than a list, but nothing is selected for you and nothing is written until you have chosen.

Two things that came out of running it

A gate stated in prose is a wish. The unattended runner gets Read, Glob, Grep, Write and Edit, and Bash is denied by name, which is the gates list enforced at the tool layer rather than asked for politely.

A run also has to print GOVERN_OK before it counts as finished. Without a marker, a job that died and a job with nothing to say look identical from the outside. A failed run leaves a file under 5_System/logs/ until the next good one.

Try it

cd /Volumes/kb && curl -fsSL https://raw.githubusercontent.com/pardel/govern/main/setup.sh | bash

Any empty folder will do in place of /Volumes/kb, and the script refuses one that isn’t empty.

Then start Claude Code in that folder and run /onboard. Nothing else in the kit is worth running before it.

Bash 3.2 or newer, git, curl and Claude Code, and nothing else on day one. Read the script first: it is two hundred and six lines and reaches for nothing beyond curl, git and the everyday mkdir, touch, rm, grep, wc, tr and dirname. MIT, at github.com/pardel/govern.