#gemini #claude #tmux #codex #cli

bin+lib tmux-botdomo

Majordomo of AI assistants living in tmux sessions

3 releases (breaking)

Uses new Rust 2024

0.3.0 Nov 7, 2025
0.2.0 Oct 19, 2025
0.1.0 Oct 11, 2025

#2806 in Command line utilities

MIT license

25KB
609 lines

tmux-botdomo

Majordomo of AI assistants living in tmux sessions.

Automatically detects Claude Code, Gemini, and Codex running in tmux panes and allows you to send context directly from vim to the right AI assistant.

Installation

cargo install tmux-botdomo

Setup

1. Start the daemon

Add to your .tmux.conf:

set-hook -g server-start "run-shell 'tbdmd start'"

Note that session-closed hook is currently broken in tmux 3.5a and doesn't get triggered as expected. Therefore, tbdmd automatically shuts down when it detects the tmux session no longer exists.

2. Configure Neovim

vim.keymap.set('v', '<leader>tb', function()
  vim.cmd('normal! "zy')
  local context = vim.fn.getreg('z')
  vim.fn.system('tbdm send ' .. vim.fn.shellescape(context))
end)

This essentially mimics yanking.

Usage

  1. Select code in vim/Neovim.
  2. Press your configured keybinding.
  3. Selected conetext is sent to the detected AI assistant in your tmux session, based on the working directories.

Commands

tbdm status     # Check daemon status
tbdm send        # Send context to AI assistant (typically called from vim)

Dependencies

~6–11MB
~199K SLoC