ADC is a desktop application for orchestrating teams of autonomous coding agents across multiple projects. It provides a unified command center to spawn, monitor, and coordinate AI agent teams — with automated QA review loops, workflow-driven task boards, integrated terminals, git workflows, and productivity tools.
User Story: "As a developer managing multiple codebases, I want to delegate tasks to AI agent teams and track their progress visually, so I can ship features faster while maintaining oversight and quality through automated QA."
Architecture Overview
| Layer | Components | Technology |
|---|---|---|
| Renderer | React Components, TanStack Router, React Query, Zustand | React 19, TypeScript |
| Preload Bridge | Typed IPC Context, window.api | Electron contextBridge |
| Main Process | IPC Router, 29 Services, OAuth, MCP Servers, PTY | Node.js, Electron 39 |
| External | GitHub/Spotify/Calendar APIs, Anthropic SDK | REST, WebSocket, OAuth2 |
| Storage | SQLite, JSON Files, Task Specs | File system, SQLite |
Data Flow: React Query hooks call ipc() → Preload bridge → IPC Router → Services → External APIs/Storage
| Feature | Description |
|---|---|
| Agent Team Management | Spawn, pause, resume, and terminate multiple Claude CLI agents simultaneously |
| Workflow-Driven Task Table | Sortable, filterable task table with customizable agent workflows and /implement-feature skill integration |
| Agent Queue | Queue tasks for sequential agent execution with dependency management |
| Progress Watching | Real-time sync of progress events between paired devices via the P2P transport |
| Task Launcher | Launch Claude CLI sessions directly from task rows with project context |
| Feature | Description |
|---|---|
| QA Review Pipeline | Automated quality gates — every task reviewed by QA agents before merge |
| Codebase Guardian | Structural integrity checks for architecture compliance, import health, and type safety |
| Test Gate Enforcement | Mandatory test suite runs before any work is claimed complete |
| QA Agents | AI-powered code review, regression detection, and standards enforcement |
| Feature | Description |
|---|---|
| Multi-Project Support | Manage multiple codebases with instant project switching |
| Workspaces | Group related projects with shared settings, max concurrency limits, and device assignment |
| Device Sync | Multi-device sync via direct peer-to-peer connections (TLS-pinned WebSocket); workspaces can be hosted on specific devices |
| Git Worktrees | Parallel development with visual worktree management |
| Branch Merging | Visual conflict resolution and merge preview |
| Feature | Description |
|---|---|
| Integrated Terminals | Multi-pane terminal grid (xterm.js + node-pty) |
| Daily Planner | Time blocking with drag-and-drop scheduling |
| Daily Briefing | AI-generated summaries and task suggestions |
| Notes & Ideas | Quick capture with tags and pinning |
| Spotify Controls | Music playback without leaving the app |
| Google Calendar | View and create calendar events |
| GitHub Integration | PRs, issues, and repo management |
| Slack/Discord | MCP-powered communication tools |
| Feature | Description |
|---|---|
| Persistent Assistant | Built-in Claude assistant with conversation history (Anthropic SDK) |
| Smart Task Creation | Natural language task decomposition |
| Chrono Time Parser | Parse "tomorrow at 3pm" into timestamps |
| Voice Interface | Speech-to-text input and text-to-speech output |
| Screen Capture | Quick screenshots for context sharing |
| Email Integration | SMTP-based notifications |
| Notification Watchers | Background monitoring for Slack/GitHub updates |
The Task Table provides sortable, filterable task management with customizable agent workflows:
graph LR
subgraph TaskTable["Task Table"]
Backlog["Backlog"] --> Queue["Queue"]
Queue --> InProgress["In Progress"]
InProgress --> AIReview["AI Review"]
AIReview --> HumanReview["Human Review"]
HumanReview --> Done["Done"]
end
subgraph AgentWorkflow["/implement-feature Workflow"]
Plan["Phase 1: Plan"] --> Spawn["Phase 2: Spawn Agents"]
Spawn --> Execute["Phase 3: Execute in Waves"]
Execute --> Test["Phase 4: Test Gate"]
Test --> QA["Phase 5: QA Verification"]
QA --> Merge["Phase 6: Integration"]
end
TaskTable -.-> AgentWorkflow
How It Works:
- Create a task in the Task Table with requirements and priority
- Launch
/implement-featureskill from the task row actions - Agents are spawned in waves (Schema → Service → IPC → Components)
- Mandatory test suite runs before any work is claimed complete
- Progress syncs to
docs/progress/*.mdfor crash recovery - QA agents verify each component before integration
| Layer | Technology |
|---|---|
| Desktop | Electron 39 |
| UI | React 19, TanStack Router 1.95 |
| State | React Query 5, Zustand 5 |
| Styling | Tailwind CSS 4, Radix UI |
| Validation | Zod 4 |
| Terminal | xterm.js 6, @lydell/node-pty |
| Sync | P2P TLS WebSocket, Ed25519 identity, mDNS discovery |
| Testing | Vitest, Playwright |
Download the latest installer from GitHub Releases.
ADC is currently distributed unsigned. The first launch shows a security warning on both platforms — this is expected. Once bypassed, the OS remembers the choice for future launches.
- Download
ADC-Setup-<version>-x64.exe - Double-click to run
- SmartScreen will show "Windows protected your PC" → click More info → Run anyway
- Walk through the installer wizard
- Auto-updates work normally after install
Run this single command in Terminal — it downloads the latest release, installs it to /Applications, and strips the Gatekeeper quarantine attribute so macOS doesn't falsely claim the app is "damaged":
curl -sSL https://github.com/ParkerM2/Agentic-Desktop-Command/releases/latest/download/install-mac.sh | bashThe script auto-detects arm64 vs x64 and launches ADC when done. After this, double-clicking the app works normally.
Why the script? Browser downloads set
com.apple.quarantineon the DMG, which on recent macOS (Sonoma 14.5+ / Sequoia) triggers a blanket "damaged" Gatekeeper rejection for any app that isn't Apple-notarized. Notarization requires a paid Apple Developer subscription. Usingcurlbypasses browser quarantine, and the finalxattr -crscrubs anything still attached — no paid subscription needed.Manual install (if you prefer): Download the DMG from Releases, drag ADC.app to /Applications, then run
xattr -cr /Applications/ADC.appin Terminal.
Updates are manual on macOS — when a new version is available, ADC shows a notification with a Download button that opens the releases page. Run the install script again to update. Your data persists in ~/Library/Application Support/ADC/.
git clone https://github.com/ParkerM2/Agentic-Desktop-Command.git
cd Agentic-Desktop-Command
npm install
npm run dev| Command | Description |
|---|---|
npm run dev |
Start development mode |
npm run build |
Production build |
npm run lint |
ESLint check |
npm run typecheck |
TypeScript check |
npm run test |
Run test suite |
src/
├── main/ # Electron main process (29 services)
├── preload/ # IPC context bridge
├── renderer/ # React app (31 features)
└── shared/ # Types + IPC contract (single source of truth)
.claude/agents/ # 30 specialist agent definitions
Devices pair via PIN ritual (Settings → Peers) and sync over a direct TLS-pinned WebSocket connection. No central server is involved — each device discovers paired peers via mDNS and connects directly.
See docs/peers/ for the protocol specification.
| Metric | Value |
|---|---|
| TypeScript files | ~300 |
| Feature modules | 25 |
| Main services | 29 |
| IPC handlers | 30 |
| Agent definitions | 27 |
| Color themes | 7 × 2 modes |
AGPL-3.0 — see LICENSE
Built by Parker · Powered by Claude