Skip to content

Introduction

Gaurav Gosain edited this page Oct 2, 2026 · 4 revisions

TUIOS is a terminal multiplexer and window manager with workspaces, tiling, persistent sessions and a vim-style modal interface.

TUIOS (Terminal UI Operating System) runs many shells inside one terminal. Each shell gets its own window. You arrange windows with tiling or by hand, group them into nine workspaces, and detach and come back later without losing anything.

tuios with four tiled panes, and the sidebar listing the session, its files and the agents in it

Install

Homebrew

brew install tuios

Arch (AUR)

yay -S tuios-bin

Script

curl -fsSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bash

Go

go install github.com/Gaurav-Gosain/tuios/cmd/tuios@latest

Nix, Docker, release binaries and building from source are covered in Getting Started.

Run it

tuios

Press n to open a window, i to type in it, and Alt+Esc to get back to window management. Ctrl+P opens the command palette, which lists every command. Getting Started walks through the rest.

Note

tuios starts a background daemon and attaches to a session in it. Close the terminal and the session keeps running. Run tuios again to get it back.

What you get

Windows and layout

  • Two modes, modelled on vim: window management mode for arranging windows, terminal mode for typing into one.
  • BSP tiling by default, with explicit splits, preselection, swapping and resizing. Master-stack and a niri-style scrolling layout are one palette command away.
  • Nine workspaces, zoom, minimize, layout templates and optional shared borders.
  • A session rail on the right lists your sessions, panes, files and agents.
  • A command palette (Ctrl+P) and an app launcher (Alt+Space).

Sessions

  • A daemon owns the shells, so detaching costs nothing and several terminals can attach to one session at once.
  • Window layout and working directories come back after a daemon restart or a reboot. Running programs and scrollback do not. See Sessions.
  • Sessions and single panes can live on other machines, reached over ssh.

Scripting

  • A JSON control protocol on the daemon socket, with blocking waits and an event stream.
  • CLI commands for the same things: send-text, capture-pane, wait-for, new-window and more.
  • Tape scripts to record and replay workflows, and hooks that run shell commands on window, session and agent events.

Agents

  • Panes that run coding agents report whether the agent is working, idle or waiting for you. See Agents.
  • One Inbox lists every approval, question and finished turn waiting for you, in every session, and answers them from where you are.
  • Review what an agent changed, leave notes on its lines, and send them back. Fan one prompt out to several agents in git worktrees and keep the best result.

Terminal

  • Vim-style copy mode over 10,000 lines of scrollback per window, plus mouse wheel scrolling and selection.
  • Multi copy mode searches every pane of the multifocus set at once and copies the selection of each pane.
  • Hints put a label on each URL, path and hash in a pane. Type the label to copy the text.
  • Kitty graphics (including mpv --vo=kitty video), sixel passthrough, the kitty keyboard protocol and synchronized output.
  • 342 built-in themes with a live picker, and an in-app settings page.

Remote access

  • tuios ssh serves TUIOS over SSH with public key authentication.
  • tuios-web, a separate binary, serves it to a browser. See Web Terminal.

Where to go next

  • Getting Started: Install, first session, and the keys you need on day one
  • Keybindings: Every default key, and how to change them
  • Configuration: The config file, themes and the settings page
  • Sessions: Detach, reattach, and what survives a restart
  • BSP Tiling: Splits, preselection, resizing and layout modes
  • Control Protocol: Drive the daemon from scripts and programs

Community

Clone this wiki locally