Serai banner
preston-peterson preston-peterson

Serai

Development community

Description

A single attach point for your terminal, SSH, and Claude Code sessions across local and remote hosts, backed by tmux for persistence.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

serai

[![CI](https://github.com/preston-peterson/serai/actions/workflows/ci.yml/badge.svg)](https://github.com/preston-peterson/serai/actions/workflows/ci.yml) [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

A single attach point for your terminal, SSH, and Claude Code sessions — across the local machine and remote hosts — backed by tmux for persistence.

When you run a dozen coding agents at once, the hard question stops being "where is my terminal" and becomes **"which of these needs me right now?"** serai answers that first: it opens on a board of every session, colour-coded by what each one is actually doing, with a few lines of live pane output on each card. Click one to attach.

It holds **none of your fleet's credentials** — remote work goes through your ssh-agent, and tmux keeps every session alive when you detach.

![The board: every session, grouped by state](docs/screenshots/board.png)

What it does

**The board** is the landing view. One card per session, sorted so whatever needs you floats to the top, each showing a live preview of the pane so you can triage without attaching.

Every session reads as one of four states:

meaning how it's detected
working busy right now Claude: its status line says a turn is running. Shell: a non-shell process in the foreground, or fresh output.
blocked waiting on you a prompt marker in the pane tail — a permission ask, [sudo] password, (y/n)
done finished, unread a Claude session parked back at its prompt after recent activity, that you haven't opened
idle at rest a shell at its prompt, or a session dormant a while

Detection is a heuristic, and deliberately a cheap one: it reuses the pane capture already taken for the preview plus two fields tmux hands over for free, so a large fleet costs no extra round trips. See [Tuning](#tuning) to adjust the windows.

**The attached view** puts a compact rail of every ses