James Washington
writing about archive utils free game ideas replays
Technique

Headless shells need 0600 token files

Remote terminal sessions can't open the Mac's password vault, so they need separate locked-down token files.

The server in the closet

how it works

Keychain is unreadable from ssh security sessions; seed 0600 files at the console with hidden prompts; Claude Code's OAuth token lives in its own Keychain item that /login doesn't update.

Technique: A pattern or hard-won lesson, written down so it isn't learned twice.

The code for this one lives in a private repo. This page explains the idea so you can build your own.

keychainsecretssshtechnique

related

  • seed-headless-tokens Command-line tool Sets up the login tokens that remote terminal sessions need, entered hidden at the console.
  • One Keychain item for all shell secrets (base64 or bust) Technique Keep every API key in one locked vault instead of in shell config files, without slowing down new terminals.
  • devenv-* Keychain secret helpers Command-line tool One locked vault for all ~41 API keys, with commands to add or read a secret without it appearing on screen.
  • Run the tmux server in the GUI session so ssh panes can read Keychain Technique Lets remote terminal sessions use stored passwords and browser tools as if you were at the desk.
  • launchd daemons need their own TCC grants Technique Mac background services need their own privacy permissions; testing from a terminal lies.
← everything I've built
© 2026 James Washington
github twitter rss