A Linux-native dev environment manager. Manage dev servers, AI coding agents, and terminals from a single window.
Built with Rust, GTK4, and libadwaita for a native Linux desktop experience.
Note: TuxFlow is in early development. Expect rough edges, missing features, and breaking changes.
- Process management — Start, stop, restart dev servers and background tasks from one place
- AI agent support — Run Claude Code, Codex, Gemini CLI, OpenCode, and other AI agents side-by-side
- Agent idle notifications — Get notified when an agent finishes its turn (terminal BEL + optional silence fallback), with per-agent sound overrides
- Multi-project workspace — Open multiple projects in one window with expandable sidebar sections
- SSH connections — Connect to remote hosts from
~/.ssh/config, managed like any other process - Embedded terminals — Full VTE4 terminals with ANSI color, true color, and mouse support
- Auto-restart — Crashed processes restart automatically with exponential backoff
- File watching — Restart processes when source files change (glob patterns)
- Git integration — Status, diff, commit, push, and pull from a built-in dialog; live ahead/behind indicators and current branch in the status bar; auto-retry on transient pull errors
- Stack detection — Auto-detects your tech stack (Node.js, Rust, Go, Python, PHP, Docker) and suggests commands
- Port/URL detection — Detects ports and URLs in terminal output, Ctrl+click to open in browser
- Resource monitoring — Per-process CPU and memory usage via
/proc, aggregated across child process trees - MCP server — Exposes tools over Unix socket so AI agents can observe and control processes
- Command palette — Ctrl+Shift+P fuzzy search for quick actions
- Terminal search — Ctrl+Shift+F to search terminal output
- Drag-and-drop — Reorder processes in the sidebar
- Keyboard-driven — Fully configurable keyboard shortcuts
- Desktop notifications — Per-project title/icon, focus-aware suppression, bundled notification sounds with picker and preview
- Session restore — Window position, open projects, and process order persist across sessions
- TOML config — Simple, human-readable project configuration
- Theming — Dark/light/system theme with accent colors and terminal color schemes
- Linux (Ubuntu 24.04+, Fedora 39+, Arch, openSUSE Tumbleweed)
- GTK4 (>= 4.12)
- libadwaita (>= 1.4)
- VTE4 (vte-2.91-gtk4)
Download the latest .deb from GitHub Releases:
sudo dpkg -i tuxflow_*_amd64.deb
sudo apt-get install -f # install any missing dependenciesDownload the latest .tar.gz from GitHub Releases:
tar xzf tuxflow-*-x86_64-linux.tar.gz
cd tuxflow-*-x86_64-linux
./install.sh # installs to /usr/local (requires sudo)
./install.sh --user # installs to ~/.local (no sudo)
./install.sh --uninstall # remove installed files# Install system dependencies (Ubuntu/Debian)
sudo apt install libgtk-4-dev libadwaita-1-dev libvte-2.91-gtk4-dev build-essential
# Install system dependencies (Fedora)
sudo dnf install gtk4-devel libadwaita-devel vte291-gtk4-devel gcc
# Install system dependencies (Arch)
sudo pacman -S gtk4 libadwaita vte4
# Clone and build
git clone https://github.com/markovic-nikola/tuxflow.git
cd tuxflow
cargo build --release
# Run
./target/release/tuxflowtuxflow # opens in current directory
tuxflow /path/to/project # or specify a project pathTuxFlow auto-detects your tech stack and suggests commands. Add processes, agents, and terminals through the GUI with Ctrl+P.
Processes added through the GUI are saved to ~/.config/tuxflow/projects.toml. Global settings are managed through the Settings window (Ctrl+,) and stored at ~/.config/tuxflow/settings.toml.
Optionally, you can create a tuxflow.toml in your project root for version-controlled config:
[project]
name = "my-app"
[[process]]
name = "dev"
command = "npm run dev"
start_with_project = true
auto_restart = true| Key | Action |
|---|---|
Ctrl+Shift+P |
Command palette |
Ctrl+N |
Add project or process |
Ctrl+T |
New terminal |
Ctrl+, |
Settings |
Ctrl+F |
Filter processes |
Ctrl+Shift+F |
Terminal search |
Ctrl+Up/Down |
Previous/Next process |
Ctrl+Shift+Up/Down |
Previous/Next project |
Ctrl+G |
Quick jump |
Ctrl+W |
Close agent/terminal |
Ctrl+Left/Right |
Focus sidebar/terminal |
Ctrl+\ |
Toggle sidebar |
Ctrl+Alt+S |
Start/Stop process |
Ctrl+Alt+R |
Restart process |
Ctrl+Alt+C |
Clear output |
Ctrl+=/- |
Increase/Decrease font size |
Ctrl+Shift+C/V |
Copy/Paste |
All shortcuts are configurable via Settings > Hotkeys.
TuxFlow exposes an MCP server over a Unix socket at /tmp/tuxflow-<project>.sock. AI agents can use it to:
- List and monitor running processes
- Read terminal output / logs
- Start, stop, and restart processes
To connect from Claude Code, add to your MCP config:
{
"mcpServers": {
"tuxflow": {
"command": "tuxflow-mcp",
"args": ["my-project"]
}
}
}The argument is the project name (as shown in TuxFlow). If omitted, tuxflow-mcp auto-discovers the socket when run from within the project directory.