Download Cockpit
Built straight from CI, with a published SHA-256 for every file. Take the desktop app for your machine, the Android client for your tablet, and the one-line installer for a Linux host you want to reach over SSH.
Choose your platform
Every build below comes with its size and its SHA-256.
Remote Pi Cockpit
A multiplexed terminal where an IDE grows around your agents: viewer, diagnostics, git, worktrees and databases, on your own machine or on any host you reach over SSH.
Every 2.x release is a beta of 2.0.0 until the consolidated notes ship. Panels: a live HTML page whose buttons run things on your machine. A new .panel file type opens as a web view with window.cockpit injected: any script in the page can call await cockpit("exec git status"), cockpit("db query main 'select ...'") or any other CLI verb and get the result back as {ok, code, stdout, stderr, json}. No server, no ports: each call runs the internal CLI on this machine, so what works in a tab works in the page. Ask the agent for a quick dashboard, a status board or a form that triggers a task, and open it from the Gallery.
Added
- `.panel` files: HTML with an optional YAML frontmatter (
title,reload,cwd). The tab reloads when the file changes, takes the app theme as--ckp-*CSS variables, serves relative assets from the file's folder and opens external links in the OS browser. Right-click offers "Open as HTML" to edit the source (with HTML highlighting). - `cockpit exec`: run a shell line through the app (login shell) and get its output and exit code;
--json,--cwdand--timeoutsupported. It is what panel buttons use under the hood. - Gallery card and file icon for panels; the agent skill documents the format and the bridge.
macOS
One universal build for Apple Silicon and Intel.
Requires macOS 12.0 or later. Apple Silicon and Intel.
aed8b613bf…9c57a7acd7- Open the downloaded
.dmg. - Drag Remote Pi Cockpit into your Applications folder.
- Launch it from Applications or Spotlight.
The build is signed with a Developer ID and notarized, so it opens without a Gatekeeper prompt.
Windows
Installer for Windows 10 and 11 on x64.
Requires Windows 10 or 11, x64. There is no native arm64 build.
8266fb6030…e9ea64d684This build isn't code-signed yet, so Windows SmartScreen may warn that the publisher is unknown. To continue:
Click More info, then Run anyway — and follow the installer.
Linux
.deb and .rpm packages for x86_64 and arm64.
Requires GTK3 with libmpv, libsecret and ALSA, on x86_64 or arm64. Built and tested on Ubuntu 24.04 and Fedora 40.
Download the package for your architecture, then install it:
sudo dpkg -i remote-pi-cockpit_2.1.2_amd64.deb sudo apt-get install -f # pull in any missing dependencies
sudo dnf install ./remote-pi-cockpit-2.1.2.x86_64.rpm
Swap amd64/x86_64 for arm64/aarch64 on ARM machines. The app then appears in your applications menu.
Installing a package over a running Cockpit replaces files the app has open. Quit it first, then install, then start it again.
Android
The mobile client, as a direct APK for arm64 phones and tablets.
Requires Android on arm64. There is no 32-bit or x86 build.
3c68407c48…a631366948- Download the
.apkto your phone or tablet. - Tap the file to start installing.
- If Android blocks it, allow your browser to install unknown apps when prompted, then continue.
- Optional: check that the SHA-256 above matches the file you downloaded.
The mobile Cockpit is a client: it connects over SSH to a host that runs cockpit-server, and everything (terminals, agents, files, git) happens on that machine. It does not run agents on the tablet itself, so prepare a host first, either from a desktop Cockpit or with the one-line installer below.
Cockpit is a terminal first: no account, no cloud, nothing else to install. Agents run as ordinary processes in its tabs, so you bring the harness you already use (Claude Code, Codex CLI, Pi, OpenCode). Every command and file format lives in the Cockpit reference.
Put Cockpit on a machine with no desktop
One command turns a VPS, a build server or a Raspberry Pi into a host you can open as a remote workspace, and it is how the mobile client reaches a machine that no desktop has prepared before.
Install the server
Run this on the host, over SSH.
curl -fsSL https://remote-pi.jacobmoura.work/cockpit-server.sh | bash
The script detects the architecture, downloads the matchingcockpit-server zip from the GitHub release, verifies its SHA-256 and installs into ~/.cockpit/server, linking the binary into ~/.local/bin. Nothing is exposed on the network: the app talks to it through an SSH tunnel.
# register a systemd --user unit so the server is up after a reboot curl -fsSL https://remote-pi.jacobmoura.work/cockpit-server.sh | bash -s -- --service # pin a version instead of taking the latest release COCKPIT_VERSION=2.1.2 curl -fsSL https://remote-pi.jacobmoura.work/cockpit-server.sh | bash
Piping a script into bash deserves a look first: read the source of the installer (the short URL redirects to it), or download it, read it, and run it as a file.
Client and server are released together, and the app refuses a host running a different version. Keep both on the same release, or pin the server with COCKPIT_VERSION=2.1.2. A desktop client fixes a mismatch by itself over SSH; from the mobile client, re-run the installer on the host.
Start at boot needs linger on most distributions; the --service path tries to enable it and prints the onesudo line to run when it cannot. The full story, including how a desktop installs the server for you and what to do when a connection fails, is in the remote hosts reference.