24/7 autonomous runtime — live

The AI dev workspace that never sleeps.

A full IDE, terminal, git, an AI coding agent and an agentic browser — running in a container, reachable from your browser or over WhatsApp & Telegram. Schedule it, walk away, and it keeps shipping — learning as it goes.

Runs in one container Your keys, your repo Open source core
One container, the whole loopIDETerminalGitAgentic browserAI agent
Everything in the box

A real dev environment that learns — not a chat window.

Motion ports a full desktop-grade IDE into the browser and backs it with a Rust workspace daemon — so the agent edits, runs, commits and browses against the same filesystem you do, with its own secrets vault and a memory that compounds.

Browser-native IDE

Explorer with live file-watch, CodeMirror editor, PTY terminal, source control and git history — all served from a container, no install.

Rust workspace daemon

An always-on core for fs, shell, PTY, git and search, with durable SQLite state — sessions, jobs and runs survive restarts and are full-text searchable.

Agentic browser

The agent “sees” pages as an accessibility-tree snapshot and acts by reference — navigate, click, type, extract tables, screenshot. Real web tasks, not scraping.

Cron scheduler

Schedule the agent like a job. A 60-second tick fires due automations with wake-gates and silent delivery — nightly upkeep, polling, recurring reports.

It learns as it works

Creates reusable skills from experience and patches them as it improves, keeps durable memory across sessions, and recalls past conversations — it gets better at your work.

End-to-end credential vault

An encrypted vault (Argon2id + XChaCha20) brokers secrets by reference — the model never sees the value. Grant or revoke access per agent, plugin, or channel, instantly.

Reach it over chat

WhatsApp & Telegram, one session per chat — message the agent (it can browse + run tools), or have a scheduled run's result delivered to your phone.

Extensible by plugins

Providers, channels, tools and skills are plugins — a small manifest + one register(). Drop one in; no core changes.

Secure by default

A capability policy gates every tool per agent/channel; provider keys stay server-side and are injected at the edge. Pluggable sign-in — email+password, GitHub, or none.

One container. Your repo, your keys.Launch your workspace
The 24/7 difference

It keeps working after you close the tab.

Most AI coding tools stop when you stop typing. Motion's headless runtime spawns a one-shot agent process per turn or scheduled job, streams events live, and persists every transcript as a run you can replay.

  • Automations sidebar — create, run, pause and edit scheduled jobs without leaving the IDE.
  • Live Runs overlay — watch the event stream and full transcript as the agent works.
  • Wake-gates & silent delivery — jobs only fire when they should, results route where you want them.
Runs · live
● nightly-deps · completed · 02:00 · 41s● triage-issues · running… · 3 tools○ scrape-prices · queued · 06:00○ weekly-report · queued · Mon 09:00▸ triage-issues streaming ⛭ browser github.com/issues?is:open ⛭ fs.write .motion/triage.md labeling 7 issues
                hub  ·  GitHub login
                       │  per-tenant proxy
                       ▼
 ┌──────────── TENANT / WORKSPACE ─────────────┐
 │  ide  ──/daemon──▶  daemon   │
 │  React IDE              fs · shell · pty      │
 │                         git · search · ai     │
 │                         + SQLite + scheduler  │
 │           spawns ▼                            │
 │  ┌─────────────┐  ┌──────────┐  ┌──────────┐  │
 │  │ runner│  │ browser  │  │ gateway  │  │
 │  │ headless    │─▶│ sidecar  │  │ wa · tg  │  │
 │  └─────────────┘  └──────────┘  └──────────┘  │
 └───────────────────────────────────────────────┘
Architecture

Composable services, one workspace.

Each piece does one job and talks over clean HTTP/WS boundaries. Run it as a single container for yourself, or put the multi-tenant control plane in front to provision an isolated workspace per signed-in user.

  • Single-tenant: one docker run and you're in the IDE.
  • Multi-tenant: email+password or GitHub sign-in → an isolated container per user.
  • Provider-agnostic: Anthropic, OpenAI, Google, Groq, xAI & more via the AI-SDK.
Reach it anywhere

Your workspace, one tab or one message away.

Browser

The full IDE, anywhere you have a tab.

WhatsApp & Telegram

Message the agent, get results back.

On a schedule

Cron jobs fire while you're away.

Over MCP

Expose the browser verbs to any MCP client.

How it works

From zero to autonomous in three steps.

01

Spin up the container

One docker run brings up the IDE, daemon and Caddy, rooted at your project. Open the tab and you're editing.

02

Add a key & a job

Drop a provider key into Settings → Autonomous, then create a scheduled automation in the Agent sidebar.

03

Walk away

The scheduler fires the agent on cron, streams each run live, and delivers results to your channels. You watch from anywhere.

Desktop app

Or run the whole workspace on your own machine.

The same IDE, terminal, git and agent — in a native window, with the workspace node running in-process. Close the window and it keeps working; the tray tells you when a run lands. It can also drive a node on another machine.

Windows

Windows 10 or 11. Download the .msi and run it. Not code-signed yet, so SmartScreen will warn — choose More info → Run anyway.

Download for Windows

macOS

One universal .dmg for Apple Silicon and Intel. Not notarized yet: if macOS calls it damaged, run xattr -dr com.apple.quarantine /Applications/Motion.app.

Download for macOS

Linux

.AppImage runs on any desktop distro; .deb and .rpm are there too. Built against glibc 2.35, so Ubuntu 22.04+ and Debian 12+.

Download for Linux
Get started

Give your agent a workspace that runs 24/7.

Self-host the open-source core in one container, or stand up the multi-tenant control plane for your team. Bring your own keys and your own repo.