universelabSCI · CLI · BIO
ESEspañol

UniverLab · open laboratoryEXP-003

GitKit

// the ritual, automated

One guided flow for hooks, .gitignore, .gitattributes and git config — then saved as a build you can re-apply to any project with a single command.

repository setup → saved, idempotent builds → the same ritual everywhere

Install
curl -fsSL https://install.univerlab.org/gitkit | sh

EXP-003 · active · · release v0.7.0 · 3 weeks ago · Built with Canopy · Repository set up with ghScaff · Demo recorded with DemoStage · Commits checked by GitKit

Genesis ·

A line-ending that wouldn’t behave.

It started with a commit that changed nothing — just line endings, silently rewritten somewhere between my work Mac, my Windows box and the agents on WSL. Chasing it down led me to .gitattributes. That led to git hooks: built into git, genuinely powerful, and ignored by almost everyone — because wiring them into every repo is a chore. So I deleted the chore. That’s gitkit.

~/repo — gitkit
$ git commit -m "feat: parse manifests"
  ✓ conventional-commits  (commit-msg)
  ✓ no-secrets            (pre-commit)
[main 7f3a9c1] feat: parse manifests
$ git push
  → origin/main  ·  push.autoSetupRemote
One flow
  • Built-in hooks: conventional commits, secret detection, branch naming — embedded, offline.
  • Every gitignore.io template plus curated git config presets, applied idempotently.
  • gitkit clone bootstraps a repo the moment it lands on disk.
  • Builds: save a setup once, apply it to every future project.
  • Lock: block commits and pushes via the hooks already installed — --json for machine-readable status.
FAQ

FAQ

How do I prevent AI agents from making bad commits?
GitKit sets up git hooks in one flow — conventional commits, secret detection, branch naming. Hooks run offline, embedded in the repo. Agents can't push code that doesn't compile or contains secrets.
What are GitKit "builds"?
A build saves your git configuration (hooks, ignore, attributes, config) as a reusable template. Apply it to any future project with one command — no need to reconfigure hooks for every repo.
How do I pause writes to a repository?
Run gitkit lock to block commits and pushes through the hooks gitkit already installs. The repository stays readable but unwritable until you run gitkit unlock. Useful when an autonomous agent needs to stop writing while you rebase, reinstall, or inspect the tree.
Field notes