Skip to content

Attyx

Attyx is a GPU-accelerated, scriptable terminal environment written in Zig. Persistent sessions, splits, tabs, popups, GPU rendering, and a full IPC layer with the attyx CLI — so scripts and AI agents can drive your terminal programmatically. Everything in a single binary, under 5 MB.

Terminal window
brew install semos-labs/tap/attyx --cask
Terminal window
brew install semos-labs/tap/attyx

On Linux, Attyx installs as a desktop application. It should appear in your app launcher automatically. If it doesn’t, log out and back in to refresh the desktop entry cache.

Requires Zig 0.15.2+.

Terminal window
zig build run

Attyx is configured via ~/.config/attyx/attyx.toml. See the configuration docs for all options, or check the included attyx.toml.example for a quick-start template.

  • IPC + attyx CLI — scriptable control over splits, input, and screen content for agentic workflows
  • GPU-accelerated rendering — Metal on macOS, OpenGL on Linux
  • Sessions — tmux-style workspace management with a background daemon
  • Deterministic VT-compatible engine — predictable, reproducible terminal behavior
  • Status bar — configurable widgets for cwd, git branch, time, and custom scripts
  • Visual mode — Vim-inspired keyboard-driven text selection with character, line, and block modes
  • Command palette — searchable list of all actions with Cmd+Shift+P / Ctrl+Shift+P
  • Native macOS tabs — system window tabs alongside the built-in overlay tab bar
  • Full SGR support — 16, 256, and 24-bit true color
  • Scrollback buffer — configurable size with efficient memory usage
  • Mouse support — X10 and SGR mouse encoding, text selection
  • In-terminal search — incremental search with smart-case matching
  • TOML + CLI configuration — human-readable config with hot reload
  • Cross-platform — macOS and Linux
  • Unicode support — proper wide-character handling
  • Alternate screen buffer — full support for TUI applications
  • Hyperlinks — OSC 8 clickable URLs in terminal output
  • IME support — input method editor for CJK and other languages
  • Bracketed paste mode — safe pasting with shell awareness
  • Kitty graphics protocol — display images and rich visual content in the terminal
  • Kitty keyboard protocol — unambiguous key reporting with modifier keys, key release events, and full disambiguation
  • Background transparency + blur — opacity control with blur effects
  • Reflow on resize — preserves text wrapping when terminal size changes
  • Scroll regions — DECSTBM top/bottom margins for scrolling areas
  • Synchronized output — deferred rendering for smooth TUI updates
  • Session logging — bounded ring buffer of session events
  • Cursor trail — optional cursor trail effect

Configuration — TOML config file and hot reload

Font — font family, size, cell dimensions, and ligatures

Cursor — cursor shape, blinking, and trail effect

Window — decorations, padding, and background transparency

Shell — shell program, arguments, and working directory

Scrollback — scrollback buffer and text reflow

Themes — built-in and custom color schemes

Keybindings — rebind hotkeys and keyboard shortcuts

Custom Sequences — bind keys to raw escape sequences

Tabs & Splits — multiple tabs and split panes

Popups — floating terminal overlays

Status Bar — configurable widgets and custom scripts

Sessions — tmux-style workspace management

Visual Mode — keyboard-driven text selection

Command Palette — searchable action list

CLI — command-line flags

Integration — control Attyx from scripts and AI agents via IPC

Architecture — layers, data flow, and design decisions

VT Compatibility — supported escape sequences

Building from Source — build, run, and test