Before you start

  1. Get invited to the Hook Club 1Password account with access to the shared developer vault. It holds the GitHub Packages token, the workspace clone script, and the app secrets.
  2. Get added to the thehookclubdev GitHub org.
  3. Create an SSH key in 1Password (New Item, SSH Key) and add its public key to your GitHub account (Settings, SSH and GPG keys). It stays in your vault; nothing is written to disk.

Run the install

Paste this into Terminal:

curl -fsSL https://thehookclub.dev/install.sh | bash

You'll be asked for your macOS password once. It's safe to re-run: every step checks before it acts. It clones itself to ~/thc/laptop, next to the app repos.

What it installs

NameDescriptionType
nodeLatest LTS, provisioned by miseruntime
miseRuntime version managercli
direnvLoads each repo's .envrc (GitHub Packages token from 1Password)cli
ghGitHub CLIcli
starshipShell promptcli
redisLocal Redis for the admin app's cache, started as a login serviceservice
libpqPostgres client tools (psql, pg_dump)cli
netlify-cliDeploys the Netlify-hosted appscli
jqJSON on the command linecli
ripgrepFast code searchcli
ffmpegAudio transcodingcli
yt-dlpSong reference downloadscli
claudeClaude Code, Anthropic's CLIcli
op1Password CLI; reads secrets from the vaultcli
1PasswordSecrets and the SSH agentapp
OrbStackDocker engineapp
ZedEditorapp
LinearIssue trackerapp
TablePlusPostgres GUIapp
GhosttyTerminalapp
RectangleWindow tilingapp

It also wires mise, starship, and direnv into ~/.zshrc, and points ~/.ssh/config at the 1Password SSH agent.

After it finishes

In the 1Password app, enable Settings, Developer: Integrate with 1Password CLI, Use the SSH agent, and Touch ID. Then, in a new terminal, sign in, pull the repos into ~/thc, and give each one a .envrc that reads the Packages token from 1Password:

op signin
op document get workspace --vault developer | bash
~/thc/laptop/envrc

Then cd ~/thc/admin && npm install && npm run dev. Each repo's README covers its own .env.