Skip to content

dsh-remote-ssh v0.2.0

Choose a tag to compare

@aijunjiang aijunjiang released this 02 Sep 08:52
· 38 commits to main since this release

dsh-remote-ssh v0.2.0 - remote workspace over SSH for DSH

Move file IO and command execution onto an SSH target while sessions, the web GUI and \ stay local.

Highlights

  • GUI: connection manager, remote directory browser, per-session routing across multiple remote hosts (sidebar forked from UynajGI/dsh-ssh, MIT).
  • Full mode (cordis.patch.yml): ctx.fs / ctx.subprocess / ctx.shell run on the remote host; helper daemon gives real pid/pgid, tree-scoped termination, bounded reads and target-side spills.
  • Agent-facing experience (field-tested):
    • routing identity + a usage guide in the runtime context of routed sessions (degraded-route warnings instead of silent empty mirrors);
    • ssh_exec tool over the in-process ssh2/helper channel - no local ssh.exe, locale fixed to C, 256 KiB/stream cap, end-sentinel output integrity with one auto-retry on lost output;
    • ssh_route_status recovery tool, DSH_SSH_* shell env, and a secret-free route manifest (dsh-ssh-routes.json).
  • Install:
    ode scripts/install.mjs (idempotent, removable) + pnpm dsh web --patch - see README.

Fixes since 0.1.0

  • registry/sessions resolved lazily (async ctx.plugin mount degraded every routed session);
  • silent exit-0-empty-output bug made visible and retried (sentinel integrity);
  • route-spelled-but-unresolvable cwds now render explicit offline warnings.

Notes

  • MIT licensed; technical detail in DESIGN.md and specs/.
  • PTY/terminal spawn on remote connections not yet implemented; GUI-only mode leaves fs/subprocess local by design.