Skip to main content

Typer-based CLI for tmux-backed Codex orchestration sessions

Project description

中文 · Install Guide

tmux-orche

tmux-backed Codex orchestration for OpenClaw fire-and-forget workflows.

tmux-orche lets OpenClaw hand work to Codex, return immediately, and continue later through the same persistent tmux session. That keeps OpenClaw from burning tokens while Codex works in the background.

OpenClaw Workflow

  1. OpenClaw creates or reuses a Codex session with orche session-new.
  2. OpenClaw sends the task with orche send.
  3. orche returns immediately.
  4. Codex keeps running in tmux.
  5. When notify arrives, OpenClaw or another agent inspects the same session with status, read, or history.
  6. The session stays available until it is explicitly closed.

Quick Start

Create or reuse a session:

orche session-new \
  --cwd /path/to/repo \
  --agent codex \
  --name repo-codex-main \
  --discord-channel-id 123456789012345678

Send work and return immediately:

orche send --session repo-codex-main "analyze the failing tests and propose a fix"

Inspect the same session later:

orche status --session repo-codex-main
orche read --session repo-codex-main --lines 120
orche history --session repo-codex-main --limit 20

Close it when done:

orche close --session repo-codex-main

Installation

Full step-by-step install guide: https://github.com/parkgogogo/tmux-orche/raw/main/install.md

Install from PyPI:

pip install tmux-orche

Install with uv:

uv tool install tmux-orche

Install from source:

git clone https://github.com/parkgogogo/orche
cd orche
python3 -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install .

Commands

  • orche session-new --cwd /repo --agent codex --name repo-codex-main --discord-channel-id 123456789012345678 Create or reuse a persistent Codex tmux session.
  • orche send --session repo-codex-main "review the recent auth changes" Send a task into an existing session and return immediately.
  • orche status --session repo-codex-main Check whether the session and Codex process are still running.
  • orche read --session repo-codex-main --lines 80 Read recent terminal output from the live session.
  • orche history --session repo-codex-main --limit 20 Show recent local control actions for that session.
  • orche close --session repo-codex-main Close the session when the work is finished.
  • orche config list Show current runtime configuration.

Config

Manage runtime settings:

orche config list
orche config get discord.channel-id
orche config set discord.channel-id 123456789012345678
orche config set discord.bot-token "$BOT_TOKEN"
orche config set discord.mention-user-id 123456789012345678
orche config set notify.enabled true

Config file:

~/.config/orche/config.json

State directory:

~/.local/share/orche/

Troubleshooting

Cancel a stuck turn

If Codex is stuck, running in the wrong direction, or needs to be stopped without losing the session:

orche cancel --session repo-codex-main

This interrupts the current Codex turn but keeps the session alive, allowing you to read output and send a corrected task.

Compare with close:

  • cancel: Interrupt current turn, keep session (for stuck or still-running tasks)
  • close: End entire session (for completed or abandoned tasks)

Prerequisites

  • tmux
  • tmux-bridge
  • codex CLI
  • Python 3.9+

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tmux_orche-0.4.0.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tmux_orche-0.4.0-py3-none-any.whl (24.2 kB view details)

Uploaded Python 3

File details

Details for the file tmux_orche-0.4.0.tar.gz.

File metadata

  • Download URL: tmux_orche-0.4.0.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tmux_orche-0.4.0.tar.gz
Algorithm Hash digest
SHA256 c31a3afef5e6a1a4e147ca28304a6b00c145c2c4cae8ff1d2197abc986785449
MD5 9991f2c9149e1fb2d2ff584d20760390
BLAKE2b-256 c941bcf9c7b046472f8d9aee669fb4925f20b44b53016c6ad0d280128d29804a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tmux_orche-0.4.0.tar.gz:

Publisher: publish.yml on parkgogogo/tmux-orche

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tmux_orche-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: tmux_orche-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 24.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tmux_orche-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16b64f6669c66be656932c924a139e033f477eb52de50082f3e0d4c8ba11ec60
MD5 b0c15d1a53c8af9147a5333a70bce69a
BLAKE2b-256 e2ad9c559f131c78fa1d86cfdd144c457797bd0ee7b965d64e24de1c167cb56c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tmux_orche-0.4.0-py3-none-any.whl:

Publisher: publish.yml on parkgogogo/tmux-orche

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page