🫲 wye 🫱
Wye is reverse tee.
Wye is a simple terminal tool that works like a reverse tee. Instead of splitting one input into multiple outputs, wye combines multiple inputs into one terminal session. It reads commands from your keyboard and also from a special file called a named pipe.
It gives you terminal sessions like tmux, but in a much simpler way without a background server.
The main goal of wye is to work together with programs like tmux. It gives you a simple way to send commands and text to a terminal session from a different window or from a script.
To start a new session with your default shell, just run:
wyeTo run a different program inside the session, pass it as an argument:
wye luaThis creates a session with a number that you can easily find later.
wye -s123If you are already inside a wye session, running wye again will not start a new one. It will just show you the current session number.
Wye manages sessions using special files called named pipes. Each session has its own pipe file located in /tmp/wye-<session_number>.
To send a command to a running session, you just need to write to its pipe file. For example, to send the ls -l command to session 123, you can run this from another terminal:
echo "ls -l" > /tmp/wye-123The command will appear in the wye session as if you typed it.
cargo build --releaseThe final program will be located at target/release/wye.
cargo install --path .Open new terminal window and run wye.