@cecwxf/dsh-room 0.1.3 → 0.3.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/README.md +19 -1
- package/dist/client.js +1650 -612
- package/dist/index.js +1585 -84
- package/dist/types/adapter.d.ts +2 -0
- package/dist/types/adapter.d.ts.map +1 -1
- package/dist/types/command-handler.d.ts.map +1 -1
- package/dist/types/commands.d.ts +16 -0
- package/dist/types/commands.d.ts.map +1 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/http.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/isolation.d.ts +82 -0
- package/dist/types/isolation.d.ts.map +1 -0
- package/dist/types/local-agents.d.ts +59 -0
- package/dist/types/local-agents.d.ts.map +1 -0
- package/dist/types/orchestrator.d.ts +96 -0
- package/dist/types/orchestrator.d.ts.map +1 -0
- package/dist/types/plugin.d.ts +349 -11
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/state.d.ts +7 -0
- package/dist/types/state.d.ts.map +1 -1
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -35,6 +35,21 @@ If pnpm asks to allow a `prepare` / build script, approve it once (or write `all
|
|
|
35
35
|
- **Model tools** (`collab_*`) so agents can create rooms, send, @mention, and manage tasks.
|
|
36
36
|
- **Public directory** on the VPS relay for discoverable rooms (opt-in; public rooms are **not confidential**).
|
|
37
37
|
|
|
38
|
+
## Local multi-agent rooms (0.3)
|
|
39
|
+
|
|
40
|
+
One dsh can host **several local agents** (Moderator, Architect, Coder, Reviewer, or custom ones) as independent room members. Each has its own identity, its own dsh session under the room's workspace, and its own read or write scope.
|
|
41
|
+
|
|
42
|
+
- **Local only** rooms use an in-process loopback (no network). One click switches to Relay (VPS) or LAN to invite remote hosts, and the local agents stay members.
|
|
43
|
+
- `@agent` wakes only that agent. `@all` wakes all local agents in parallel.
|
|
44
|
+
- An optional **moderator** splits work into tasks and summarizes the results.
|
|
45
|
+
- A turn limit (default 6) applies per thread. A concurrency cap (default 2) comes with a visible run queue. **Stop** stops every local agent run.
|
|
46
|
+
- Writing agents get their own **git worktree** (`room/<room>/<agent>`). Non-git workspaces fall back to advisory file locks.
|
|
47
|
+
- **Review & merge** shows a per-agent diff, checks for conflicts, and asks you to confirm before it merges into or discards from the main workspace.
|
|
48
|
+
|
|
49
|
+
Slash commands: `/collab create local <name>`, `/collab agents`, `/collab agent add <preset|name>`, `/collab agent rm <name>`, `/collab stop [@agent]`, `/collab transport <local|relay|lan>`.
|
|
50
|
+
|
|
51
|
+
Full guide: [`docs/LOCAL_MULTI_AGENT.md`](../../docs/LOCAL_MULTI_AGENT.md).
|
|
52
|
+
|
|
38
53
|
## Optional config (profile `cordis.patch.yml`)
|
|
39
54
|
|
|
40
55
|
```yaml
|
|
@@ -46,6 +61,7 @@ If pnpm asks to allow a `prepare` / build script, approve it once (or write `all
|
|
|
46
61
|
statePath: ~/.collab/state.json
|
|
47
62
|
autoReply: mention-or-task
|
|
48
63
|
permissionPreset: read-only
|
|
64
|
+
# localAgentRunner: mock # deterministic local agents without a model (tests/demos); or env DSH_ROOM_MOCK_AGENTS=1
|
|
49
65
|
```
|
|
50
66
|
|
|
51
67
|
Room membership is persisted at runtime into `statePath` (mode 600) — you do **not** need to paste invites into the yml.
|
|
@@ -64,7 +80,7 @@ Room membership is persisted at runtime into `statePath` (mode 600) — you do *
|
|
|
64
80
|
|
|
65
81
|
## Tools
|
|
66
82
|
|
|
67
|
-
`collab_create_room`, `collab_join`, `collab_search_rooms`, `collab_rooms`, `collab_peers`, `collab_send`, `collab_broadcast_status`, `collab_create_task`, `collab_claim_task`, `collab_update_task`, `collab_history
|
|
83
|
+
`collab_create_room`, `collab_join`, `collab_search_rooms`, `collab_rooms`, `collab_peers`, `collab_send`, `collab_broadcast_status`, `collab_create_task`, `collab_claim_task`, `collab_update_task`, `collab_history`, `collab_lock_files` (advisory locks for local writers in non-git workspaces).
|
|
68
84
|
|
|
69
85
|
Wake rules: `@mention` or `task.create` (when `autoReply` is `mention-or-task`). Replies (`replyTo`) do not wake by default (loop guard). Max 6 wakes/minute/room.
|
|
70
86
|
|
|
@@ -80,6 +96,8 @@ Display name: **dsh room** / **DSH Room**. Package id: `@cecwxf/dsh-room`.
|
|
|
80
96
|
|
|
81
97
|
Create room → defaults to **LAN / VPS** with `62.234.113.56:80` (public directory supported). Blank host embeds `collab-lan-relay` + mDNS. Cloudflare is an advanced option. See `docs/VPS_RELAY.md`.
|
|
82
98
|
|
|
99
|
+
**Rooms live in your dsh workspaces** (0.2+): the native left-sidebar workspace list is untouched. Hover a workspace and click the room icon next to "New session", or open its "…" menu → **New room** (the menu also has **New session**). The wide Create room dialog opens with that workspace preset; the room's member config workspace, MCP sandbox and woken agent session all use that path, and the room's agent session nests under the workspace natively (marked with the room icon). The **DSH Room** panel lists rooms grouped by workspace, with Join by invite and Browse public rooms.
|
|
100
|
+
|
|
83
101
|
**Agent config** (per room, local): model, reasoning effort, workspace path, auto-allow flags, MCP on/off. Announced to peers without secrets.
|
|
84
102
|
|
|
85
103
|
**Approvals**: banner in Rooms when a peer MCP call needs write/shell/network permission.
|