MCPcopy Index your code
hub / github.com/alpbahadur/49Agents

github.com/alpbahadur/49Agents @v0.3.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.3.6 ↗ · + Follow
2,265 symbols 7,623 edges 80 files 75 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

49Agents

49 Agents IDE

The first 2D agentic IDE. Open source.

All agents. All terminals. All projects. All machines. One unified space.

GitHub Stars Discord Twitter Follow

Before

After — 49Agents

49

Before — terminal clutter

diagram_with_pane_titles


Before 49
14 terminal tabs One zoomable canvas
SSH into each machine All machines, zero SSH
Alt-tab to check Claude Claude status on every pane
Can't work from phone Any device, anywhere
Terminal-only, no files Monaco editor on the canvas
🤷 Git graph
🤷 Interactive issue tables (Beads)
🤷 Permission notifications
🤷 Markdown notes

Quick Start

git clone https://github.com/49Agents/49Agents.git
cd 49Agents
./49ctl setup    # interactive setup (one time)
./49ctl start    # start cloud server + agent

Open http://localhost:1071. No account, no login, no token.

Don't want to self-host? 49agents.com tutorial


Desktop App (macOS)

Download the latest .dmg from GitHub Releases.

After downloading, macOS will block the app because it is not notarized. Run this once to allow it:

xattr -cr /Applications/49Agents.app

Then open 49Agents normally. It runs as a tray icon — look for it in your menu bar.

Updates are delivered in-app: click the tray icon and choose Check for Updates.


Features

Canvas and Workspace

  • [x] Infinite canvas — no tabs, no splits. Place panes anywhere on a zoomable surface
  • [x] Drag, resize, arrange — your workspace grows with your thinking, not your monitor
  • [x] Zoom levels — zoom out for the big picture, zoom in to focus
  • [x] Persistent layout — everything stays where you put it

Terminals

  • [x] Real tmux sessions via ttyd — full ANSI color, scrollback, your shell config
  • [x] Broadcast input — type once, send keystrokes to multiple terminals simultaneously

Multi-Machine

  • [x] Zero SSH — connect agents from any machine to one canvas
  • [x] HUD overlay — live CPU, RAM, and Claude API usage across all connected machines

Access

  • [x] Any device — laptop, tablet, phone. Same workspace, same layout
  • [x] Tailscale / LAN / hosted relay — works however you connect
  • [x] Fully self-hosted — the entire stack runs on your hardware
  • [x] No data stored server-side — terminal I/O is relayed, never persisted

Keyboard-First

  • [x] Tab chords for pane switching
  • [x] WASD move mode for spatial navigation
  • [x] Shortcut numbers (1–9) for instant pane focus
  • [x] Broadcast mode for multi-terminal input

Architecture

┌──────────────┐    WSS    ┌──────────────┐    WSS    ┌──────────────┐
│  🖥️ PC       │ ────────►│  ☁️ Relay    │ ◄──────── │  📱 Browser  │
│  49-agent    │           │              │           │              │
└──────────────┘           └──────────────┘           └──────────────┘
                           Self-host or use
                            49agents.com

Multi-machine setup

┌──────────────┐                                         ┌──────────────┐
│  🖥️ MacBook  │ ─── WSS ───┐                        ┌───│  📱 Phone   │
│  49-agent    │             │                       │   │  Browser     │
└──────────────┘             │                       │   └──────────────┘
                             │   ┌──────────────┐    │
┌──────────────┐             ├──►│  ☁️ Relay    │◄───┤   ┌──────────────┐
│  🖥️ PC       │ ─── WSS ───┤   │              │     ├───│  💻 Laptop  │
│  49-agent    │             │   │  Self-host   │    │   │  Browser     │
└──────────────┘             │   │  or use      │    │   └──────────────┘
                             │   │ 49agents.com │    │
┌──────────────┐             │   └──────────────┘    │    ┌──────────────┐
│  ☁️ Azure VM │ ─── WSS ───┘                        └───│  📱 Tablet   │
│  49-agent    │                                          │  Browser     │
└──────────────┘                                          └──────────────┘

                  Each agent independently connects
                   to the relay via WebSocket.
                  No terminal data stored server-side.

License

BSL 1.1 — free for individuals and small teams. Converts to MIT on 2030-02-26.

Core symbols most depended-on inside this repo

Shape

Function 1,258
Method 961
Class 46

Languages

TypeScript100%

Modules by API surface

cloud/public/lib/xterm.mjs1,118 symbols
cloud/src-client/app.js344 symbols
cloud/public/app.min.js326 symbols
cloud/src-client/dev-panel.js31 symbols
agent/services/tmux.js26 symbols
desktop/src/main.js23 symbols
cloud/src-client/modules/notifications.js22 symbols
cloud/src-client/tutorial.js19 symbols
cloud/src-client/modules/git-graph.js19 symbols
agent/src/terminalManager.js18 symbols
cloud/src-client/modules/minimap.js15 symbols
cloud/public/lib/addon-web-links.mjs14 symbols

For agents

$ claude mcp add 49Agents \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page