dev·cockpit
3 projects
P1
Read-only control panel for the GitHub projects I'm actively working on. Sibling to Life HUD. Shows one card per repo tagged with the `cockpit` topic: README summary, open PRs, open issues, last activity, and a `STATUS.md` handoff.
13d ago
NextSmoke-test against real tagged repos, then deploy on Coolify
0 PRs 0 issues
handoff

Phase 1 is built and on master (25 tests green, pushed to GitHub). Nothing is deployed yet.

Next time you sit down here, the single highest-value step is the local smoke run. Every test uses mocked GitHub responses, so the real API shapes are unverified. Tag a few repos with cockpit (done: dev-cockpit, robey-hud, tabby-tab-notes), then:

COCKPIT_GITHUB_TOKEN=ghp_xxx COCKPIT_GITHUB_OWNER=GrillerGeek \ .venv/bin/uvicorn "app.main:build_default_app" --factory --port 8001

Load http://localhost:8001 and confirm the cards render with real PRs, issues, and README summaries. Fix any field mismatches before bothering with Coolify.

Once the local run looks right, follow SETUP.md to deploy: fine-grained read-only PAT (Contents + Issues + Pull requests + Metadata), Coolify Docker-Compose service, Cloudflare Access in front. Deploy it next to Life HUD and reuse the same Access policy.

Watch out for: the app maps port 8001 to avoid clashing with Life HUD's 8000. The GitHub search is scoped to user:GrillerGeek, so only your own repos appear. Don't write any code before the smoke run, the parsing logic may need a tweak once you see live data.

Phase 2 backlog: Azure DevOps provider adapter (the Provider interface is already in place), plus possible CI/build status, last-release version, and branch-ahead fields on each card.

P2
A self-hosted, read-only heads-up display for the day. It surfaces seven life tiles drawn from an Obsidian vault and Google Calendar onto one glanceable page, so the first thing each morning is a clear picture of what matters and what is on the schedule.
13d ago
NextRun the SETUP.md deploy ops, none are done yet
0 PRs 0 issues
handoff

Phase 1 is code-complete with 43 tests passing. It renders 7 life tiles from the vault (via git mirror) plus Google Calendar. The code is ready; what is left is entirely deployment, and none of it is done.

Next time you pick this up, work the SETUP.md checklist in order:

  1. Obsidian Git plugin auto-pushing the vault to a private repo.
  2. Read-only deploy key on the Coolify volume so the app can pull that repo.
  3. Google Calendar OAuth token (must include a refresh token or it dies in an hour).
  4. Coolify Docker-Compose deploy.
  5. Cloudflare Access in front.

This shares deploy infrastructure with dev-cockpit (same Coolify, same Cloudflare Access policy). If you are setting up Access and Coolify anyway, do both apps in one sitting and amortize the ops work.

Watch out for: the calendar token refresh-token requirement above. Known Phase-1 simplification: tasks only split Work/Home/Other; the full 5-category frame is a Phase-2 item.

Phase 2 backlog (in the design doc): homelab health, Substack stats, health, trips, mentoring, and a write-back "cockpit" mode.

P3
A Tabby terminal plugin: persistent per-tab markdown notes in a docked side panel, with an auto-stamped context header (cwd + git branch), optional repo-pinning, and plain-file storage that can roam between machines. It's a handoff doc for *you* — so when you come back to a tab you remember what you were doing and what's next.
13d ago
NextPolish the rough edges: notes-folder default and the overlay panel
0 PRs 0 issues
handoff

Working and verified live on Tabby for macOS, including the hard part: notes survive a restart and re-attach to the right tab. The core is done and usable today.

What's left is polish, not plumbing. Two known rough edges to pick up next:

  • Notes-folder default. Where notes get stored on first run needs a sane default (and probably a setting to override it) so a fresh install just works without configuration.
  • Overlay panel. The note panel UX needs a pass, smooth out how it opens, sizes, and dismisses.

Neither blocks daily use, so this can sit at low priority until the bigger projects clear. No open spike or unknown gating it. When you come back, do a quick live sanity check on current Tabby (open a tab, add a note, restart, confirm it re-attaches) before changing anything.