Three ways to continue DSH work on another device
They are not competitors so much as different answers to different questions. This page says which question each one answers, and where each one breaks — including ours.
One-line answer
If you want one machine’s sessions on another machine, you need a sync engine (Sync Hub or dsh-session-sync). If you want to drive one running machine from your phone, you need remote access (dsh-remote-mobile). Pick by question, not by star count.
Side by side
| DSH Sync Hub | dsh-session-sync | dsh-remote-mobile | |
|---|---|---|---|
| The question it answers | How do two machines hold the same session state? | How do I mirror sessions through git? | How do I use my running DSH from my phone? |
| Mechanism | A hub you run yourself, plus an agent; data moves in hashed chunks | Private git repo as the transport | Secure proxy in front of one live instance |
| Session data | Opaque bytes, moved and hashed only | Opaque bytes, appended to a repo | Never moves; one copy stays on the host machine |
| Workspace index | Semantic merge of workspace.json + projcache | Same file, git three-way merge | Not involved |
| Incremental transfer | Only missing chunks (measured: 10 KB append → 28,928 bytes) | Git delta on binary files, near full size in practice | Not applicable |
| Conflict handling | Both versions kept on the hub, local file untouched | Both kept as fork files, never force-pushed | Not applicable |
| Cross-build (web / desktop / TUI) | Yes — reads a data root, not a client | Yes, if each build writes to the same path | Only the single running instance |
| Phone | Read-only console | No | Yes — designed for it |
| Needs on your side | A machine to run the hub (or a hosted one later) | A private git repo + credentials | An always-on machine + a tunnel (e.g. Tailscale) |
| Works offline | Yes, syncs when connected | Yes | No |
| Team / multi-user | Planned | Per-repo access | Single operator |
| Main failure mode | Hub must be reachable; conflicts need a human | Index conflicts are manual and can hide sessions | Host sleeps → nothing works |
When each one is the right answer
Use DSH Sync Hub when
You work on two or more machines and want the same list, with titles, in both — and you would rather run one small service than reconcile git conflicts in a JSON file that decides whether sessions appear.
Use dsh-session-sync when
You already treat a private git repo as your source of truth, you want every device to work offline, and you are comfortable resolving a merge by hand when it happens.
Use dsh-remote-mobile when
Your problem is “continue on my phone right now”, not “keep two machines in sync”. One always-on machine plus a tunnel beats any sync engine for that question.
Where ours is weaker
- It needs a reachable hub. If the hub is down, nothing syncs — git keeps working offline.
- No remote takeover. If you want to drive a running session from a phone, this is the wrong tool.
- Automatic conflict resolution does not exist yet: it keeps both copies and waits for you.
- Attachments are not synced yet, so images referenced by an old session can break on the other machine.
- Single-tenant. Multi-user workspaces are planned, not shipped.
Pick in three questions
| Do you need to drive a session that is already running, from another device? | dsh-remote-mobile |
| Do you need automatic sync between machines that are sometimes offline? | dsh-session-sync (git) |
| Do you need the session list to be identical, with titles, and you can run one small service? | DSH Sync Hub |
Sources
FAQ
Can I combine them?
Yes, with one rule: do not let two mechanisms write the same session folder. Phone-only remote access plus machine-to-machine sync is a sane combination.
Why not just use git?
Git is fine for text and poor for a 22 MB binary that changes every turn, and the workspace index is a single JSON file whose merge conflicts decide whether sessions appear. That is the specific weak point this tool exists for.
Is the comparison biased?
It is written by the author of Sync Hub, so read the “where ours is weaker” section first. The measurements are reproducible with the tools on this site.