Suwu

Make the remote shell enjoyable
in agentic AI time.

Suwu: Omarchy inspired web remote shell - Make the remote shell enjoyable in agentic AI time. | Product Hunt

Your real shell, in a browser tab. Suwu gives agents and humans alike a tiling terminal that keeps running when you don't — refresh, disconnect, come back tomorrow, pick up where you left off.

Install

curl -fsSL https://raw.githubusercontent.com/liyu1981/suwu/refs/heads/master/install.sh | sh

The download lands in ~/.local/bin/suwu and walks you through onboarding.

See it in action.

Built for the way you actually work.

  1. A tile-based window manager, by keyboard or mouse

    Split, focus, move, and swap tiles with fast key bindings or a click and drag — whichever fits the moment. And your sessions live in the layout: refresh the page, drop the connection, even restart the server, and every tile comes back exactly as you left it.

  2. Full-featured terminals, perfect for agents

    Real shells with selection, copy/paste, scrollback, and notifications — comfortable for you, and a solid target for agent orchestrators like opencode, pi, and herdr that drive many terminals at once.

  3. Convenient apps for everyday dev work

    A file browser with download, a file viewer with auto-refresh, a TCP/UDP port forwarder, a database browser for SQLite, MySQL, and PostgreSQL, and a Postman-style REST helper that reaches localhost and your LAN from the server side — the small tools you'd otherwise reach for a second terminal or a GUI client, right in the grid next to your shells.

  4. From terminal to web, with suwu commands

    suwu send posts a notification to your screen from any script — pipe stdin, set a title. suwu forward opens a port-forwarding tile, suwu open resolves links and actions on the remote machine. Long builds finish? You'll know.

  5. Reachable, but only by you

    Access works out of the box on localhost, your LAN, or over the internet behind a reverse proxy — with password authentication, per-run tokens, and one-command HTTPS.

  6. Yours to tune

    Pick your font family and size, theme the colors, dial in a glassy background alpha, and choose a full-viewport background — an ambient blob, a looping video clip, or a WebGPU seascape — with a live preview in Settings. The interface speaks English and Chinese out of the box.

  7. Install once, stay current

    Onboarding sets up your dev environment step by step, and suwu upgrade keeps the binary fresh. No config files to babysit.

  8. Build output lands on your laptop

    Folder Sync mirrors a folder on the server into a folder on your own computer, one way and re-checked every few seconds — a local copy of what the build just produced, without a second shell or an rsync you have to remember.

    Server → local Read the docs →
  9. Your own apps, in a sandbox

    An extension is a small JavaScript program that returns an HTML page. It runs in a QuickJS isolate, in its own process, behind a strict content policy — with its own API routes, static assets, and a token that opens nothing but its own endpoints. Drop one in your data directory and it is an app tile.

    gqjs · sandboxed Read the docs →

Inspired by great work.

Suwu is inspired by Omarchy — the opinionated, keyboard-first Arch + Hyprland setup from DHH and team. With that same spirit, Suwu aims to bring that same level of enjoyment to the web-based remote shell — a terminal you would actually want to use day after day.

Built on the shoulders of creack/pty, libghostty-go, xterm.js, React, Tailwind CSS, Radix UI, and wazero.