Releases: Gaurav-Gosain/tuios
v0.7.0
What's New in v0.7.0
Video Playback
You can now watch videos inside tuios. mpv --vo=kitty works with both shared memory and base64 modes. For the best experience, use --vo-kitty-use-shm=yes which sends just a file reference instead of streaming megabytes of pixel data through the terminal. youterm also works out of the box.
Kitty Keyboard Protocol
Full support for the kitty progressive enhancement keyboard protocol with push/pop/query. Fish 4.x enables this automatically on startup, and it just works. Capital letters and other shifted printable keys are sent as text directly rather than CSI u encoding, which is what shells actually expect.
Kitty Graphics Improvements
- Static images (icat, yazi) render with proper vertical clipping when they extend past the viewport
- Images hide cleanly when the window goes out of bounds on any edge
- Fixed a bug where raw APC data was double-wrapped, which was silently breaking all direct base64 image transfers
- Shared memory transfers now send the correct shm object name to the host terminal
Pane Zoom
Press z in window management mode or Ctrl+B z in terminal mode to fullscreen any pane. When using shared borders, the zoomed pane renders without individual borders and the separator lines are hidden. The dockbar shows a Z indicator when a pane is zoomed.
Layout Prefix
Ctrl+B L opens a layout submenu where l loads and s saves a layout template. Loading is non-destructive now: existing windows get repositioned to match the template instead of being killed. If you have more windows than the template needs, the extras get minimized.
Copy Mode Drag Auto-Scroll
When you drag a selection above or below the pane in copy mode, scrolling now continues smoothly even if you stop moving the mouse. This uses a timer that fires every 50ms while you hold the mouse outside the content area.
Protocol Support
- OSC 4 palette color queries and sets
- OSC 52 clipboard operations
- Mode 2026 (synchronized output) and mode 2027 (unicode core)
- DA1 response includes sixel capability
- OSC 66 kitty text sizing (experimental, has known scrollback issues)
Quit Confirmation
New --confirm-quit flag and confirm_quit config option to always show the quit dialog, regardless of whether there are active foreground processes.
Bug Fixes
- Fixed crashes from concurrent map access in HasMouseMode (uses atomic bools now)
- Thread-safe KittyKeyboardFlags via atomic cache
- Sixel passthrough improvements with better viewport clipping
- Fixed prefix commands (Ctrl+B z, Ctrl+B L) not working in window management mode
- Fixed Dockerfile Go version to match go.mod
Known Limitations
- Kitty text sizing protocol (OSC 66) has basic passthrough but breaks with scrollback and window repositioning
- Sixel passthrough works but lacks pixel-level clipping
- Kitty animation protocol (a=f, a=a, a=c) is not supported yet
- Video playback without shm can flicker depending on frame rate and terminal performance. Use
--vo-kitty-use-shm=yeswhen possible.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.7.0tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.7.0Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
New Features
- ae0f742: Reapply "feat: grid-based shared borders with proper junction characters" (@Gaurav-Gosain)
- b5ab00f: Reapply "feat: shared borders between tiled windows (simple overlap approach)" (@Gaurav-Gosain)
- e7dd53d: Revert "feat: grid-based shared borders with proper junction characters" (@Gaurav-Gosain)
- 4caa307: Revert "feat: grid-based shared borders with proper junction characters" (@Gaurav-Gosain)
- b26925e: Revert "feat: shared borders between tiled windows (simple overlap approach)" (@Gaurav-Gosain)
- dd246e3: Revert "feat: shared borders with post-compositing junction character fix" (@Gaurav-Gosain)
- cdff775: feat: OSC 66 text sizing passthrough with PostRenderWriter (@Gaurav-Gosain)
- f77543d: feat: add --confirm-quit flag and confirm_quit config option (@Gaurav-Gosain)
- 8308b3b: feat: add command palette (ctrl+p) with fuzzy search (@Gaurav-Gosain)
- 4e9f823: feat: add kitty keyboard protocol, OSC 4/52/66, mode 2026/2027, thread-safe mouse modes (@Gaurav-Gosain)
- adca477: feat: add scrollback browser with OSC 133 parsing, vim navigation, and mouse support (@Gaurav-Gosain)
- 0acc9f0: feat: add session switcher overlay (prefix+S or command palette) (@Gaurav-Gosain)
- 7d086f7: feat: comprehensive layout template v2 with CLI, BSP, CWD, startup commands (@Gaurav-Gosain)
- cc3c86c: feat: grid-based shared borders with proper junction characters (@Gaurav-Gosain)
- 1fa11a6: feat: interactive scrollbar with theme colors, click-to-jump, drag support (@Gaurav-Gosain)
- c26deaa: feat: kitty keyboard protocol input pipeline (CSI u encoding) (@Gaurav-Gosain)
- e8d4db8: feat: layout prefix (Ctrl+B L) with save/load, non-destructive layout loading (@Gaurav-Gosain)
- 3ec872c: feat: mouse wheel scrollback + visibility gating for hidden panes (@Gaurav-Gosain)
- 3e11e2a: feat: pane zoom, scrollback search, layout templates, fast render path (@Gaurav-Gosain)
- 1dab0af: feat: pass through kitty animation/frame/compose commands (@Gaurav-Gosain)
- de22884: feat: ranked fuzzy search in command palette (@Gaurav-Gosain)
- 6000e9f: feat: scrollback position indicator on window border (@Gaurav-Gosain)
- c87bd47: feat: scrollbar click/drag, dark gray colors, hide during manipulation (@Gaurav-Gosain)
- 67de79e: feat: scrollbar in border + selection auto-scroll (@Gaurav-Gosain)
- 114b793: feat: shared borders between tiled windows (@Gaurav-Gosain)
- 42cf5d6: feat: shared borders between tiled windows (simple overlap approach) (@Gaurav-Gosain)
- a32d979: feat: shared borders with post-compositing junction character fix (@Gaurav-Gosain)
- f46f63e: feat: smart split, scrollback indicator, and graphics refresh in render path (@Gaurav-Gosain)
- 97920db: feat: timer-based continuous auto-scroll for copy mode drag selection (@Gaurav-Gosain)
- e9608d6: feat: tmux-style shared borders with separator overlay (@Gaurav-Gosain)
- 626af67: feat: visual scrollbar in copy mode using block characters (@Gaurav-Gosain)
- df56e4c: feat: workspace-aware PTY subscriptions (@Gaurav-Gosain)
Bug Fixes
- b901997: Revert "fix: shared borders resize + remove broken junction fixer" (@Gaurav-Gosain)
- af344cc: fix: Ctrl+B passthrough uses CSI u when kitty keyboard active, thread-safe flags (@Gaurav-Gosain)
- 4fd97b9: fix: add bounds checking for video frame placement (@Gaurav-Gosain)
- 5b8bd71: fix: add q=2 and proper m=1 to streamed kitty graphics continuation chunks (@Gaurav-Gosain)
- 61fa9e7: fix: all tiling toggle paths now use ToggleAutoTiling() (@Gaurav-Gosain)
- 51bf80f: fix: borders appear/disappear immediately when toggling tiling mode (@Gaurav-Gosain)
- b4bdc01: fix: clear cached content when disabling tiling so borders render immediately (@Gaurav-Gosain)
- 54c356b: fix: clear stale image placement when dimensions change on resize (@Gaurav-Gosain)
- d911c17: fix: copy mode dock indicator color from neon yellow (#ffff00) to soft amber (#e0af68) (@Gaurav-Gosain)
- defce9f: fix: ctrl+d window close race + eliminate kitty graphics flicker (@Gaurav-Gosain)
- a0a163b: fix: deduplicate sixel renders + revert to BorderOffset for X position (@Gaurav-Gosain)
- 7768dff: fix: disable shared borders (flag exists but not yet implemented) (@Gaurav-Gosain)
- 81...
v0.6.0
TUIOS v0.6.0 Release
New Features
Kitty Graphics Protocol Support (Experimental)
TUIOS now supports the Kitty graphics protocol for inline image display. Applications running inside TUIOS can display images directly in the terminal when using a compatible host terminal.
Supported terminals: Kitty, WezTerm, Ghostty, iTerm2, Foot, Contour
Warning
Experimental: This feature is experimental and bugs are expected. Use TUIOS_KITTY_GRAPHICS=0 to disable if you encounter issues.
Terminal Mode Shortcuts
New keybindings that work directly in terminal mode without requiring the prefix key:
| Platform | Next Window | Previous Window | Exit Terminal Mode |
|---|---|---|---|
| macOS | Opt+Tab | Opt+Shift+Tab | Opt+Esc |
| Linux/Windows | Alt+N | Alt+P | Alt+Esc |
These shortcuts let you quickly cycle between windows or exit terminal mode without interrupting your workflow.
Native Cursor Shape Rendering
TUIOS now renders native cursor shapes (block, bar, underline) with blink support. This is particularly useful for vi-mode users in shells like zsh where the cursor changes based on editing mode:
- Normal mode → Block cursor
- Insert mode → Bar cursor
Improvements
- Performance: Skip animation calculations when no animations are active
- Compatibility: Improved arrow key handling in ncurses applications (cmus, htop, etc.)
- Platform: Split Unix capability detection into separate Darwin and Linux implementations
Bug Fixes
- Fixed paste not working in daemon mode (#71)
- Fixed cursor shape rendering using real terminal cursor for native vi-mode support (#70)
- Fixed safe color comparison during rapid scrollback to prevent crashes
- Fixed various Kitty graphics issues:
- Image clipping and passthrough mode
- Scroll position and placeholder spacing
- Multi-window support and drag handling
- Altscreen handling and cleanup
- Virtual placement handling
...
v0.5.1
TUIOS v0.5.1 Release
A terminal-based window manager with tmux-style keybindings.
What's New
tuios-web is now released as a separate binary! This provides better security isolation
by separating the web server functionality from the main TUIOS binary.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.5.1tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.5.1Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
Bug Fixes
- 5343d9f: fix: preserve --hide-clock flag when creating new windows (@Gaurav-Gosain)
- e246515: fix: preserve --window-title-position flag when creating new windows (@Gaurav-Gosain)
Full Changelog: v0.5.0...v0.5.1
v0.5.0
TUIOS v0.5.0 - Major Release
Released: December 25, 2025
Documentation: https://tuios.gaurav.zip
Note: Throughout this document,
Ctrl+Brefers to the default leader key. This is configurable via theleader_keyoption in your config file. See CONFIGURATION.md for details.
Highlights
TUIOS v0.5.0 is the biggest release yet, adding persistent sessions with daemon mode, multi-client collaboration, and comprehensive remote control capabilities.
Three Major Features
1. Persistent Sessions
persistent-sessions.mp4
Sessions now survive disconnects and crashes with automatic daemon management. The daemon starts in-process when you create or attach to a session.
# Create a persistent session
tuios new work-session
# Detach (Ctrl+B d) and come back later
tuios ls
tuios attach work-sessionFull state preservation: windows, layouts, BSP trees, terminal content, scrollback history. Sessions persist as long as the daemon process is running.
2. Multi-Client Support
multi-client.mp4
Multiple users can attach to the same session simultaneously with real-time state synchronization. Perfect for pair programming and remote troubleshooting.
# Terminal 1
laptop$ tuios new pairing
# Terminal 2 (different machine)
remote$ tuios attach pairing
# Or via SSH using username as session name
remote$ ssh -p 2222 pairing@yourserverBoth clients see the same session in real-time with synchronized focus, mode changes, and terminal output.
SSH Integration: Connect to sessions directly via SSH username:
ssh -p 2222 mysession@localhost- Attach to "mysession"- Session picker appears if no session specified
See MULTI_CLIENT.md for complete guide.
3. Remote Control CLI
remote-commands.mp4
Comprehensive automation and scripting capabilities. Control TUIOS from external scripts without attaching a TUI.
# Send keystrokes
tuios send-keys "ctrl+b n"
# Execute commands
tuios run-command NewWindow "build-server"
# Change configuration at runtime
tuios set-config dockbar_position top
# Execute tape scripts remotely
tuios tape exec deploy.tape
# Inspect state without TUI
tuios list-windows --json
tuios session-info12+ remote commands with full shell completion support.
New Features
BSP Tiling Enhancements
bsp.mp4
Advanced manual control for precise layouts:
- Preselection:
Ctrl+B Shift+H/J/K/L- Control where next window spawns - Manual splits:
Ctrl+B -(horizontal),Ctrl+B |(vertical) - Split rotation:
Ctrl+B R- Rotate split direction - Equalize splits:
Ctrl+B =- Reset to 50/50 ratios - Edge-based resizing:
>,<,.,,,},{,],[
BSP layouts are serialized and restored in daemon mode.
See BSP_TILING.md for workflows and examples.
Mouse Edge Snapping
Drag windows to screen edges for intuitive snapping:
- Top center → Fullscreen
- Left/Right edge → Half screen
- Corners → Quarter screen
- Works in floating window mode for window swapping
Tape Recording
Live session recording with keybindings:
Ctrl+B T r # Start recording
Ctrl+B T s # Stop recording
Ctrl+B T p # Pause/Resume
tuios tape list
tuios tape play recording.tapeSee TAPE_RECORDING.md for complete guide.
Library Export
Use TUIOS as an importable Go library:
import "github.com/Gaurav-Gosain/tuios/pkg/tuios"
app := tuios.New(
tuios.WithTheme("dracula"),
tuios.WithAnimations(false),
tuios.WithShell("/bin/fish"),
)See LIBRARY.md for API documentation.
Native Windows Support
Full daemon mode support on Windows 10+ (build 17063+) with ConPTY.
Showkeys Overlay
Display pressed keys on-screen for presentations and screencasts:
tuios --show-keys
# Or toggle in session: Ctrl+B D kSee SHOWKEYS.md for configuration options.
Window Customization
New appearance options:
window_title_position- bottom, top, or hiddenhide_clock- Hide clock overlay--no-animations- Instant transitions for tape playback
Bug Fixes
Critical Race Conditions
Fixed multiple critical data races:
- Client.Close() double-close protection with sync.Once
- Window suppressCallbacks converted to atomic.Bool
- Daemon goroutine lifecycle management with sync.WaitGroup
- 5-second graceful shutdown timeout
All tests now pass with race detector.
VT Emulator
- Drain VT responses to prevent escape sequence leaks
- Proper VT response forwarding in daemon mode
- Nil color panic prevention (synced from upstream)
- Graceful write-after-close handling
Platform-Specific
- Fixed macOS keybind mapping (opt+ vs alt+)
- Fixed daemon mode window sizing on reattach
- Fixed BSP tree persistence on window swap
Architecture Changes
Charm.land Migration
Migrated from github.com/charmbracelet to charm.land packages:
- Bubble Tea v2.0.0-rc.2
- Lipgloss v2.0.0-beta.3
- Wish v2.0.0
- Sip v0.1.11
Updated API compatibility for new package versions.
Code Organization
CLI Modularization: Split main.go into 7 focused modules for better maintainability.
Render Splitting: Split render.go into 5 specialized modules (dock, overlays, terminal, helpers).
New Session Package: Added internal/session/ for daemon, client, protocol, and state management.
VT Emulator Sync: Updated deprecated constants, simplified grapheme width calculation.
Documentation
New Guides
- BSP_TILING.md - Complete BSP guide with practical workflows
- TAPE_RECORDING.md - Session recording and playback
- SHOWKEYS.md - Overlay configuration for presentations
- LIBRARY.md - Go library usage and API reference
- MULTI_CLIENT.md - Multi-client collaboration guide
Updated Documentation
- CLI_REFERENCE.md - Complete remote control command reference
- ARCHITECTURE.md - Multi-client architecture diagrams
- KEYBINDINGS.md - New BSP and recording keybinds
- CONFIGURATION.md - New appearance options
- README.md - Expanded feature overview
Testing
Added comprehensive test coverage:
- Session management tests (protocol, multi-client scenarios)
- BSP tree manipulation tests
- Tape executor tests
- Memory pool tests
- Theme and config tests
- Concurrency and race condition tests
All tests pass with race detector. Zero staticcheck warnings.
Remote Control Reference
Understanding --literal and --raw
The send-keys command has two important flags that control how keys are processed:
Without any flags (default mode):
- Keys are sent to TUIOS itself (for window management, mode switching, etc.)
- Both spaces and commas split the input into separate key arguments
- Examples:
tuios send-keys "ctrl+b n"→ Sends Ctrl+B, then n (two keys)tuios send-keys "ctrl+b,n"→ Same as above (comma splits)tuios send-keys "a b c"→ Sends a, then b, then c (space splits)
--literal flag:
- Keys are sent directly to the terminal PTY (bypass TUIOS key handling)
- Still splits on spaces and commas by default
- Example:
tuios send-keys --literal "echo hello"→ Sends "echo", then "hello" (WRONG!)
--raw flag:
- Treats each character as a separate key
- NO splitting on spaces or commas
- Each character becomes its own key press
- Example:
tuios send-keys --raw "hello world"→ Sends h, e, l, l, o, space, w, o, r, l, d
Combining --literal and --raw (for typing text in terminal):
# Correct way to type text with spaces in the terminal
tuios send-keys --literal --raw "echo hello world"
# This sends each character to the PTY, including spacesCommon Patterns:
# Send TUIOS commands (window management)
tuios send-keys "ctrl+b n" # Create new window
tuios send-keys "ctrl+b,t" # Toggle tiling (comma separator)
tuios send-keys "\$PREFIX q" # Quit (using PREFIX token)
# Send keys to terminal
tuios send-keys --literal --raw "ls -la" # Type command in terminal
tuios send-keys --literal --raw "cd /tmp" # Change directory
# Raw mode for text with spaces (without literal, goes to TUIOS)
tuios send-keys --raw "some text" # Each character as separate key to TUIOSSpecial Keys:
Enter, `R...
v0.4.4
TUIOS v0.4.4 Release
A terminal-based window manager with tmux-style keybindings.
What's New
tuios-web is now released as a separate binary! This provides better security isolation
by separating the web server functionality from the main TUIOS binary.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.4.4tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.4.4Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
New Features
- 31a5a66: feat: add BSP tiling with manual split controls and fix Shift+Tab PTY forwarding (@Gaurav-Gosain)
- 302d802: feat: add animation toggle with instant transitions when disabled (@Gaurav-Gosain)
Other Changes
- d2df064: Add development environment setup to README (@ShalokShalom)
Full Changelog: v0.4.3...v0.4.4
v0.4.3
TUIOS v0.4.3 Release
A terminal-based window manager with tmux-style keybindings.
What's New
tuios-web is now released as a separate binary! This provides better security isolation
by separating the web server functionality from the main TUIOS binary.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.4.3tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.4.3Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
Bug Fixes
- afec85c: fix: fixed tuios and tuios-bin conflicts on AUR (@Gaurav-Gosain)
Full Changelog: v0.4.2...v0.4.3
v0.4.2
TUIOS v0.4.2 Release
A terminal-based window manager with tmux-style keybindings.
What's New
tuios-web is now released as a separate binary! This provides better security isolation
by separating the web server functionality from the main TUIOS binary.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.4.2tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.4.2Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
Bug Fixes
- f9bd43d: fix: add theme init for tuios-web + bump sip version (@Gaurav-Gosain)
Full Changelog: v0.4.1...v0.4.2
v0.4.1
TUIOS v0.4.1 Release
A terminal-based window manager with tmux-style keybindings.
What's New
tuios-web is now released as a separate binary! This provides better security isolation
by separating the web server functionality from the main TUIOS binary.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix:
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.4.1tuios-web (Web Terminal Server)
Homebrew (macOS/Linux):
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
# Using yay
yay -S tuios-web-bin
# Using paru
paru -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.4.1Manual Download:
Download the appropriate tuios_* or tuios-web_* archive for your platform below, extract it, and run.
Changelog
New Features
- 61489df: feat: add install script for tuios-web (@Gaurav-Gosain)
Other Changes
- 1998dad: build(deps): bump sip to v0.1.8 (@Gaurav-Gosain)
Full Changelog: v0.4.0...v0.4.1
v0.4.0
TUIOS v0.4.0
A terminal-based window manager with tmux-style keybindings.
Highlights
- tuios-web now powered by sip: The web terminal functionality has been migrated to use the sip library, a standalone package for serving Bubble Tea apps through the browser
- Reduced repository size: Removed 10MB of embedded web assets (fonts, xterm.js, etc.) now bundled in sip
- Tape Manager UI: New interactive UI for managing tape recordings
- ShowKeys Overlay: Visual keyboard input display for demos and tutorials
Breaking Changes
None. The tuios-web binary works exactly as before.
Installation
TUIOS (Terminal Window Manager)
Quick Install (Linux/macOS):
curl -fsSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew:
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR):
yay -S tuios-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.4.0tuios-web (Web Terminal Server)
Quick Install (Linux/macOS):
curl -fsSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install-web.sh | bashHomebrew:
brew tap Gaurav-Gosain/tap
brew install tuios-webArch Linux (AUR):
yay -S tuios-web-binGo Install:
go install github.com/Gaurav-Gosain/tuios/cmd/tuios-web@v0.4.0Changelog
New Features
- Tape Manager UI for interactive tape recording management
- ShowKeys overlay for keyboard input visualization
- Web terminal server for browser-based access
- Configurable leader key with visual highlighting
Improvements
- Migrated tuios-web to use sip library
- Modernized codebase and enhanced tape scripting system
- Improved showkeys visual design and positioning
Bug Fixes
- Fixed terminal dimensions initialization from browser
- Fixed program startup ordering
- Resolved gopls warnings and linter issues
Full Changelog: v0.3.4...v0.4.0
v0.3.4
TUIOS v0.3.4 Release
A terminal-based window manager with tmux-style keybindings.
Installation
Quick Install (Linux/macOS)
curl -sSL https://raw.githubusercontent.com/Gaurav-Gosain/tuios/main/install.sh | bashHomebrew (macOS/Linux)
brew tap Gaurav-Gosain/tap
brew install tuiosArch Linux (AUR)
# Using yay
yay -S tuios-bin
# Using paru
paru -S tuios-binNix
# Run directly
nix run github:Gaurav-Gosain/tuios#tuios
# Or add to your configuration
nix-shell -p tuiosManual Download
Download the appropriate binary for your platform below, extract it, and run:
./tuiosGo Install
go install github.com/Gaurav-Gosain/tuios/cmd/tuios@v0.3.4Changelog
New Features
Bug Fixes
- 1ede376: fix: add tuios.exe to gitignore (@NSPC911)
- 3c566d3: fix: prevent freeze when rapidly switching from resize to drag (@Gaurav-Gosain)
Other Changes
- 3aafbd5: Removing enterprise BS test from CONTRIBUTING.md (@Gsirawan)
- 915bc1b: add contributing guide for new contributors (@Gsirawan)
Full Changelog: v0.3.3...v0.3.4