Motion

Introduction

What Motion is, and how a self-hosted workspace connects to the hub.

Motion is a self-hostable AI dev workspace — a full IDE, terminal, git, and an AI agent running in a workspace you control, reachable from your browser.

The mental model

A Workspace is a self-contained dev runtime (IDE + daemon + agent). The Hub (motionis.xyz) is the optional connective tissue that authenticates you, finds and connects your workspaces — whether Motion-provisioned or your own hardware — and gives them shared services.

A workspace works with or without the hub:

  • Cloud workspace — Motion runs the container for you.
  • Self-hosted workspace — the same software runs on your machine (VM, homelab, laptop) and dials home over an outbound tunnel, so it appears in your dashboard just like a cloud one.

Both are the same software; the only difference is how the hub reaches the daemon — directly (cloud) or over the tunnel (self-hosted).

What you can do

How a self-hosted box connects

Self-hosted machines are usually behind NAT, so the hub can't dial in. Instead the box dials out: connect.sh (or connect.ps1 on Windows) starts the workspace locally and opens an outbound WebSocket to the hub. The hub then multiplexes HTTP and WebSockets (the terminal, file-watch) to your box's daemon over that one connection. See Concepts for details.