let-them-talk 3.6.2 → 3.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +71 -0
- package/README.md +87 -3
- package/cli.js +1 -1
- package/dashboard.html +7480 -7399
- package/dashboard.js +8 -3
- package/office/agents.js +8 -5
- package/office/animation.js +2 -1
- package/office/campus-env.js +41 -19
- package/office/environment.js +60 -67
- package/office/index.js +50 -0
- package/office/monitors.js +12 -3
- package/office/player.js +436 -0
- package/office/spectator-camera.js +30 -21
- package/package.json +1 -1
- package/server.js +1114 -52
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,76 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.8.0] - 2026-03-16
|
|
4
|
+
|
|
5
|
+
### Changed — Group Conversation Overhaul
|
|
6
|
+
|
|
7
|
+
Redesigned from the ground up based on 3-agent collaborative testing and design session.
|
|
8
|
+
|
|
9
|
+
**Single-write group messages (O(1) instead of O(N)):**
|
|
10
|
+
- `send_message` in group mode now writes ONE message with `to: "__group__"` instead of N copies per agent
|
|
11
|
+
- `broadcast` in group mode also uses single `__group__` write
|
|
12
|
+
- Old O(N) auto-broadcast loop completely removed
|
|
13
|
+
- Result: with 6 agents, a message now creates 1 write instead of 6. A broadcast round that previously created 30 writes now creates 6.
|
|
14
|
+
|
|
15
|
+
**`addressed_to` field + `should_respond` hints:**
|
|
16
|
+
- `send_message(to="AgentName")` in group mode stores `addressed_to: ["AgentName"]` on the `__group__` message
|
|
17
|
+
- `listen_group` response includes `addressed_to_you: true/false` and `should_respond: true/false` per message
|
|
18
|
+
- Hint-based, not enforced — agents can still respond when they have valuable input
|
|
19
|
+
- No `addressed_to` = everyone should respond (backwards compatible)
|
|
20
|
+
|
|
21
|
+
**Adaptive cooldown:**
|
|
22
|
+
- Cooldown now scales with team size: `max(500ms, N * 500ms)` where N = alive agent count
|
|
23
|
+
- 2 agents = 1s, 3 agents = 1.5s, 6 agents = 3s, 10 agents = 5s
|
|
24
|
+
- Explicit `group_cooldown` config still respected if set
|
|
25
|
+
|
|
26
|
+
**Shorter stagger:**
|
|
27
|
+
- Deterministic stagger reduced from 0-3000ms to 500-1500ms
|
|
28
|
+
- Same agent always gets the same delay (hash-based)
|
|
29
|
+
|
|
30
|
+
**Alive-only garbage collection:**
|
|
31
|
+
- `autoCompact` for `__group__` messages only checks alive agents for consumed tracking
|
|
32
|
+
- Dead agents no longer block message compaction forever
|
|
33
|
+
- Dead agents catch up via `get_compressed_history()` which reads history.jsonl (never compacted)
|
|
34
|
+
|
|
35
|
+
**Own-message filtering:**
|
|
36
|
+
- Agents no longer see their own `__group__` messages in `listen_group` batches
|
|
37
|
+
- Own messages are auto-consumed on sight
|
|
38
|
+
- Own messages still visible in `context` array for reference
|
|
39
|
+
|
|
40
|
+
### Added — 3D World: Player Mode & Improvements
|
|
41
|
+
- **Player character** — users can spawn as a controllable character in the 3D Hub
|
|
42
|
+
- **Spectator camera improvements** — refined controls and speed
|
|
43
|
+
- **Environment updates** — campus environment refinements
|
|
44
|
+
|
|
45
|
+
## [3.7.0] - 2026-03-16
|
|
46
|
+
|
|
47
|
+
### Added — Agent Ecosystem (20 new tools, 52 total)
|
|
48
|
+
|
|
49
|
+
**Tier 1 — Critical Infrastructure:**
|
|
50
|
+
- **`get_briefing()`** — full project onboarding in one call: agents, tasks, decisions, KB, locked files, progress, project file tree
|
|
51
|
+
- **`lock_file(path)` / `unlock_file(path?)`** — exclusive file editing with auto-release on agent death
|
|
52
|
+
- **`log_decision(decision, reasoning?, topic?)` / `get_decisions(topic?)`** — persistent decision log, prevents re-debating
|
|
53
|
+
- **Agent recovery on rejoin** — `register()` returns active tasks, workspace keys, recent messages for returning agents
|
|
54
|
+
|
|
55
|
+
**Tier 2 — Quality of Life:**
|
|
56
|
+
- **`kb_write(key, content)` / `kb_read(key?)` / `kb_list()`** — shared team knowledge base (any agent reads/writes)
|
|
57
|
+
- **Event hooks** — auto-fires system messages on `agent_join`, `task_complete`, `all_tasks_done`, `dependency_met`
|
|
58
|
+
- **`update_progress(feature, percent, notes)` / `get_progress()`** — feature-level progress tracking with overall %
|
|
59
|
+
- **`get_compressed_history()`** — auto-compresses old messages into summary segments, keeps recent verbatim
|
|
60
|
+
- **`listen_group()` now blocks indefinitely** — no more timeout, agents never drop out
|
|
61
|
+
|
|
62
|
+
**Tier 3 — Advanced Collaboration:**
|
|
63
|
+
- **`call_vote(question, options)` / `cast_vote(vote_id, choice)` / `vote_status(vote_id?)`** — team voting with auto-resolve when all vote
|
|
64
|
+
- **`request_review(file, desc)` / `submit_review(review_id, status, feedback)`** — code review pipeline with approve/changes_requested
|
|
65
|
+
- **`declare_dependency(task_id, depends_on)` / `check_dependencies(task_id?)`** — task dependency tracking with auto-notify on resolve
|
|
66
|
+
- **`get_reputation(agent?)` / `suggest_task()`** — agent reputation tracking (auto-detects strengths), task suggestions based on skills
|
|
67
|
+
- **Auto-reputation tracking** — global hook tracks every action (messages, tasks, reviews, decisions, KB writes) without manual calls
|
|
68
|
+
|
|
69
|
+
### Fixed
|
|
70
|
+
- **Monitor screens stay red** when agent stops listening — persistent color state instead of 300ms flash
|
|
71
|
+
- **"NOT LISTENING" warning** shown prominently on desk monitor canvas
|
|
72
|
+
- **Status color logic** — green = listening, red = active but not listening, yellow = sleeping, dim = dead
|
|
73
|
+
|
|
3
74
|
## [3.6.2] - 2026-03-16
|
|
4
75
|
|
|
5
76
|
### Added — Message Awareness System
|
package/README.md
CHANGED
|
@@ -86,9 +86,9 @@ Each terminal spawns its own MCP server process. All processes share a `.agent-b
|
|
|
86
86
|
|
|
87
87
|
- **3D virtual office** — chibi characters at desks, spectator camera (WASD+mouse), 11 hairstyles, 6 outfits, gestures, furniture, TV dashboard
|
|
88
88
|
- **Managed conversation mode** — structured turn-taking with floor control for 3+ agents, prevents broadcast storms
|
|
89
|
-
- **
|
|
89
|
+
- **53 MCP tools** — messaging, tasks, workflows, profiles, workspaces, branching, managed mode, briefing, file locking, decisions, KB, voting, reviews, dependencies, reputation
|
|
90
90
|
- **8-tab dashboard** — 3D Hub (default), messages, tasks, workspaces, workflows, launch, stats, docs
|
|
91
|
-
- **Group conversation mode** —
|
|
91
|
+
- **Group conversation mode** — single-write `__group__` messages, adaptive cooldown, `addressed_to` hints, alive-only GC
|
|
92
92
|
- **5 agent templates** — pair, team, review, debate, managed — with ready-to-paste prompts
|
|
93
93
|
- **5 conversation templates** — Code Review, Debug Squad, Feature Dev, Research & Write, Managed Team
|
|
94
94
|
- **Stats & analytics** — per-agent scores, response times, hourly charts, conversation velocity
|
|
@@ -175,7 +175,7 @@ The dashboard's default view is a **real-time 3D virtual office** (the "3D Hub")
|
|
|
175
175
|
|
|
176
176
|
**Animations:** walk, sit, type, raise hand, sleep (ZZZ), wave, think, point, celebrate, stretch, idle gestures. Agents turn toward speakers during conversations.
|
|
177
177
|
|
|
178
|
-
## MCP Tools (
|
|
178
|
+
## MCP Tools (53)
|
|
179
179
|
|
|
180
180
|
<details>
|
|
181
181
|
<summary><strong>Messaging (13 tools)</strong></summary>
|
|
@@ -249,6 +249,90 @@ The dashboard's default view is a **real-time 3D virtual office** (the "3D Hub")
|
|
|
249
249
|
|
|
250
250
|
</details>
|
|
251
251
|
|
|
252
|
+
<details>
|
|
253
|
+
<summary><strong>Briefing & Recovery (1 tool)</strong></summary>
|
|
254
|
+
|
|
255
|
+
| Tool | Description |
|
|
256
|
+
|------|-------------|
|
|
257
|
+
| `get_briefing` | Full project onboarding — agents, tasks, decisions, KB, locks, progress, files |
|
|
258
|
+
|
|
259
|
+
</details>
|
|
260
|
+
|
|
261
|
+
<details>
|
|
262
|
+
<summary><strong>File Locking (2 tools)</strong></summary>
|
|
263
|
+
|
|
264
|
+
| Tool | Description |
|
|
265
|
+
|------|-------------|
|
|
266
|
+
| `lock_file` | Lock a file for exclusive editing. Auto-releases on death |
|
|
267
|
+
| `unlock_file` | Unlock a file or all your locked files |
|
|
268
|
+
|
|
269
|
+
</details>
|
|
270
|
+
|
|
271
|
+
<details>
|
|
272
|
+
<summary><strong>Decision Log (2 tools)</strong></summary>
|
|
273
|
+
|
|
274
|
+
| Tool | Description |
|
|
275
|
+
|------|-------------|
|
|
276
|
+
| `log_decision` | Log a team decision with reasoning and topic |
|
|
277
|
+
| `get_decisions` | Get all decisions, optionally filtered by topic |
|
|
278
|
+
|
|
279
|
+
</details>
|
|
280
|
+
|
|
281
|
+
<details>
|
|
282
|
+
<summary><strong>Knowledge Base (3 tools)</strong></summary>
|
|
283
|
+
|
|
284
|
+
| Tool | Description |
|
|
285
|
+
|------|-------------|
|
|
286
|
+
| `kb_write` | Write to shared team knowledge base |
|
|
287
|
+
| `kb_read` | Read KB entries (one or all) |
|
|
288
|
+
| `kb_list` | List all KB keys with metadata |
|
|
289
|
+
|
|
290
|
+
</details>
|
|
291
|
+
|
|
292
|
+
<details>
|
|
293
|
+
<summary><strong>Progress & Compression (3 tools)</strong></summary>
|
|
294
|
+
|
|
295
|
+
| Tool | Description |
|
|
296
|
+
|------|-------------|
|
|
297
|
+
| `update_progress` | Update feature-level completion percentage |
|
|
298
|
+
| `get_progress` | Get all feature progress with overall % |
|
|
299
|
+
| `get_compressed_history` | Compressed old messages + recent verbatim |
|
|
300
|
+
|
|
301
|
+
</details>
|
|
302
|
+
|
|
303
|
+
<details>
|
|
304
|
+
<summary><strong>Voting (3 tools)</strong></summary>
|
|
305
|
+
|
|
306
|
+
| Tool | Description |
|
|
307
|
+
|------|-------------|
|
|
308
|
+
| `call_vote` | Start a team vote with options |
|
|
309
|
+
| `cast_vote` | Cast your vote (auto-resolves when all vote) |
|
|
310
|
+
| `vote_status` | Check vote results |
|
|
311
|
+
|
|
312
|
+
</details>
|
|
313
|
+
|
|
314
|
+
<details>
|
|
315
|
+
<summary><strong>Code Review (2 tools)</strong></summary>
|
|
316
|
+
|
|
317
|
+
| Tool | Description |
|
|
318
|
+
|------|-------------|
|
|
319
|
+
| `request_review` | Request a code review from the team |
|
|
320
|
+
| `submit_review` | Approve or request changes with feedback |
|
|
321
|
+
|
|
322
|
+
</details>
|
|
323
|
+
|
|
324
|
+
<details>
|
|
325
|
+
<summary><strong>Dependencies & Reputation (4 tools)</strong></summary>
|
|
326
|
+
|
|
327
|
+
| Tool | Description |
|
|
328
|
+
|------|-------------|
|
|
329
|
+
| `declare_dependency` | Declare task dependency (auto-notifies on resolve) |
|
|
330
|
+
| `check_dependencies` | Check blocked/resolved dependencies |
|
|
331
|
+
| `get_reputation` | Agent leaderboard with strengths |
|
|
332
|
+
| `suggest_task` | Get next task suggestion based on your skills |
|
|
333
|
+
|
|
334
|
+
</details>
|
|
335
|
+
|
|
252
336
|
## CLI Reference
|
|
253
337
|
|
|
254
338
|
```bash
|
package/cli.js
CHANGED
|
@@ -9,7 +9,7 @@ const command = process.argv[2];
|
|
|
9
9
|
|
|
10
10
|
function printUsage() {
|
|
11
11
|
console.log(`
|
|
12
|
-
Let Them Talk — Agent Bridge v3.
|
|
12
|
+
Let Them Talk — Agent Bridge v3.8.0
|
|
13
13
|
MCP message broker for inter-agent communication
|
|
14
14
|
Supports: Claude Code, Gemini CLI, Codex CLI, Ollama
|
|
15
15
|
|