AI Maestro
Orchestrate terminal-based AI agents across machines with a unified dashboard, direct messaging, memory, and deployment controls.
- Source repo
- 23blocks-OS/ai-maestro
- Stars
- ★ 792
- Last updated
- today
- License
- MIT
- Primary language
- TypeScript
- FA score
- 56/100 · Major gaps
At a glance
- Works with
- Universal · cross-platformCodex · Claude Code
- You'll need
- Typical use
- A developer running several Claude Code, Codex, or other terminal agents can replace manual terminal switching and context relaying with one dashboard.
- Main limitation
- The quick installation requires Node.js 18+ and tmux; Windows support is through WSL2 only.
- Source review
- 56/100 · Major gaps
What does this agent do, and when should you use it?
AI Maestro is a self-hosted orchestration platform that manages terminal-based AI agents from one web dashboard. It discovers tmux sessions, Docker containers, cloud deployments, and standalone agents, with local tmux, Docker, AWS EC2, and AWS ECS Fargate execution modes. Its Agent Messaging Protocol (AMP) provides direct agent-to-agent communication with priorities, message types, cryptographic signatures, and push notifications. The platform also includes persistent memory, an incrementally indexed interactive Code Graph, and auto-generated searchable code documentation. Teams can coordinate in split-pane meetings and track work in a five-column Kanban board with dependencies, while machines connect through a peer mesh without a central server.
After installation, AI Maestro serves a dashboard at http://localhost:23000 for viewing and switching agents, creating agents through a guided UI, and organizing them into named trees. It auto-discovers tmux sessions, Docker containers, cloud deployments, and standalone agents; agents can exchange prioritized, signed AMP messages directly. It builds and delta-indexes a Code Graph for a codebase, exposes an interactive visualization, generates searchable documentation, and retains past conversations and decisions in its memory layer. The aimaestro-agent.sh create command creates agents, with --ec2 for dedicated EC2 deployment and --ecs for ECS Fargate deployment.
- A developer running several Claude Code, Codex, or other terminal agents can replace manual terminal switching and context relaying with one dashboard.
- An engineering team with Mac and Linux machines can place iOS builds on Mac hosts and Docker workloads on Linux while viewing their agents together.
- A multi-project team that needs isolation and resource limits can run agents in Docker containers while retaining centralized discovery and management.
- An operations team needing always-on or burst workers can deploy agents through aimaestro-agent.sh create using the --ec2 or --ecs modes.
- A team with research, writing, and backend agents can use AMP to send findings across machines instead of copying them between terminals.
- A lead coordinating agent deliverables can use teams, split-pane meetings, and a dependency-aware Kanban board to assign and track work.
How do you install or deploy this agent?
The documented runtime requirements are Node.js 18+ and tmux. For the quick install, run: curl -fsSL https://raw.githubusercontent.com/23blocks-OS/ai-maestro/main/scripts/remote-install.sh | sh. It installs the dashboard, service, AMP, and a Claude Code plugin; then open http://localhost:23000. No installation credentials are documented. A manual path is: git clone https://github.com/23blocks-OS/ai-maestro.git && cd ai-maestro && yarn install && yarn dev. On Windows, install WSL2 first and run the installer inside Ubuntu.
How do you use this agent?
Open http://localhost:23000 and use the dashboard to inspect discovered agents or create new ones. From the CLI, use aimaestro-agent.sh create to create an agent; the documented EC2 example is aimaestro-agent.sh create my-api --ec2 --domain api.example.com --ssl-email [email protected] --key-name my-key, and the ECS Fargate example is aimaestro-agent.sh create worker --ecs. After creation, organize agents in the dashboard, view their cross-machine status, and have them communicate through AMP.
What are this agent's strengths and limitations?
- Unifies four agent execution modes—tmux, Docker, EC2, and ECS Fargate—in one dashboard instead of managing only a single terminal environment.
- Its peer mesh makes agents visible across machines without requiring a central server, fitting mixed Mac, Linux, and cloud fleets.
- AMP explicitly includes message priorities, message types, cryptographic signatures, and push notifications for direct agent coordination.
- Beyond session management, it combines persistent memory, delta-indexed Code Graphs, searchable documentation, and dependency-aware Kanban coordination.
- The quick installation requires Node.js 18+ and tmux; Windows support is through WSL2 only.
- Cloud modes depend on AWS: EC2 and ECS Fargate are Terraform-managed, and ECS builds an image and pushes it to ECR.
- The project states that there is no hosted cloud version yet, so adopters operate their own machines, agents, and infrastructure.
- Although the README lists many terminal agents as supported, it does not document adapter configuration, permission models, or feature differences for each one.
How does this agent compare with similar options?
Compared with tmux alone, AI Maestro adds agent discovery, persistent memory, AMP messaging, a multi-machine mesh, task boards, team coordination, and cloud deployment management on top of terminal sessions.
Key facts side by side with the most closely related agents.
| Agent | Source review | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|
| AI Maestro This agent | 56 · Major gaps | ★ 792 | today | TypeScript | Codex · Claude Code |
| Hermes Agent | 67 · Some gaps | ★ 248k | today | Python | OpenAI API |
| Aiden | 65 · Some gaps | ★ 839 | 10d ago | TypeScript | ChatGPT · OpenAI API · Claude API |
| Phantom Autonomous Co-worker | 49 · Major gaps | ★ 1.5k | 3mo ago | TypeScript | Claude Code · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence: SECURITY.md explicitly warns about default binding to 0.0.0.0:23000, no authentication, unencrypted, and recommends localhost-only; but no default least-privilege configuration is provided, requiring manual changes. User confirmation: permissionMode field exists (default supervised), but no specific confirmation flow is described. Data flow transparency: documentation mentions localStorage for data storage, but does not detail data flow. Sensitive data handling: SECURITY.md warns not to store passwords and API keys, but no encryption is provided. Dependency security: yarn audit is suggested, but no vulnerability scan results are provided. External effects: AWS deployment and gateways are supported, but permission controls are not described. Rollback: no rollback mechanism mentioned. Source attribution: publisher identity is unverified.
Self-consistency: README and SECURITY.md descriptions are consistent, test files show unit tests. Dependency availability: package.json lists dependencies, but no lock file or integrity checks are provided. Failure messages: tests check scripts handle missing tmux session gracefully, but no user-visible error messages are provided.
Audience and scenarios: README clearly defines target users (founders, developers, teams). Capability boundaries: features are listed, but limitations are not explicit. Trigger precision: no specific trigger conditions provided. Environment fit: supports macOS, Linux, Windows (WSL2), but detailed configuration is not provided.
Information architecture: documentation is well-structured with quick start, features, and doc links. Install notes: curl and manual install provided. Naming stability: version 0.36.27, but no changelog. Examples and FAQ: FAQ present, but examples limited. Known limitations: SECURITY.md lists security limitations, but functional limitations are not listed. License: MIT license file exists. Versioning and changelog: version number exists, but no CHANGELOG. Maintenance responsibility: author info clear, but unverified.
Output usability: features are described, but no actual output examples. Marginal value: emphasizes multi-machine, messaging, etc., but no comparison with other tools. Cost-benefit: no performance or resource consumption data.
Claim traceability: claims in README lack evidence links. Cross-source corroboration: relies on single source. Fact-inference separation: documentation distinguishes story and features, but not explicitly labeled.
- Default network binding to 0.0.0.0:23000 without authentication poses a serious security risk; change to localhost-only and add authentication.
- No dependency lock file or integrity checks are provided, increasing supply chain security risk.
- Publisher identity is unverified; exercise caution in trust assessment.