Docs
DocsRemote DevelopmentProjects and Tasks

Projects and Tasks

Open a repository and run tasks on a remote machine

Remote projects work like local projects. Your repository, worktrees, agents and tools live on the selected machine.

Open a project

  1. Connect a machine.
  2. Open Add Project and select the machine.
  3. Choose Pick to open an existing directory, Clone to clone a repository, or New to create a GitHub repository.
  4. Choose the destination on the remote machine.

For private repositories, make sure Git can authenticate. Creating a GitHub repository also requires a connected GitHub account.

Create a task

Create a task in the remote project and choose where it should run:

  • New worktree keeps changes on a separate branch and working directory.
  • Existing workspace uses a working directory already registered with Emdash.
  • Repository root works directly in the project's checked-out directory.

Tasks using the same directory share its files and changes. Use separate worktrees for isolated work.

The built-in worktree root is ~/emdash/worktrees on the remote machine. A project override takes precedence over the machine default. Check Project Settings for the resolved location.

Agents, files and tools

Choose an agent installed on the remote machine. Install and configure agents from Settings → Machines → your machine → Agents.

Terminals, Git commands, file edits, search and lifecycle scripts run remotely. The editor supports language intelligence on SSH workspaces, with language service status and restart controls in the file tab menu.

You can drop local files or paste images into remote terminals. Emdash uploads them before inserting their remote paths. Chat attachments are also stored on the target machine.

Git and environment

Git must be installed on the remote machine. In Project Settings, choose the GitHub account and Agent git credentials policy for agent and terminal sessions. System uses the machine's own Git credentials. SSH Git remotes still need appropriate SSH authentication.

Set project environment variables for agents, terminals and lifecycle scripts. Share setup commands through .emdash.json. See Project Settings.

Previews and reconnects

Start your dev server in the remote task, then open it from the dev-server menu. Emdash forwards the connection to your computer. See remote previews.

If the connection drops, Emdash attempts to reconnect. Use the machine's status and runtime controls to inspect failures. Tmux keeps terminal and TUI-agent processes running independently of their attached view; it doesn't preserve processes through a machine reboot.

Deleting a task does not terminate your remote machine. Review task cleanup and teardown output before removing infrastructure yourself.

Last updated on October 17, 2026