Repository navigation
Highlights
dsh-todo is now a sprint/roadmap list, with a CLI
A task carries status (backlog / todo / in-progress / blocked / done), priority (p0-p3), optional release and sprint labels, a description and a calendar-day due date. Status is the source of truth, replacing the old boolean done, so completedAt can never contradict it. Group by status for a kanban board without drag-and-drop.
Existing databases migrate in place on first open: new columns are added with ALTER TABLE, title is backfilled from the old text, and done = 1 becomes status = 'done'. Nothing is dropped, and the v1 columns keep being written so a downgrade still reads a sane list.
A new dsh-todo binary puts the same list in a terminal, so an agent can shell out and manage your tasks:
npx @dennisrongo/dsh-todo list --open --json
npx @dennisrongo/dsh-todo add "Fix token refresh" --priority p0 --due 2026-03-14It targets a workspace directory and needs no profile, session or running server. --json prints structured output on the error path too, and exit codes are distinct (0 ok, 2 usage, 3 not found) so a script can branch on why a command failed. Safe alongside the running app: SQLite's file lock refuses an interleaved writer and busy_timeout makes a CLI write wait for the harness commit.
dsh-git diff pane
The diff sits beside the file list when there is room and below it when there isn't, switched by a container query — the tab is resized by the shell's own panels, not the viewport. Opening a diff no longer moves a row: the list column is reserved in both states, and the stacked diff stays in normal flow so it cannot cover the row you just clicked. A patch-shaped loading skeleton replaces the blank pane, and stale replies are discarded so a slow request can't paint the wrong file's patch.
dsh-mission-control
Control metrics are CSS custom properties, so the 400px rail and the full-screen Stage derive from one set of tokens instead of drifting. Stage's bar now clears DSH Desktop's window-drag strip, which was swallowing clicks on its own controls.
Docs
README and AGENTS.md updated across the repo for the task model, full CLI usage (flags, JSON shapes, exit codes) and the UI work. New TROUBLESHOOTING.md covers harness-level failures, which are mostly silent.
All six packages are published at 0.3.0. No breaking API changes.