Skip to content

[Feature]: Open projects directly over SSH #622

Description

@Paduce

What problem are you trying to solve?

Opening an OpenKnowledge project that lives on another machine currently requires starting the web editor on that machine and maintaining a separate SSH tunnel. That is cumbersome, easy to misconfigure, and unlike the normal desktop workflow: users cannot choose a saved machine, browse its folders, open recent remote projects, or use the editor and terminal as if the project were local.

Proposed solution

Let the desktop app save credential-free SSH machine definitions and open projects directly over the system SSH client. The SSH machine field should show saved machines when opened, and the flow should support connection testing, remote folder browsing, recent projects, editing, search, and terminals.

Desktop should install its matching, content-addressed support bundle under the SSH user's ~/.ok/remote directory, similar to a remote editor server. Installation must not require a global ok command, sudo, password storage, or PATH changes. Each editor window should own an exclusive remote server bound to remote loopback and a local SSH tunnel, with explicit initialization consent, strict protocol validation, actionable errors, reconnect handling, and deterministic process cleanup.

Area

Desktop app

Alternatives considered

  • Continue starting the remote web editor and managing a tunnel manually.
  • Mount the remote filesystem with SSHFS or use an SFTP abstraction.
  • Clone every project locally and synchronize it separately.
  • Require a global OpenKnowledge CLI installation on every remote machine.

Those options add setup, weaken the local-project mental model, or introduce a second synchronization layer. A version-matched per-user helper keeps the workflow direct and reproducible.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions