Skip to main content

Agent Supervisor for AI coding agents — a state-aware cockpit for managing multiple Claude Code, Codex, and Shell sessions in parallel.

Project description

Oragent

PyPI Python License: MIT README EN README ZH README FR

An Agent Supervisor for AI coding agents — a state-aware cockpit so you see which agent needs you, auto-handle routine permissions, and stay in flow.

Oragent dashboard

Languages

✨ Features

  • Built-in Claude Code / Codex / Shell session support
  • In-dashboard permission handling
  • Vim-style modal operation
  • Working / Idle / Waiting / Stopped / Auto / Shell state display
  • High-performance line-level rendered preview (TerminalView) with Strip caching
  • Interactive cursor overlay in snapshot preview
  • Raw-stdin interactive input path with Shift+Enter / Alt+Enter newline compatibility
  • Preview cache and single-flight refresh to reduce repeated preview work
  • Typing-aware smart refresh: suppresses preview updates during rapid input
  • Preview truncation hint when pane history exceeds the current 1000-line preview window
  • WAITING auto-focus with FIFO queue processing
  • Per-session Auto Pilot
  • Home page, session panel toggle, and smoother session deletion flow
  • Read-only diagnostics for cursor stability and live-session latency profiling
  • macOS notifications

🚀 Installation

Quick Install (recommended)

curl -fsSL https://raw.githubusercontent.com/oragent-ai/oragent/main/install.sh | sh

Via pipx

pipx install oragent

Via pip

pip install oragent

Upgrade

pipx upgrade oragent

or:

pip install -U oragent

Prerequisites

  • Python >= 3.11
  • tmux (brew install tmux / apt install tmux)

▶️ Usage

oragent

⌨️ Keybindings

Normal Mode

Key Action
/ Navigate sessions
n New session
r Rename session
i Enter Interactive mode
a / d Approve / Deny permission request
1-9 Select numbered permission option
p Toggle Auto Pilot
c Select mode (text copy)
Ctrl+\ Toggle session panel
Ctrl+x Delete session
q Quit Oragent

Interactive Mode

All keystrokes pass through directly to the selected agent session.

Key Action
Ctrl-] Exit to Normal mode
Ctrl+\ Toggle session panel
Shift+Enter Newline (kitty protocol terminals)
Alt+Enter Newline (legacy terminals)
Mouse click on session list Switch session

🪟 Preview Behavior

  • Normal and interactive preview both keep a bounded 1000-line window.
  • When older content is omitted from the preview window, Oragent shows a truncation banner below the preview.
  • Waiting detection and Auto Pilot still use plain capture-pane, independent of preview truncation.

Environment variables:

  • ORAGENT_PREVIEW_HISTORY_LINES Current implementation clamps this to at least 1000.
  • ORAGENT_INTERACTIVE_PREVIEW_HISTORY_LINES Current implementation also clamps this to at least 1000.
  • ORAGENT_USE_LEGACY_INTERACTIVE_VIEW=1 Disables the interactive cursor overlay path and falls back to the legacy interactive preview behavior.
  • ORAGENT_OUTPUT_DEBOUNCE_MS Drain output debounce interval in ms (default 16, ≈60fps).
  • ORAGENT_TYPING_SUPPRESS_MS During interactive mode, defer preview refreshes while the user is typing faster than this threshold (default 0, disabled). The historical default 80 was calibrated to a pre-optimisation ~80 ms capture cost; since the one-shot capture path (~6 ms) there is nothing to coalesce. Set to 80 to restore the legacy behaviour if needed.

Migrating from CCT? All CCT_* env vars are still recognized in v0.3.x with a deprecation warning, and will be removed in v0.4.0.

🧪 Diagnostics

  • python tests/e2e_cursor_scope.py Verifies cursor position and mixed ASCII / Chinese input stability.
  • python tests/e2e_latency_scope_existing_sessions.py Reuses current live tmux sessions in read-only mode to profile preview, list, and polling costs.
  • python tests/e2e_interactive_latency.py Measures interactive mode latency: drain debounce, capture, parse, render, and end-to-end refresh cycle.

🖥️ Interface

+----------------------------------------------------------------+
| Oragent · Agent Supervisor                                     |
+----------------------------------------------------------------+
| Sessions           | Preview: frontend-refactor (claude)        |
|--------------------|---------------------------------------------|
| * frontend-refactor| > Analyzing src/components/Header.tsx...    |
|   proj/frontend    |                                             |
| * api-fix          |   I'll update the Header component to       |
|   proj/backend     |   use the new theme variables.              |
| ! test-fix         |---------------------------------------------|
|   proj/tests       | ! Permission: execute `npm test`            |
| o data-migration   |   [a:Allow] [d:Deny]                        |
|   proj/migration   |                                             |
+--------------------+---------------------------------------------+
| NORMAL — i:Interactive  n:New  a/d:Allow/Deny  p:Pilot         |
+----------------------------------------------------------------+

Status icons: * Working  ! Waiting  o Idle  x Stopped

