Skip to content

tiotoi/dot-bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

dot-bootstrap

One-shot setup for a new machine. Personal — clones tiotoi/dotfiles (private), runs its installer, wires the brain MCP, and verifies everything works.

One-liner

curl -sSL https://raw.githubusercontent.com/tiotoi/dot-bootstrap/main/install | bash

Preview first:

curl -sSL https://raw.githubusercontent.com/tiotoi/dot-bootstrap/main/install \
  | bash -s -- --dry-run

What it does

  1. Prereq checkgit, ssh, python3 (stdlib only, no pip needed).
  2. Brain transport check — verifies ssh -o BatchMode=yes lab true works. Advisory only: install proceeds even if SSH isn't configured yet.
  3. Clone or pull dotfiles into ~/dotfiles (or $DOTFILES_DIR).
  4. Run install.sh from the dotfiles repo — symlinks every tracked file into $HOME (Claude skills, subagents, brain bridge, hooks, helper bins).
  5. Wire Claude hooks — merges brain SessionStart + Stop entries into ~/.claude/settings.json if not already present (backs up to .bak first).
  6. MCP smoke test — runs bridge.py initialize and checks the response.

Idempotent: re-running is safe.

Flags

Flag Effect
--dry-run Print what would happen, change nothing.
--no-claude-hooks Skip wiring brain hooks into ~/.claude/settings.json.
--force If $DOTFILES_DIR exists but isn't a git repo, back it up to .bak and clone fresh.
--help Show help.

Pass flags through bash -s --:

curl -sSL https://raw.githubusercontent.com/tiotoi/dot-bootstrap/main/install \
  | bash -s -- --dry-run --no-claude-hooks

Env overrides

Var Default Use when
DOTFILES_REPO git@github.com:tiotoi/dotfiles.git Cloning a fork or a different dotfiles repo.
DOTFILES_DIR $HOME/dotfiles Installing the repo somewhere other than ~/dotfiles.
BRAIN_SSH_HOST lab The SSH alias the brain transport uses.
BRAIN_SSH_HOST=my-other-host curl -sSL .../install | bash

Prerequisites for the brain MCP

The brain bridge SSHes into the brain host and reads its bearer token there. Nothing secret travels to the client. For the bridge to work on a new machine, that machine needs:

  • Host lab (or your $BRAIN_SSH_HOST) configured in ~/.ssh/config.
  • An SSH key authorized on the brain host.
  • Tailscale (or LAN) reachability to the brain host.

If any of these isn't ready, the install still completes — the bridge files get installed; the smoke test just gets skipped. Fix SSH and re-run.

What's tracked in this repo

Just the install script and this README. No personal data, no IPs, no hostnames beyond the generic lab SSH alias, no tokens. The script is short enough to review in full before running.

Audit trail

curl -sSL https://raw.githubusercontent.com/tiotoi/dot-bootstrap/main/install | less

— or read it on GitHub before piping to bash.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages