Plan file: docs/superpowers/plans/2026-05-23-plan-08-electron-shell-skeleton.md
Tag at close: v0.0.8-plan-08
Depends on: Plan 03 (daemon + ipc-client)
Goal
Stand up the dycode.app Electron shell that spawns the daemon as a sidecar, talks to it over the daemon's IPC, and renders the empty Control Room chrome (window layout, Sidebar, Tabs, Resizable drawers, command palette stub). No domain UI yet — that arrives in Plans 09+.
Deliverable
apps/dycode package — Vite + React 19 + shadcn UI + Tailwind v4.
packages/ui package — shared shadcn primitives + oklch theme tokens.
- Electron main + preload + sidecar spawn (reads
~/.dycode/runtime.json).
- Shell layout, command palette stub, theme toggle.
- Playwright smoke test in CI.
- F45–F52.
Out of scope (deferred to later plans)
- Fleet content → Plan 09
- Tasks tab → Plan 12
- Activity + Replay tabs → Plan 13
- Settings + Adapters tab → Plan 14
- Editor / terminal panes → out of scope until v1.1
Workflow
- Branch from
main via superpowers:using-git-worktrees: feat/plan-08-electron-shell-skeleton.
- One PR closes this issue — include
Closes #<this issue's number> in the PR description.
- Update
docs/superpowers/plans/README.md to move this plan from "not started" to "shipped" in the same PR.
- Final step is the close-out commit and
git tag v0.0.8-plan-08.
- All 5 quality gates apply (CONTRIBUTING.md).
Plan file:
docs/superpowers/plans/2026-05-23-plan-08-electron-shell-skeleton.mdTag at close:
v0.0.8-plan-08Depends on: Plan 03 (daemon + ipc-client)
Goal
Stand up the
dycode.appElectron shell that spawns the daemon as a sidecar, talks to it over the daemon's IPC, and renders the empty Control Room chrome (window layout, Sidebar, Tabs, Resizable drawers, command palette stub). No domain UI yet — that arrives in Plans 09+.Deliverable
apps/dycodepackage — Vite + React 19 + shadcn UI + Tailwind v4.packages/uipackage — shared shadcn primitives + oklch theme tokens.~/.dycode/runtime.json).Out of scope (deferred to later plans)
Workflow
mainviasuperpowers:using-git-worktrees:feat/plan-08-electron-shell-skeleton.Closes #<this issue's number>in the PR description.docs/superpowers/plans/README.mdto move this plan from "not started" to "shipped" in the same PR.git tag v0.0.8-plan-08.