Design decision 0001 · accepted
Your library is a git repo you own
Tips live as Markdown files in a private git repository on your Mac, optionally pushed to a private GitHub repo. There's no Stash server.
Context
Tips need to outlive any one app, be readable by any coding agent, and be easy to inspect, edit, share and undo.
Decision
Every tip is a Markdown file with YAML frontmatter in ~/Stash/tips/, with an index.json the CLI rebuilds. The folder is a git repository. Every change Stash makes is a commit, and pushing to a remote you choose is optional.
Consequences
- You can read, edit, grep, diff and revert everything with tools you already use.
- Any agent (Claude Code, Codex, Cursor) can use the tips; nothing is locked into Stash.
- Stash has no server to run, secure or pay for. Sync between devices goes through your iCloud and, if you want, your own GitHub.
- Search and matching are local and deterministic, which keeps the SessionStart hook under a few hundred milliseconds.