gemini-tmux-orchestration

Use when delegating coding tasks to Gemini CLI agent, when you need parallel AI execution, or when tasks benefit from Gemini's 1M+ context window - orchestrates Gemini via tmux since headless mode cannot write files

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "gemini-tmux-orchestration" with this command: npx skills add serejaris/ris-claude-code/serejaris-ris-claude-code-gemini-tmux-orchestration

Gemini CLI Orchestration via tmux

Overview

Gemini CLI in headless mode (-p) cannot execute shell commands or write files. Use tmux send-keys to control Gemini interactively while monitoring via capture-pane.

Quick Reference

ActionCommand
Start (split pane)tmux split-window -h -d "cd PROJECT && gemini --yolo"
Start (session)tmux new-session -d -s gemini -x 200 -y 50
Send texttmux send-keys -t {right} 'task text'
Send Entertmux send-keys -t {right} Enter
Check outputtmux capture-pane -t {right} -p -S -100
Clear inputtmux send-keys -t {right} Escape Escape
Kill panetmux kill-pane -t {right}
Kill sessiontmux kill-session -t gemini

Target: {right} for split pane, gemini for named session.

Status Markers

Detect Gemini state by grepping capture-pane output:

MarkerState
Type your messageIdle, ready for input
esc to cancelWorking on task
✓ built / ✓ ShellAction completed
Found \d+ errorsBuild failed
error TSTypeScript error
potential loopNeeds intervention (send 2 + Enter)
Waiting for authOAuth expired

Workflow

# 1. Start Gemini
tmux split-window -h -d "cd ~/project && gemini --yolo"
sleep 5

# 2. Send task (TWO separate calls - critical!)
tmux send-keys -t {right} 'Build the app per PLAN.md'
tmux send-keys -t {right} Enter

# 3. Poll for completion
while true; do
  output=$(tmux capture-pane -t {right} -p -S -50)

  # Check if idle (task done)
  if echo "$output" | grep -q "Type your message"; then
    break
  fi

  # Handle loop detection
  if echo "$output" | grep -q "potential loop"; then
    tmux send-keys -t {right} '2'
    tmux send-keys -t {right} Enter
  fi

  sleep 10
done

# 4. Check result
tmux capture-pane -t {right} -p -S -200 | tail -100

Common Mistakes

MistakeFix
send-keys 'text' Enter in one callEnter не регистрируется — отправлять отдельно
Chaining: send-keys && sleep && captureКоманды утекают в ввод Gemini — separate bash calls
Fixed sleep 60Используй polling с маркерами
Ignoring loop detectionGemini зависает — детектить и отправлять 2
Long promptsСоздай .gemini/commands/task.toml

Custom Commands

Для повторяющихся задач создай .gemini/commands/:

# .gemini/commands/improve-design.toml
[command]
description = "Improve app design"

[[steps]]
prompt = "Improve design: gradients, shadows, animations. Run build when done."

Вызов: tmux send-keys -t {right} '/improve-design' + Enter

When NOT to Use

  • Read-only analysis → gemini -p "analyze" --output-format json
  • Simple questions → direct API call
  • Need deterministic output → headless with JSON schema

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

gh-issues

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

agent-teams

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

Summarize Tianjin

Summarize URLs or files with the summarize CLI (web, PDFs, images, audio, YouTube).

Registry SourceRecently Updated