An open-source desktop app to orchestrate multiple AI CLI agents simultaneously with automations and Kanban…
Dorothy
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
A beautiful desktop app to orchestrate your Claude Code ,Codex, Gemini, Grok and local agents. Deploy, monitor, and debug — all from one delightful interface. Free and open source.
Table of Contents
- Why Dorothy
- Core Features
- Automations
- Kanban Task Management
- Scheduled Tasks
- Remote Control
- Vault
- SocialData (Twitter/X)
- Google Workspace
- MCP Servers & Tools
- Installation
- Architecture
- Project Structure
- Tech Stack
- Configuration & Storage
- Development
- Contributing
- License
---
Why Dorothy
AI CLI tools are powerful — but it runs one agent at a time, in one terminal. Dorothy removes that limitation:
- **Run 10+ agents simultaneously** across different projects and codebases
- **Automate agent workflows** — trigger agents on GitHub PRs, issues, and external events
- **Delegate and coordinate** — a Super Agent orchestrates other agents via MCP tools
- **Manage tasks visually** — Kanban board with automatic agent assignment
- **Schedule recurring work** — cron-based tasks that run autonomously
- **Control from anywhere** — Telegram and Slack integration for remote management
---
Core Features
Parallel Agent Management
Run multiple agents simultaneously, each in its own isolated PTY terminal session. Agents operate independently across different projects, codebases, and tasks.
**Capabilities:**
- Spawn unlimited concurrent agents across multiple projects
- Each agent runs in an isolated terminal with full PTY support
- Assign skills, model selection (sonnet, opus, haiku), and project context per agent
- Send interactive input to any running agent in real-time
- Real-time terminal output streaming per agent
- Agent lifecycle management: idle → running → completed / error / waiting
- Secondary project paths via --add-dir for multi-repo context
- Git worktree support for branch-isolated development
- Persistent agent state across app restarts
- Autonomous execution mode (--dangerously-skip-permissions) for unattended operation
Super Agent (Orchestrator)
A meta-agent that programmatically controls all other agents. Give it a high-level task and it delegates, monitors, and coordinates the work across your agent pool.
- Creates, starts, and stops agents programmatically via MCP tools
- Delegates tasks based on agent capabilities and assigned skills
- Monitors progress, captures output, and handles errors
- Responds to Telegram and Slack messages for remote orchestration
- Can spin up temporary agents for one-off tasks and clean them up after
Usage Tracking
Monitor Claude Code API usage across all agents — token consumption, conversation history, cost tracking, and activity patterns.
Skills & Plugin System
Extend agent capabilities with skills from skills.sh and the built-in plugin marketplace.
- **Code Intelligence**: LSP plugins for TypeScript, Python, Rust, Go, and more
- **External Integrations**: GitHub, GitLab, Jira, Figma, Slack, Vercel
- **Development Workflows**: Commit commands, PR review tools
- Install skills per-agent for specialized task handling
Settings Management
Configure Claude Code settings directly — permissions, environment variables, hooks, and model defaults.
---
Automations
Automations poll external sources, detect new or updated items, and spawn Claude agents to process each item autonomously. This enables fully automated CI/CD-like workflows powered by AI.
Supported Sources
| Source | Status | Polling Method |
|--------|--------|---------------|
| **GitHub** | Active | gh CLI — pull requests, issues, releases |
| **JIRA** | Active | REST API v3 — issues, bugs, stories, tasks |
| **Pipedrive** | Planned | — |
| **Twitter** | Planned | — |
| **RSS** | Planned | — |
| **Custom** | Planned | Webhook support |
Execution Pipeline
1. **Scheduler** triggers the automation on its cron schedule or interval
2. **Poller** fetches items from the source (e.g., GitHub PRs via gh CLI)
3. **Filter** applies trigger conditions (event type, new vs. updated)
4. **Deduplication** skips already-processed items using content hashing
5. **Agent spawning** — a temporary agent is created for each item
6. **Prompt injection** — item data injected via template variables
7. **Autonomous execution** — agent runs with full MCP tool access
8. **Output delivery** — agent posts results to Telegram, Slack, or GitHub comments
9. **Cleanup** — temporary agent is deleted after completion
Template Variables
Use these in your agentPrompt and outputTemplate:
GitHub Variables
| Variable | Description |
|----------|-------------|