Blog
Engineering notes
How cwdio is built and why: the decisions behind the terminal sync, the copy engine, the clipboard, drag and drop, updates. Each note retells one architecture decision record for readers, with the trade-offs left in.
Every substantive change to cwdio starts as an architecture decision record. These are the ones worth reading outside the repo — what the problem was, what was tried, what shipped, and what it deliberately does not do. Subscribe with RSS; the feed also carries every release.
-
15 August 2026
Bytes stay in the host: a fast Electron file manager
Why cwdio never routes file contents through Electron IPC, keeps providers and the copy queue in one services process, and publishes a copy only once good.
-
15 August 2026
Every build can learn about an update
How the portable build got an update story: version.json via releases/latest as a publish gate, a passive notice, three states, and the install bug it exposed.
-
15 August 2026
One drag gesture: every row drag is a native OS drag
Why a hidden Alt+drag export became one native drag serving the other pane, another window and Explorer, how cwdio spots its own drop, and why it only copies.
-
15 August 2026
The OS clipboard is the file clipboard
Why Ctrl+C in cwdio pastes in Explorer and an Explorer cut pastes here as a move: what a file copy is, why Electron cannot write it, plus a clipboard-wedge bug.
-
15 August 2026
Why the terminal always knows where you are
How cwdio keeps a file panel and an embedded shell on the same folder both ways: OSC 7 shell integration, an idle-only rule against loops, per-shell snippets.