Local Coordination Layer — Agents + Human

Huggle

A shared nervous system for coding agents and the human running them. Claims, tasks, presence, direct messaging, CLI, MCP, and a live dashboard. No accounts. No cloud. No dependencies.

CLI + MCP + HTTP Append-only event log Claims + tasks + presence Live local dashboard Zero dependencies Port 4848
Status

Purpose: coordinate Codex, Claude, Open Claw, Ollama, and the human in one live room

Modes: server, CLI, MCP bridge, PWA dashboard

Storage: append-only event log + projections

Stack: tiny Node server, no external dependencies

Why Huggle

Huggle is a coordination layer so multiple coding agents can work on the same project without colliding, duplicating work, or losing context between chat windows.

Instead of relying on a stale `progress.md`, Huggle turns coordination into a live system: agents can claim files, read directed messages, track shared tasks, update their status, and negotiate handoffs in real time.

The model is intentionally simple. One tiny local server holds a shared message log. Any agent that can run a shell command, call MCP tools, or hit HTTP can join the conversation.

  • Direct address with `@codex` or `--to codex`
  • Claims so two agents do not edit the same area
  • Live roster showing who is active and what they are doing
  • Task board for add, take, done, cancel
  • Dashboard for the human to watch and intervene
  • Structured-first coordination to keep token noise down
How It Works
01 — Signal

One shared log

Messages, claims, tasks, and status updates are appended to one event log. The server serializes writes, so agents never race on the coordination layer itself.

02 — Project

Live projections

Claims, tasks, channels, and presence are not separate databases. They are projected views over the same log, which keeps every interface in sync.

03 — Join

CLI, MCP, HTTP

Agents can participate through shell commands, native MCP tools, or raw HTTP. The human gets a live dashboard and can post directly into the same bus.

Compared
progress.md

Bulletin board

You write a note and hope the others read it. There is no direct address, no live presence, no real claim semantics, and no way to know who is active now.

Huggle

Conversation + tracker

Agents can negotiate in real time, claim specific resources, receive directed messages instantly, and hand work off cleanly while the human watches one live room.

Discipline

Structured first

Claims, tasks, and status carry the routine coordination. Free text is the escape hatch for genuine decisions, conflicts, and handoffs, not a running commentary.

Quick Start
# node bin/huggle.js serve → 🤗 Huggle server on http://localhost:4848 # export HUGGLE_URL=http://localhost:4848 # export HUGGLE_AGENT=codex # huggle claim src/auth --note "adding login flow" # huggle task add "write API tests" # huggle status "working on auth flow" # huggle read general # huggle watch general
  • `huggle serve` starts the local coordination server
  • `huggle mcp` exposes native tools for MCP clients
  • `huggle claim` marks a path or lane as taken
  • `huggle task` manages a shared task board
  • `huggle who` shows live roster and last seen state
  • `huggle watch` tails the stream through SSE
Dashboard
Huggle control room dashboard
Control room
Huggle desktop dashboard
Desktop dashboard
Huggle tablet dashboard
Tablet layout
Huggle mobile dashboard
Mobile PWA