- Updated `dev:kill` script to use a dedicated Node.js script for improved process termination. - Enhanced `TeamProvisioningService` to trigger team refresh events for live lead replies, improving message handling. - Refactored message deduplication logic in `handleGetData` to prevent duplicate messages from lead sessions and lead processes. - Introduced `validateOpenPathUserSelected` function to allow user-selected paths while enforcing security checks. - Improved UI components in `TeamListView` and `ActivityItem` for better user experience and accessibility. - Added progress bar for task completion in `DashboardView`, enhancing task tracking visibility. |
||
|---|---|---|
| .claude | ||
| .github | ||
| .husky | ||
| bin | ||
| build | ||
| docs | ||
| public | ||
| resources | ||
| scripts | ||
| src | ||
| test | ||
| .dockerignore | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .nvmrc | ||
| .prettierignore | ||
| .prettierrc.json | ||
| CHANGELOG.md | ||
| CLA.md | ||
| CLAUDE.md | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| docker-compose.yml | ||
| Dockerfile | ||
| electron.vite.config.ts | ||
| eslint.config.js | ||
| knip.json | ||
| LICENSE | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| postcss.config.cjs | ||
| README.md | ||
| SECURITY.md | ||
| tailwind.config.js | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| tsconfig.test.json | ||
| vite.standalone.config.ts | ||
| vitest.config.ts | ||
| vitest.critical.config.ts | ||
Claude Agent Teams UI
You're the CTO, agents are your team. They handle tasks themselves, message each other, review each other's code. You just look at the kanban board and drink coffee.
100% free, open source. No API keys. No configuration. Just download, open, and see everything Claude Code did.
Installation
Direct Download
| Platform | Download | Notes |
|---|---|---|
| macOS (Apple Silicon) | .dmg |
Download the arm64 asset. Drag to Applications. On first launch: right-click → Open |
| macOS (Intel) | .dmg |
Download the x64 asset. Drag to Applications. On first launch: right-click → Open |
| Linux | .AppImage / .deb / .rpm / .pacman |
Choose the package format for your distro (portable AppImage or native package manager format). |
| Windows | .exe |
Standard installer. May trigger SmartScreen — click "More info" → "Run anyway" |
| Docker | docker compose up |
Open http://localhost:3456. See Docker / Standalone Deployment for details. |
The app reads session logs from ~/.claude/ — the data is already on your machine. No setup, no API keys, no login.
What the CLI Hides vs. What Claude Agent Teams UI Shows
| What you see in the terminal | What Claude Agent Teams UI shows you |
|---|---|
Read 3 files |
Exact file paths, syntax-highlighted content with line numbers |
Searched for 1 pattern |
The regex pattern, every matching file, and the matched lines |
Edited 2 files |
Inline diffs with added/removed highlighting per file |
| A three-segment context bar | Per-turn token attribution across 7 categories — CLAUDE.md breakdown, skills, @-mentions, tool I/O, thinking, teams, user text — with compaction visualization showing how context fills, compresses, and refills |
| Subagent output interleaved with the main thread | Isolated execution trees per agent, expandable inline with their own metrics |
| Teammate messages buried in session logs | Color-coded teammate cards with name, message, and full team lifecycle visibility |
| Critical events mixed into normal output | Trigger-filtered notification inbox for .env access, payment-related file paths, execution errors, and high token usage |
--verbose JSON dump |
Structured, filterable, navigable interface — no noise |
Docker / Standalone Deployment
Run Claude Agent Teams UI without Electron — in Docker, on a remote server, or anywhere Node.js runs.
Quick Start (Docker Compose)
docker compose up
Open http://localhost:3456 in your browser.
Quick Start (Docker)
docker build -t claude-agent-teams-ui .
docker run -p 3456:3456 -v ~/.claude:/data/.claude:ro claude-agent-teams-ui
Quick Start (Node.js)
pnpm install
pnpm standalone:build
node dist-standalone/index.cjs
Environment Variables
| Variable | Default | Description |
|---|---|---|
CLAUDE_ROOT |
~/.claude |
Path to the .claude data directory |
HOST |
0.0.0.0 |
Bind address |
PORT |
3456 |
Listen port |
CORS_ORIGIN |
* (standalone) |
CORS origin policy (*, specific origin, or comma-separated list) |
Notes
- Real-time updates may be slower than Electron. The Electron app uses native file system watchers with IPC for instant updates. The Docker/standalone server uses SSE (Server-Sent Events) over HTTP, which may introduce slight delays when sessions are actively being written to.
- Custom Claude root path. If your
.claudedirectory is not at~/.claude, update the volume mount to point to the correct location:# Example: Claude root at /home/user/custom-claude-dir docker run -p 3456:3456 -v /home/user/custom-claude-dir:/data/.claude:ro claude-agent-teams-ui # Or with docker compose, set the CLAUDE_DIR env variable: CLAUDE_DIR=/home/user/custom-claude-dir docker compose up
Security-Focused Deployment
The standalone server has zero outbound network calls. For maximum isolation:
docker run --network none -p 3456:3456 -v ~/.claude:/data/.claude:ro claude-agent-teams-ui
See SECURITY.md for a full audit of network activity.
Development
Build from source
Prerequisites: Node.js 20+, pnpm 10+
git clone https://github.com/777genius/claude_agent_teams_ui.git
cd claude_agent_teams_ui
pnpm install
pnpm dev
The app auto-discovers your Claude Code projects from ~/.claude/.
Build for Distribution
pnpm dist:mac:arm64 # macOS Apple Silicon (.dmg)
pnpm dist:mac:x64 # macOS Intel (.dmg)
pnpm dist:win # Windows (.exe)
pnpm dist:linux # Linux (AppImage/.deb/.rpm/.pacman)
pnpm dist # macOS + Windows + Linux
Scripts
| Command | Description |
|---|---|
pnpm dev |
Development with hot reload |
pnpm build |
Production build |
pnpm typecheck |
TypeScript type checking |
pnpm lint:fix |
Lint and auto-fix |
pnpm test |
Run all tests |
pnpm test:watch |
Watch mode |
pnpm test:coverage |
Coverage report |
pnpm check |
Full quality gate (types + lint + test + build) |
Contributing
See CONTRIBUTING.md for development guidelines. Please read our Code of Conduct.
Security
IPC handlers validate all inputs with strict path containment checks. File reads are constrained to the project root and ~/.claude. Sensitive credential paths are blocked. See SECURITY.md for details.