XBXyftx/dsh-session-messaging ↗★ 0

dsh-session-messaging

实现同工作区内多个用户会话之间的消息传递与冲突预警 适合在同一工作区运行多个会话,需要模型间自主协调、避免写入冲突的任务。

包名
dsh-session-messaging
兼容性
待验证
Harness 依赖范围
^0.2.1-rc.2
Cordis 依赖范围
^4.0.5
版本
0.4.0
许可证
MIT
最近更新
2026年10月18日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:XBXyftx/dsh-session-messaging

Usage

Open two sessions in the same working directory, then ask either model to coordinate. The tools are model-facing; no manual UI is required.

Example prompts:

Use session_peers to see which other sessions are working here.
Send session-b a message: I am editing src/ui.ts and declared it in writeScopes; avoid it.
Check whether anyone else declared a conflicting write scope before you edit src/api.ts.
Pause receiving peer messages for this session.

Tools:

ToolArgumentsResult
session_peersnone{ peers: [{ sessionId, status, canReceive, writeScopes }] }
session_sendtargetSessionId, message, optional writeScopes, replyTo{ accepted, messageId, targetSessionId, targetStatus, conflicts }
session_receptionenabled, optional writeScopes{ enabled, writeScopes }

accepted means the message entered the target's inbox and the session flush acknowledged persistence. It does not mean the peer model processed or acted on it.

Configuration

The bundle row accepts validated configuration; every field has a default:

- id: session-messaging
  name: dsh-session-messaging
  config:
    maxMessageChars: 4000
    maxMessagesPerMinute: 12
    requireTargetOptIn: false   # sessions are open to peers by default
    sameDirectoryOnly: false
    allowSelfSend: false
    allowColdDelivery: true   # resume a persisted target when it is not live