Multi AI Agent orchestration hub — dispatch interactive AI agents across terminal panes
Project description
openMax
Multi AI Agent orchestration hub — dispatch interactive AI agents across terminal panes.
openMax is a lead-agent system that decomposes your task, spawns multiple AI coding agents (Claude Code, Codex, OpenCode, etc.) in separate Kaku terminal windows, monitors their progress, and reports results — all automatically.
How it works
openmax run "用 Next.js 写个博客"
│
▼
┌──────────────────────────────────────────────┐
│ Lead Agent (claude-agent-sdk) │
│ Phase 1: Align goal │
│ Phase 2: Plan & decompose │
│ Phase 3: Dispatch agents │
│ Phase 4: Monitor & correct │
│ Phase 5: Summarize & report │
└──────────┬───────────────────────────────────┘
│ kaku spawn --new-window
├──────────────┬──────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────┐ ┌──────────┐
│ Window 1 │ │ Window 2 │ │ Window 3 │
│ claude-code │ │ codex │ │ claude │
│ "写组件" │ │ "写API" │ │ "写测试" │
└──────────────┘ └──────────┘ └──────────┘
↑ ↑ ↑
interactive interactive interactive
(用户可直接点进任意窗口干预 agent)
Install
pip install openmax
or
uv pip install openmax
Prerequisites
- Python 3.10+
- Kaku terminal (based on WezTerm)
- At least one AI agent CLI installed:
- Claude Code (
claude) - Codex (
codex) - OpenCode (
opencode)
- Claude Code (
Usage
Run a task
openmax run "用 Next.js 写一个博客系统"
The lead agent will:
- Restate and clarify your goal
- Decompose it into parallelizable sub-tasks
- Open a new Kaku window for each sub-task with the appropriate agent
- Monitor each agent's output and intervene if needed
- Report completion with cost/token summary
Options
# Specify working directory
openmax run "重构 API 模块" --cwd /path/to/project
# Use a specific model for the lead agent
openmax run "写单元测试" --model claude-sonnet-4-20250514
# Limit agent loop turns
openmax run "修复 bug" --max-turns 30
List panes
openmax panes
Read a pane's output
openmax read-pane <pane_id>
Supported agents
| Agent | Type | Mode | Command |
|---|---|---|---|
| Claude Code | claude-code |
Interactive | claude |
| Codex | codex |
Interactive | codex |
| OpenCode | opencode |
Interactive | opencode |
| Generic | generic |
Interactive | claude |
All agents run interactively — you can click into any Kaku window and type to intervene directly.
Architecture
src/openmax/
├── cli.py # CLI entry point (click)
├── lead_agent.py # Lead agent: task decomposition + monitoring
│ # Uses claude-agent-sdk with custom MCP tools
├── pane_manager.py # Kaku window/pane lifecycle management
├── kaku.py # Kaku CLI availability check
└── adapters/
├── base.py # AgentAdapter ABC + AgentCommand
├── claude_code.py # Claude Code adapter
├── codex_adapter.py # Codex adapter
├── opencode_adapter.py # OpenCode adapter
└── subprocess_adapter.py # Generic CLI adapter
Lead agent tools
The lead agent has 6 custom tools (via in-process SDK MCP server):
| Tool | Description |
|---|---|
dispatch_agent |
Open a new Kaku window and start an agent with a prompt |
read_pane_output |
Read an agent's terminal output to check progress |
send_text_to_pane |
Send text to an agent (follow-up instructions, intervention) |
list_managed_panes |
List all managed panes and their states |
mark_task_done |
Mark a sub-task as completed |
report_completion |
Report overall completion percentage |
Lifecycle
- On completion or Ctrl-C, all managed Kaku windows/panes are automatically closed
- SIGINT and SIGTERM are handled for clean shutdown
- The
PaneManagertracks window IDs, pane states (idle/running/done/error), and handles cleanup
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openmax-0.1.2-py3-none-any.whl.
File metadata
- Download URL: openmax-0.1.2-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e22584fd7d79335f9536e59deb57fc4c1ab5784b2f01c775be654d80934d72f
|
|
| MD5 |
58e27d49a30999f4f6a4085532456766
|
|
| BLAKE2b-256 |
4ae3b9f2db0262cbfb487a159bbab355dbaf965e59a46ca10ca4ffcdb4779e31
|