session-collab-mcp 2.2.0 → 2.3.1
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 +55 -10
- package/dist/{chunk-SOUW3JSS.js → chunk-UDJMG3TR.js} +580 -61
- package/dist/chunk-UDJMG3TR.js.map +1 -0
- package/dist/cli.js +1 -1
- package/dist/http/cli.js +7 -1
- package/dist/http/cli.js.map +1 -1
- package/dist/http/client-cli.js +80 -6
- package/dist/http/client-cli.js.map +1 -1
- package/package.json +5 -3
- package/dist/chunk-SOUW3JSS.js.map +0 -1
package/README.md
CHANGED
|
@@ -64,6 +64,7 @@ session-collab-http --host 127.0.0.1 --port 8765
|
|
|
64
64
|
# CLI wrapper (convenience REST client)
|
|
65
65
|
session-collab health
|
|
66
66
|
session-collab tools
|
|
67
|
+
session-collab doctor
|
|
67
68
|
session-collab call --name collab_session_start --args '{"project_root":"/repo","name":"demo"}'
|
|
68
69
|
```
|
|
69
70
|
|
|
@@ -101,9 +102,11 @@ The MCP tools give you a stable collaboration workflow across providers:
|
|
|
101
102
|
|
|
102
103
|
1. Start a session with `collab_session_start`
|
|
103
104
|
2. Check files with `collab_claim(action="check")`
|
|
104
|
-
3. Reserve files with `collab_claim(action="create")
|
|
105
|
-
4.
|
|
106
|
-
5.
|
|
105
|
+
3. Reserve files with `collab_claim(action="create")`; smart mode claims safe files and queues blocked files for coordination
|
|
106
|
+
4. Update visible progress with `collab_session_update`
|
|
107
|
+
5. Save important context with `collab_memory_save`
|
|
108
|
+
6. Release claims with `collab_claim(action="release")`
|
|
109
|
+
7. End the session with `collab_session_end`
|
|
107
110
|
|
|
108
111
|
### Working Memory
|
|
109
112
|
|
|
@@ -130,9 +133,16 @@ Configure behavior with `collab_config`:
|
|
|
130
133
|
|
|
131
134
|
| Mode | Behavior |
|
|
132
135
|
|------|----------|
|
|
133
|
-
| `strict` |
|
|
134
|
-
| `smart` (default) |
|
|
135
|
-
| `bypass` |
|
|
136
|
+
| `strict` | Block conflicting claims and require user coordination before editing |
|
|
137
|
+
| `smart` (default) | Claim non-conflicting files or symbols, queue blocked files, and expose coordination requests |
|
|
138
|
+
| `bypass` | Allow overlapping claims only with `allow_conflicts=true`, and return a warning |
|
|
139
|
+
|
|
140
|
+
In `smart` mode, prefer symbol-level claims when working inside a file that another session has claimed. Same-file work can proceed when claimed symbols do not overlap. If overlap cannot be proven safe, `collab_claim(action="create")` returns `waiting_for_coordination` or `partial_claim_created` with:
|
|
141
|
+
|
|
142
|
+
- `claimed_files`: files reserved by the caller
|
|
143
|
+
- `safe_files`: files that can be edited now
|
|
144
|
+
- `blocked_files`: files that need coordination first
|
|
145
|
+
- `coordination_requests`: queue entries visible through `collab_status` and `collab_session_list`
|
|
136
146
|
|
|
137
147
|
### Auto-Release Options
|
|
138
148
|
|
|
@@ -145,13 +155,14 @@ Configure behavior with `collab_config`:
|
|
|
145
155
|
|
|
146
156
|
## MCP Tools Reference
|
|
147
157
|
|
|
148
|
-
### Session Management
|
|
158
|
+
### Session Management
|
|
149
159
|
|
|
150
160
|
| Tool | Purpose |
|
|
151
161
|
|------|---------|
|
|
152
162
|
| `collab_session_start` | Register a new session |
|
|
153
163
|
| `collab_session_end` | End session and release all claims |
|
|
154
|
-
| `collab_session_list` | List active sessions |
|
|
164
|
+
| `collab_session_list` | List active sessions with current task and active claim summaries |
|
|
165
|
+
| `collab_session_update` | Update heartbeat, current task, todos, and progress |
|
|
155
166
|
| `collab_config` | Configure session behavior |
|
|
156
167
|
| `collab_status` | Get session status summary |
|
|
157
168
|
|
|
@@ -159,7 +170,7 @@ Configure behavior with `collab_config`:
|
|
|
159
170
|
|
|
160
171
|
| Tool | Actions |
|
|
161
172
|
|------|---------|
|
|
162
|
-
| `collab_claim` | `create`, `check`, `release`, `list` (check: `exclude_self` defaults to true) |
|
|
173
|
+
| `collab_claim` | `create`, `check`, `release`, `list` (check: `exclude_self` defaults to true; create follows `collab_config(mode)`) |
|
|
163
174
|
|
|
164
175
|
### Working Memory (3 tools)
|
|
165
176
|
|
|
@@ -187,6 +198,7 @@ Configure behavior with `collab_config`:
|
|
|
187
198
|
|
|
188
199
|
- `POST /v1/sessions/start` → `collab_session_start`
|
|
189
200
|
- `POST /v1/sessions/end` → `collab_session_end`
|
|
201
|
+
- `POST /v1/sessions/update` → `collab_session_update`
|
|
190
202
|
- `GET /v1/sessions` → `collab_session_list`
|
|
191
203
|
- `POST /v1/config` → `collab_config`
|
|
192
204
|
- `GET /v1/status` → `collab_status`
|
|
@@ -217,11 +229,25 @@ Configure behavior with `collab_config`:
|
|
|
217
229
|
# Session A starts working
|
|
218
230
|
collab_session_start(project_root="/my/project", name="feature-auth")
|
|
219
231
|
collab_claim(session_id="session-a", action="create", files=["src/auth.ts"], intent="Adding JWT support")
|
|
232
|
+
collab_session_update(session_id="session-a", current_task="Adding JWT support")
|
|
220
233
|
|
|
221
234
|
# Session B checks before editing
|
|
222
235
|
collab_claim(session_id="session-b", action="check", files=["src/auth.ts"])
|
|
223
236
|
# Result: "CONFLICT: src/auth.ts is claimed by 'feature-auth'"
|
|
224
237
|
|
|
238
|
+
# create in smart mode queues blocked files instead of editing over the owner
|
|
239
|
+
collab_claim(session_id="session-b", action="create", files=["src/auth.ts"], intent="Coordinated auth work")
|
|
240
|
+
# Result: status="waiting_for_coordination", blocked_files=["src/auth.ts"]
|
|
241
|
+
|
|
242
|
+
# If only a different symbol is needed, claim that symbol explicitly
|
|
243
|
+
collab_claim(
|
|
244
|
+
session_id="session-b",
|
|
245
|
+
action="create",
|
|
246
|
+
symbols=[{ file="src/auth.ts", symbols=["refreshToken"], symbol_type="function" }],
|
|
247
|
+
intent="Update refresh token"
|
|
248
|
+
)
|
|
249
|
+
# Result: status="created" if no claimed symbol overlaps
|
|
250
|
+
|
|
225
251
|
# If you want to include your own claims in the check
|
|
226
252
|
collab_claim(session_id="session-a", action="check", files=["src/auth.ts"], exclude_self=false)
|
|
227
253
|
|
|
@@ -334,6 +360,8 @@ npm run start:dev # Start in development mode
|
|
|
334
360
|
npm run typecheck # Run TypeScript type checking
|
|
335
361
|
npm run lint # Run ESLint
|
|
336
362
|
npm run test # Run tests with Vitest
|
|
363
|
+
npm run test:http # Run HTTP integration tests
|
|
364
|
+
npm run test:release # Run release gate: typecheck, lint, tests, HTTP tests, npm pack dry-run
|
|
337
365
|
```
|
|
338
366
|
|
|
339
367
|
### HTTP Integration Tests
|
|
@@ -341,7 +369,15 @@ npm run test # Run tests with Vitest
|
|
|
341
369
|
HTTP integration tests require a local listen port. Enable them with:
|
|
342
370
|
|
|
343
371
|
```bash
|
|
344
|
-
|
|
372
|
+
npm run test:http
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### HTTP CLI Doctor
|
|
376
|
+
|
|
377
|
+
When using the HTTP server, validate the running server with:
|
|
378
|
+
|
|
379
|
+
```bash
|
|
380
|
+
session-collab doctor --base-url http://127.0.0.1:8765
|
|
345
381
|
```
|
|
346
382
|
|
|
347
383
|
### Historical Notes
|
|
@@ -372,6 +408,15 @@ session-collab-mcp/
|
|
|
372
408
|
|
|
373
409
|
## Changelog
|
|
374
410
|
|
|
411
|
+
### v2.3.1
|
|
412
|
+
|
|
413
|
+
- Add `collab_session_update` for heartbeat, current task, todo, and progress reporting
|
|
414
|
+
- Enrich `collab_session_list` with current task and active claim summaries
|
|
415
|
+
- Make `collab_claim(action="create")` respect `collab_config(mode)` with smart coordination by default
|
|
416
|
+
- Add `session-collab doctor` for HTTP server health and tool-surface checks
|
|
417
|
+
- Add `npm run test:http` and `npm run test:release` release gates
|
|
418
|
+
- Update dev test tooling to clear npm audit findings
|
|
419
|
+
|
|
375
420
|
### v2.1.0
|
|
376
421
|
|
|
377
422
|
- Add HTTP server + CLI wrapper for universal AI CLI usage
|