📝 Notes

  • The current interactive preview is still tmux snapshot based, not a full terminal-buffer renderer.
  • v0.2.2 replaced RichLog with a line-level TerminalView (ScrollView + render_line), reducing preview render cost by ~61%. Combined with drain debounce reduction and typing-aware smart refresh, end-to-end interactive latency dropped from ~145ms to ~65ms.
  • v0.2.5 fixed interactive cursor off-by-one offset caused by trailing newline in tmux capture-pane output. Session names now truncate with ellipsis instead of disappearing when the panel is narrow.

🛣️ Roadmap

Version Goal Status
v0.2 (as CCT) Claude Code / Codex / Shell sessions, Auto Pilot, bounded preview, TerminalView performance, cursor fix, diagnostics ✅ released
v0.3 (Oragent) Rename to Oragent, more tools (Aider/Open Claw), session groups, fuzzy search 🚧 current
v0.4 Web version, diff view, Docker isolation 📋 planned

📄 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

oragent-0.3.7.tar.gz (505.7 kB view details)

Uploaded Source

Built Distributions

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

oragent-0.3.7-cp313-cp313-manylinux_2_28_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

oragent-0.3.7-cp313-cp313-manylinux_2_28_aarch64.whl (9.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

oragent-0.3.7-cp313-cp313-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

oragent-0.3.7-cp312-cp312-manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

oragent-0.3.7-cp312-cp312-manylinux_2_28_aarch64.whl (10.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

oragent-0.3.7-cp312-cp312-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

oragent-0.3.7-cp311-cp311-manylinux_2_28_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

oragent-0.3.7-cp311-cp311-manylinux_2_28_aarch64.whl (10.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

oragent-0.3.7-cp311-cp311-macosx_14_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

File details

Details for the file oragent-0.3.7.tar.gz.

File metadata

  • Download URL: oragent-0.3.7.tar.gz
  • Upload date:
  • Size: 505.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oragent-0.3.7.tar.gz
Algorithm Hash digest
SHA256 e4544b56bca4b5aabb08ada98e13999e0a14b8d41d32516421fbf3dcdbd67b9c
MD5 a19984d2d10e0b9856d15a58ff111417
BLAKE2b-256 8dcca26751da3d8605ce2ab1ac707736516a81268f44748405bfbb58e038cf87

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7.tar.gz:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 55747ea69eb21350ea227322f4d4727426ee86b377452f6216a4edcafabf7230
MD5 e4f63d79dbd1fa31eafa4c90e7873d98
BLAKE2b-256 af8f85a6a088597ee144938d6f9e19928b75c1724cf018dbcdad5b0a97d1c217

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 86c96236d0ff8a61c3a06d4e51a6a6eebec6b2d3163fc5c95821e350d49efefc
MD5 177064448a7074d5b001379f8f54e3f6
BLAKE2b-256 880da4bf873e7a2128998e72d3406d90022ad5f709ea86b90094603f7a2b7054

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 1e37553517ae3a7dc83da042b57fdd783237abc8db8b2165a0d33124c119fea1
MD5 80b6e0d6bc7c80b1fb6b9a1b63311a05
BLAKE2b-256 8a13695255d549cf212574775bff7671effc67c147052a6ef3eef0a06b9c187e

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0ef28dc36b98866d983ea667c291902d5b2fe65981ac445c9250c7d324e1f1b8
MD5 e9446847fd27f09a06f2739eb642ecc4
BLAKE2b-256 32656379506961e190b402314c6049f006f11e8f0319783e8a4368e21b0ad901

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ba5a1b2bc34dd6b146a20a400fbbbfc9406f57b0baee9a66ab069cab51a9213c
MD5 570b6af3478f388ebdb9e0cda9a6cf23
BLAKE2b-256 b841221c9eb8a3d74c0390c3c3babebed0e64879a31e9d4adda34c2537c51a16

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 be68f80da223721609b970a2f1cbc9e4d876289095a2e7b5569d94122b4e5555
MD5 6f8c437977887b4fb22e6c047ecf7692
BLAKE2b-256 814ebd9988bd3e278d56bc65f7db1d45338646be9322d19673f757740f9325d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1f67681a6ad956f9df7bc03c9cf8b2c06c33704176e8b4618927bdc229866d05
MD5 14378e604a60f5173e37f3d2c1e440c2
BLAKE2b-256 a3e9f01d59c27f136a5fe5356508b9bd4326cd7b05fd62cfbf4cb210294787c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4e846af45cb4f58d1220b3199f34f5ed09d05417dbc07e771bfb4a5967645281
MD5 e9dc9b647bdad4d0f96f83e4e2aea4b5
BLAKE2b-256 27e80d4e4706e3b574e163d10871b437efd8dd9ccf151c7e0da17b6413af8add

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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

File details

Details for the file oragent-0.3.7-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for oragent-0.3.7-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6423c94316c849bedfaa48f4694b64c575af94cbde7781a02315990a04dae91d
MD5 1bba990b5e6ebac253c751b35f7e1225
BLAKE2b-256 51a6e71fe351d1df967190fc3d0d9589ba214221ec868d5711b7123a0ce79ae4

See more details on using hashes here.

Provenance

The following attestation bundles were made for oragent-0.3.7-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: release.yml on Phinease/claude-code-terminal

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