homebot

homebot

Not released yet

homebot is not released yet, so there is nothing to install today. These pages
describe how it works.

One git repo, your home repo, holds everything that makes a machine yours:
dotfiles, secrets, install lists, fonts, notes. homebot links it into
$HOME, installs what the profile lists, and keeps nudging, gently and in one
place, until nothing needs you.

The one command to remember

Run homebot. It prints a short to-do list, and every item ends with the
exact command that fixes it. homebot next runs the first one.

New machine

  1. Clone
    git clone <your home repo> ~/.home
    
  2. Bootstrap: installs bun if missing, builds homebot, links it into ~/.local/bin.
    ~/.home/bootstrap.sh
    
  3. Unpack: runs this host’s profile (decrypt secrets, link, brew, apt, flatpak, fonts).
    homebot unpack            # --dry-run first if you're nervous
    
  4. Set up: commit guard and the hourly background helper.
    homebot setup
    
  5. Follow the inbox until it’s empty.
    homebot
    

Day to day

I want to Run
See what needs me homebot
Just do the next thing homebot next
Start tracking a config homebot pack ~/.config/thing
Track it on this OS only homebot pack ~/.config/thing --layer linux
Track a secret homebot pack ~/.netrc --private
Decide about new files in $HOME homebot triage
Commit and push now homebot save
Fix links after pulling homebot link

Everything else happens on its own: the helper seals secrets, snapshots
installed packages, commits, pulls, pushes and repairs links every hour.

What’s where

Folder What happens to it
autolink/ Symlinked into $HOME. common/config/x is ~/.config/x. Edit here = edit live.
private/ Same as autolink/, but only encrypted *.age files are committed.
manifests/ Install profiles and package lists. Nothing runs until homebot unpack.
furniture/ Passive stuff: fonts, drivers, themes, vendored repos, vaults.
bin/ Personal scripts, on $PATH first.
agent/ Reports written by coding agents.
Next: how linking works

The folder names in autolink/ decide everything. Five minutes on
Linking rules saves an hour of guessing.