Spec home for the combined product: Second Brain Helper (macOS app) and the JakeOS dashboard (jakeos.jakehallman.com, served from UnRAID via Cloudflare Tunnel).
This repo holds specs, change proposals, and architecture decisions. Implementation lives in the two child repos:
| Surface | Repo | Path |
|---|---|---|
| macOS app | Second-brain-helper-app |
~/Documents/Second-brain-helper-app |
| Web dashboard | New repo for jakeos.jakehallman.com (host: UnRAID, deploy: docker-compose with Caddy + oauth2-proxy + cloudflared + Node.js HTMX server). The legacy New_Jakehallman_site repo at ~/Documents/New_Jakehallman_site continues to be the WordPress side and is not touched by JakeOS — jakehallman.com stays at Lithium Hosting. |
TBD (UnRAID deploy path, to be created during Phase 3) |
- New work starts as an OpenSpec change proposal —
/opsx:propose <description>in this repo. - The proposal generates
openspec/changes/<change-name>/withproposal.md,design.md,tasks.md. - When the change is approved, it updates the long-lived specs in
openspec/specs/. - Implementation happens in the child repo(s); commits there reference the change name.
- When complete,
/opsx:archive <change-name>moves the change out of active.
Use Semble for fast semantic search across both child repos:
semble search "auth flow" ~/Documents/Second-brain-helper-app
semble search "blog routing" ~/Documents/New_Jakehallman_siteThe product is the combination. Neither child repo owns the contract between them, and duplicating cross-cutting specs into both was the alternative we rejected.