mirror of
https://github.com/jlengrand/Maestro.git
synced 2026-03-10 08:31:19 +00:00
docs: Simplify README and move architecture diagram to ARCHITECTURE.md
- Streamline Key Concepts table with clearer terminology - Move Mermaid architecture diagram to ARCHITECTURE.md - Rename "Project" to "Agent" in diagram labels for consistency - Keep README focused on user-facing information Claude ID: 900964ee-78bd-47d3-af6a-f8ef6112e80c Maestro ID: 5a166b38-b7e9-47f0-a8ff-0113c65f2682
This commit is contained in:
@@ -18,6 +18,53 @@ Deep technical documentation for Maestro's architecture and design patterns. For
|
||||
|
||||
---
|
||||
|
||||
## Architecture
|
||||
|
||||
Maestro organizes work into **Projects** (workspaces), each with a **CLI Terminal** and multiple **Agent Tabs**. Each tab can be connected to an **Agent Session** - either newly created or resumed from the session pool.
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
subgraph Maestro["Maestro App"]
|
||||
subgraph ProjectA["Agent A (workspace)"]
|
||||
TermA[CLI Terminal]
|
||||
subgraph TabsA["Agent Tabs"]
|
||||
Tab1A[Tab 1]
|
||||
Tab2A[Tab 2]
|
||||
end
|
||||
end
|
||||
subgraph ProjectB["Agent B (workspace)"]
|
||||
TermB[CLI Terminal]
|
||||
subgraph TabsB["Agent Tabs"]
|
||||
Tab1B[Tab 1]
|
||||
Tab2B[Tab 2]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
subgraph SessionPool["Agent Session Pool"]
|
||||
direction TB
|
||||
S1["Session α"]
|
||||
S2["Session β"]
|
||||
S3["Session γ"]
|
||||
S4["Session δ"]
|
||||
S5["..."]
|
||||
end
|
||||
|
||||
Tab1A -.->|"resume"| S1
|
||||
Tab2A -.->|"resume"| S2
|
||||
Tab1B -.->|"resume"| S3
|
||||
Tab2B -.->|"new"| S4
|
||||
|
||||
style Maestro fill:#9b8cd6,stroke:#6b5b95
|
||||
style ProjectA fill:#87ceeb,stroke:#4682b4
|
||||
style ProjectB fill:#87ceeb,stroke:#4682b4
|
||||
style TermA fill:#90ee90,stroke:#228b22
|
||||
style TermB fill:#90ee90,stroke:#228b22
|
||||
style TabsA fill:#ffe4a0,stroke:#daa520
|
||||
style TabsB fill:#ffe4a0,stroke:#daa520
|
||||
style SessionPool fill:#ffb6c1,stroke:#dc143c
|
||||
```
|
||||
|
||||
## Dual-Process Architecture
|
||||
|
||||
Maestro uses Electron's main/renderer split with strict context isolation.
|
||||
|
||||
57
README.md
57
README.md
@@ -41,62 +41,15 @@ Download the latest release for your platform from the [Releases](https://github
|
||||
|
||||
> **Note**: Maestro currently supports Claude Code only. Support for other agentic coding tools may be added in future releases based on community demand.
|
||||
|
||||
## Architecture
|
||||
|
||||
Maestro organizes work into **Projects** (workspaces), each with a **CLI Terminal** and multiple **Agent Tabs**. Each tab can be connected to an **Agent Session** - either newly created or resumed from the session pool.
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
subgraph Maestro["Maestro App"]
|
||||
subgraph ProjectA["Project A (workspace)"]
|
||||
TermA[CLI Terminal]
|
||||
subgraph TabsA["Agent Tabs"]
|
||||
Tab1A[Tab 1]
|
||||
Tab2A[Tab 2]
|
||||
end
|
||||
end
|
||||
subgraph ProjectB["Project B (workspace)"]
|
||||
TermB[CLI Terminal]
|
||||
subgraph TabsB["Agent Tabs"]
|
||||
Tab1B[Tab 1]
|
||||
Tab2B[Tab 2]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
subgraph SessionPool["Agent Session Pool"]
|
||||
direction TB
|
||||
S1["Session α"]
|
||||
S2["Session β"]
|
||||
S3["Session γ"]
|
||||
S4["Session δ"]
|
||||
S5["..."]
|
||||
end
|
||||
|
||||
Tab1A -.->|"resume"| S1
|
||||
Tab2A -.->|"resume"| S2
|
||||
Tab1B -.->|"resume"| S3
|
||||
Tab2B -.->|"new"| S4
|
||||
|
||||
style Maestro fill:#9b8cd6,stroke:#6b5b95
|
||||
style ProjectA fill:#87ceeb,stroke:#4682b4
|
||||
style ProjectB fill:#87ceeb,stroke:#4682b4
|
||||
style TermA fill:#90ee90,stroke:#228b22
|
||||
style TermB fill:#90ee90,stroke:#228b22
|
||||
style TabsA fill:#ffe4a0,stroke:#daa520
|
||||
style TabsB fill:#ffe4a0,stroke:#daa520
|
||||
style SessionPool fill:#ffb6c1,stroke:#dc143c
|
||||
```
|
||||
|
||||
### Key Concepts
|
||||
|
||||
| Concept | Description |
|
||||
|---------|-------------|
|
||||
| **Project** | A workspace tied to a directory. Contains one CLI terminal and multiple agent tabs. |
|
||||
| **CLI Terminal** | A PTY shell session for running commands directly. One per project. |
|
||||
| **Agent Tab** | A conversation context within a project. Each tab has its own input, images, and message history. |
|
||||
| **Agent Session** | A persistent conversation with an AI coding agent. Can be resumed across tabs or app restarts. |
|
||||
| **Session Pool** | All agent sessions for a project, including those created by AutoRun, manually by user, or imported. Sessions can be starred, named, and mapped to tabs. |
|
||||
| **Agents** | An agent has a workspace tied to a directory. Contains one CLI terminal and multiple agent tabs. |
|
||||
| **CLI Terminal** | A PTY shell session for running commands directly. One per agent. |
|
||||
| **Agent Tabs** | A conversation context with an agent. Each tab has its own input, images, and message history. |
|
||||
| **Agent Sessions** | The complete list of conversations with this specific agent. |
|
||||
| **History** | Actions made by the user or autonomously. |
|
||||
|
||||
## UI Overview
|
||||
|
||||
|
||||
Reference in New Issue
Block a user