r/tmux 1d ago

Other Are memes allowed?

Post image
312 Upvotes

r/tmux 9h ago

Showcase Making tmux more accessible with menu options that can manage panes

Enable HLS to view with audio, or disable this notification

4 Upvotes

I have recently started improving tmux usage in my workspace productivity app called Oyren. Briefly, Oyren provides remote codespaces where users can vibecode and run agents 24/7 with no human needed in the loop for some time. My work is to make this length as long as possible without sacrificing quality and cost costraints. I think tmux is a great tool for this problem but it can be not beginner friendly. Especially for someone who is just a vibecoder and is new to development in general. What they need is agents running on their own. They might not be proficient with terminal usage in general. So I added a feature to my app to manage tmux panes and reorganise them as needed.

Would this make tmux easier for you to use?


r/tmux 1d ago

Question TMUX History: why is % for a vertical split and " for a horizontal split?

38 Upvotes

I always think that in TMUX, the double quote character (") looks like two panels side by side.

And percentage (%) to me looks more like two panels on top of each other.

Obviously these are the opposite way around in reality.

Is this just random or was this on purpose at some point? Curious if anyone knowns the history of these binds.


r/tmux 18h ago

Question tmux over ssm redraw issue with vertical panes

2 Upvotes

I'm seeing a strange tmux display/rendering issue and am looking for ideas. This went away for at first when using iTerm 2, but then it started happening there as well.

Environment:

- Mac (apple terminal)

- AWS EC2 Ubuntu

- Connected via AWS SSM and also tested via SSH-over-SSM

- tmux 3.2a

- Vertical split panes (Ctrl-b %)

Problem:

- If I run `less file.py` (large file) in the RIGHT pane, the LEFT pane gets visually corrupted/redrawn.

- Content from the right pane appears to wrap into or overwrite parts of the left pane.

- Keystrokes are NOT sent to both panes.

- The panes are independent (`%0` and `%1`).

- The issue does NOT occur with a horizontal split (Ctrl-b ").

- The issue does NOT occur outside tmux.

- The issue persists when connecting via normal SSH-over-SSM, so it doesn't seem specific to the interactive SSM terminal.

What I've checked:

- synchronize-panes is off

- tmux panes have correct widths:

- %0 = 120 cols

- %1 = 119 cols

- window width = 240 cols

- `stty size` looks normal

- `wc -L` on the file is only ~122 chars, so not huge lines

- `seq 1 1000` in the right pane does NOT reproduce the issue

- `tmux kill-server` did not help

- Fresh tmux session did not help

- `$TERM` outside tmux: `xterm-256color`

- `$TERM` inside tmux: `screen`

- Added `set -g default-terminal tmux-256color` but behavior unchanged

- Mouse on/off did not resolve it

Additional observation:

- The issue appears to be triggered by full-screen/alternate-screen apps such as `less`, not normal streaming output.

- `Ctrl-L` in the left pane does not fully repaint the display correctly.

Has anyone seen a tmux rendering bug that only affects left/right pane splits, especially with `less` or other full-screen applications?


r/tmux 1d ago

Question TUI dash or simple bash for tmux advice

Thumbnail
2 Upvotes

Any advice or opinion on dashvoard TUI

Y'all I'm wondering and looking for advice/feedback if building a simple TUI or having some custom tmux config for a dashboard that will open default tools in panes or some type of widget could be helpful. Wanted to get feedback or just chat about whether its worth building since I'm pretty busy with things.

Ive seen in the past when I briefly attempted to use Obsidian (which reminds me, I need to cancel that $4 subscription at some point) that other redditors set up visually appealing dashboards that seem to have info/links, though I can't name one.

Obviously I can't know if it would be useful in getting me into a workflow more quickly where I'm productive rather than scatterbrained or clueless like I am much of the time. Important to include in my question as well as to speak to the clueless aspect of me: does this exist? This is really my only motivation for potentially making one, but I don't feel like wasting time doing work making tools in order to do actual work more than I already do, and I'm able to decently maintain my tmux sessions, panes and windows in an organized chaos.

Would be cool to shoot the shit about this or collaborate in a public repo. I'm just gonna have Claude do the coding but I would like to take care with planning and iteration.


r/tmux 3d ago

Showcase WMUX - A fast, persistent, customizable terminal multiplexer for Windows, Linux and macOS

Thumbnail github.com
0 Upvotes

I released wmux v1.0.17, an open-source terminal multiplexer built around one consistent experience across Windows, Linux and macOS.

The architecture uses a persistent server with disposable clients. Sessions, windows, panes, scrollback and terminal state remain alive when the attached terminal closes.

Platform integration stays native. Windows uses ConPTY and named pipes, while Linux and macOS use PTYs and Unix sockets.

Current features:

- Persistent sessions, windows and panes

- Horizontal and vertical splits

- Mouse support, copy mode and paste buffers

- Customizable key tables, status bar, borders and themes

- Terminal color inheritance by default

- Native installers and a built-in updater

- Builds for Windows x64, Linux x64 and ARM64, macOS Intel and Apple Silicon

Release benchmark profile:

- VT parsing: 69.6 to 75.3 MiB/s

- Full-scene render p95: 448.2 µs

- 8-client render p95: 269.1 µs

- Peak live benchmark memory: 1.76 MiB or less

wmux is free, MIT licensed and available on GitHub: https://github.com/shreshthkapai

I would particularly appreciate bug reports from different operating system, terminal and shell combinations.


r/tmux 4d ago

Question Multiplexer best practice with tabs

Thumbnail
0 Upvotes

r/tmux 6d ago

Showcase Open a folder under a tmux session from any where by your declared script

Post image
74 Upvotes

Not only tmux but basically everything you can imagine.
Write a toml file and boooommm.
That’s a new feature from our open source fuzzy finder launcher!
Cross OS, fast, free :)
This is the repository


r/tmux 7d ago

Question - Answered How to not load bash/zsh/fish/nushell config when displaying popup/floating window

8 Upvotes

I have the following that displays a popup of lazygit in the current directory, but I've noticed that my shell configuration (which has quite a bit of code to initialise) is always running before lazygit is actually ran:

bash bind g display-popup -E -d "#{pane_current_path}" -h 90% -w 95% "lazygit"

Is there a way to make the popup not load my shell configuration, or run under a different shell? Unsure if this question really fits here but thought I'd give it a try anyways.

Solution

Display popups with an additional environment variable via -e that you check for in your shell: ```bash

tmux.conf

bind g display-popup -E -d "#{pane_current_path}" -e "TMUX_POPUP=true" -h 90% -w 95% "lazygit" fish

config.fish

if not set --query TMUXPOPUP for script in $_fish_config_dir/conf.d//{,/*}.fish source $script end

other_expensive_calls

end ``` This also opens the gate for more granular control should it be desired.


r/tmux 7d ago

Tip Artmux (ar-tee-mux) ... but whatever ... who cares.

0 Upvotes

https://github.com/guidov/artmux

Use it, hate it , love it ...Don't care....


r/tmux 8d ago

Showcase A Terminal supports workspace to manage tabs

Thumbnail
0 Upvotes

r/tmux 10d ago

Showcase add tabs inside of panes

Thumbnail github.com
13 Upvotes

made this so I could have multiple processes running in the same pane to preserve my layout without having smaller and smaller terminal splits. Sometimes I want to swtich between logs or an agent without changing my layout. sharing in case others want something similar


r/tmux 10d ago

Showcase Muxxy: Like Slime, for AI + Tmux

Thumbnail blog.djhaskin.com
0 Upvotes

r/tmux 11d ago

Showcase Tmux in cloud to run coding agents

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/tmux 12d ago

Tip Copy and Paste to Linux from Mac thru SSH

8 Upvotes

In case anyone runs into similar issues, I used the below .tmux.config to allow copying and pasting from a TMUX session running on Linux, which I SSH'd to from Mac. This is with mouse selection, and Cmd-c to copy. Automatic copy of whatever is selected doesn't work for me. Of course, if someone has a better set up, let me know.

# ~/.tmux.conf

set -g mouse off

set -g set-clipboard on


r/tmux 12d ago

Showcase Made a tmux-sessionizer clone for kitty

Enable HLS to view with audio, or disable this notification

2 Upvotes

r/tmux 13d ago

Showcase Running tmux with AI agents remotely with 5+ AI Agent CLIs pre-configured

Thumbnail
0 Upvotes

r/tmux 15d ago

Showcase I built a tmux-integrated SSH terminal for Vision Pro / iPad first, CLI-agent friendly

Enable HLS to view with audio, or disable this notification

10 Upvotes

I've been building this app for about a month, designed mainly for Vision Pro and iPad. iPhone is also supported. The idea: I wanted a multi-window remote terminal with tmux-first integration on mobile, so I can use it anywhere.

Highlights

  • Vision Prop: Multi-scene windows. iPad: Multi-window via Stage Manager and tabs. iPhone: Tabs
  • iCloud Keychain sync: a host only needs to be bound once, via mpx-cli or manually
  • Mosh support (included in Pro)
  • CLI-agent initial support (agent key bar and alerts) for Claude Code, Codex, Pi, and Grok Build
  • Also supports herdr

Pro: one-time purchase, funds development; you can also build it yourself

GitHub: https://github.com/multiplex-term/Multiplex (License: Apache-2.0)
TestFlight: https://testflight.apple.com/join/91116D4n (Beta testing, v1.4.0, Pro can unlock without real payment in this mode)
App Store: https://apps.apple.com/app/id6790074057 (v1.3.1)


r/tmux 14d ago

Showcase playground - run a coding playground in your terminal

Thumbnail github.com
0 Upvotes

r/tmux 15d ago

Tip PSA: send-keys silently truncates at 1024 bytes if the shell hasn't finished starting

1 Upvotes

Spent a day on this and there is no error message anywhere, so here it is.

bash tmux new -d -s "$s" tmux send-keys -t "$s" '<long command>' C-m

This worked for months. Then the command I was sending grew past ~1200 bytes, and the pane started showing it chopped off mid-word, with the shell sitting at a continuation prompt waiting for a quote to close. tmux exits 0. The shell is happy. Nothing logs anything.

Right after new -d the shell hasn't finished starting, so the tty is still in canonical mode, and the kernel truncates a single line of canonical input at 1024 bytes (MAX_CANON). The overflow isn't an error. It's discarded.

Two ways out:

  • Sleep before sending. Works. I sent ~1800 B two seconds later and it arrived intact. But you've traded a silent truncation for a race, and the race has no error message either.
  • Shorten the line. I moved a conditional argument into positional parameters instead of branching into two command strings:

bash set -- [ -f "$catalog" ] && set -- -c "catalog=$catalog" mycmd --flag "$@" "$id"

zsh and bash both fine, and "$@" expands to zero words when the file is missing. That took 1200 bytes down to a bit over 600.

Then I asserted on the length in a test, because this comes back the moment someone adds an argument. Assert on bytes, not characters: if your language counts UTF-16 code units, it will disagree with the kernel as soon as a path isn't ASCII.

Anyone know whether the limit is the same on Linux? I only hit this on macOS.


r/tmux 17d ago

Showcase [oc] zap: cp/mv/rm replacement with live transfer stats

Post image
7 Upvotes

r/tmux 17d ago

Showcase Another day another tmux app. It's Bitveins' turn

2 Upvotes

I've been using Bitveins daily since March, and I've recently open-sourced it. It's basically a web UI for tmux.

My dev setup is on a VPS. I used to connect to it with Termius but the screen is too small on smartphone, and typing long prompts through a terminal is painful, especially on a poor connection.

Bitveins is a bit of everything: a bit of Orca, a bit of Herdr, a bit of VSCode, a bit of T3code.

Also it's a webapp and a PWA, no need to install a native app.
It works natively with the smartphone keyboard and speech to text, using a simple textarea.

It detects coding agents running in tmux sessions (codex, hermes, antigravity and grok build).

It has a read-only git graph and diff viewer, push notifications, colored agent status, split panes, fullscreen mode, text editor, svg, image and video viewer.

You can paste images, create drop boxes.

It only listens on localhost, so for remote access you need something like Cloudflare Tunnel + Access or Tailscale in front of it.

https://github.com/rebasereality/bitveins


r/tmux 18d ago

Showcase I built Hermes Valkyrie to manage Claude Code and Codex runs through tmux

0 Upvotes

I kept running into the same problem while using Hermes: it could not start Claude Code or Codex and bring back a response. I wanted Hermes to be able to launch the run, keep it visible, and bring back a useful report instead of leaving me to track everything myself.

So I built Hermes Valkyrie.

Repo: https://github.com/DylDigitals/hermes-valkyrie

Hermes Valkyrie is an open-source terminal loadout system upgrade for Hermes Agent setups. It uses tmux to give Hermes the ability to launch reusable coding harnesses and enhance them with our loadouts system.

The tmux part is the core reason I thought this might be relevant here: Hermes can launch the coding-agent run in a visible terminal session, keep it trackable, and then use watcher/closeout steps to bring back a report instead of making me manually babysit the pane.

I think it is really powerful to have Hermes launch Claude Code or Codex runs to do a long-form review while you keep working inside your Hermes ecosystem. It has been powerful so far, so I wanted to share this system.

I’m looking for feedback from people building or using Hermes, tmux, or coding-agent terminal workflows. This is currently coded for Discord, but I’m adding more chat channels as we speak.

I have a few main questions/concerns:

  • Is this something anyone wants to integrate into their system?
  • Is the onboarding clear?
  • What would you need before trusting this in your own workflow?

r/tmux 20d ago

Question Help binding a CSI-u key sequence to C-w in tmux 3.7b

3 Upvotes

Hi, I'm trying to get a modified keypress from WezTerm → tmux → shell/application to work correctly, and I'm having trouble figuring out how tmux expects the sequence to be bound.

Setup

  • OS: Linux 7.1.6-arch1-1
  • Terminal: WezTerm
  • tmux: 3.7b
  • Shell: zsh

The key I'm trying to handle produces this sequence:
(obtained via running showkey -a in tmux)

^[[ 8 ; 5 u

or, in hex:

1b 5b 31 33 3b 35 75

What I'm trying to do

I want tmux to recognize this key sequence and turn it into:

C-w

I tried

bind-key -n "^[[8;5u" send-keys C-w

but that does not work

I'd appreciate any pointers or examples of the correct tmux configuration. Thanks!


r/tmux 19d ago

Question TMUX Claude / Pi skill

0 Upvotes

I love TMUX and I love the way the LLMs know how to use and off course there are lots of lovely MCPs and Pi extensions on how to use TMUX.

Is there a good well worded skill for claude code that by extension Pi out there? I am across so many SSH s different boxes and bouncing between claude and Pi . Just want a really good skill for it to quickly open panes and make neovims. Or am I asking what the models already know?