- Главная
- Плагины
- Сеансы и сообщения
- dsh-session-tools
dsh-session-tools
ryuu-64/dsh-session-tools
Gives the agent four session tools: start a new session, send a message into another one, list sessions with their state, and wait for another session's turn to finish so its answer can be read back.
Установка
dsh plugin --profile web add github:ryuu-64/dsh-session-toolsREADME
dsh-session-tools
让对话里的 AI 能新建会话、给别的会话发消息、看看有哪些会话,以及等别的会话干完活。
四个工具,session_create、session_send、list_sessions、session_wait。新会话会出现在左侧会话列表里,和手动新建的完全一样;想让它归到某个工作区下面也可以。
典型用法:你说"帮我开一个会话去查一下这件事"——AI 直接建好,不用你自己新建再复制粘贴。或者你已经有一个会话在跑,说"等它弄完把结果告诉我",AI 把活派过去,等它做完了再回来接着讲。
session_create:新建会话
| 参数 | 是否必填 | 说明 |
|---|---|---|
prompt | 必填 | 新会话要做的第一件事。新会话看不到当前这个会话,所以要把背景写全。 |
workspacePath | 可选 | 工作区的完整路径。填了,新会话就归到这个工作区下面;不填就是未分组。 |
title | 可选 | 会话标题。不填就和手动新建一样,由第一句话自动生成。 |
wait | 可选 | 默认不等。只有一种情况需要等:你要在新建的那个会话跑完第一轮之后才继续。 |
做完返回新会话的名字和 id,你在左侧列表里就能看到它。如果中途失败,会把建了一半的东西清理掉,不留垃圾。
session_send:给别的会话发消息
| 参数 | 是否必填 | 说明 |
|---|---|---|
sessionId | 必填 | 目标会话的 id,形如 session-9311a0fb-65c7-4b04-b142-1444642a627e。 |
message | 必填 | 要发的内容。对方看不到当前这个会话,所以要写清楚。 |
wait | 可选 | 默认不等:发出去就返回。填 true 就等对方把这条消息处理完,并把它的回答带回来。 |
timeoutMs | 可选 | 等多久(毫秒)。默认 60000(一分钟),最多 300000(五分钟)。等超了不报错,只告诉你"它还在忙"。 |
默认发出即返回,返回只代表对方收到了、开始排队处理。消息来源标记为插件,不会被当成是你本人打的字。目标会话如果没开着,会被自动打开再把消息排进去。
填了 wait 就变成"发完等它做完",AI 拿到对方的回答之后可以接着往下办——比如让一个会话去跑测试,跑完再根据结果决定下一步。
session_wait:等别的会话干完
如果消息已经发出去了,或者那个会话本来就在忙,用这个等它收尾。
| 参数 | 是否必填 | 说明 |
|---|---|---|
sessionId | 必填 | 目标会话的 id。 |
timeoutMs | 可选 | 等多久(毫秒),默认 60000,最多 300000。 |
它只负责等和看,不去动那个会话:不会打开它、不会改它、也不会打断它。对方本来就没在忙的话,立刻返回,把最后一条回答给你。等超了就说一句"还在忙",不算失败——你可以过会儿再问一次。
list_sessions:先看看有哪些会话
不用记 id。当你要说的是"发给那个讨论发布的会话",AI 可以先列出会话(名字、目录、哪个是当前会话、现在在干什么),你说清是哪一个,它再发。
| 参数 | 是否必填 | 说明 |
|---|---|---|
limit | 可选 | 最多列几个,默认 20,按最近活动排序。 |
每条会带一个状态,就是侧边栏上显示的那个东西:
| 状态 | 意思 |
|---|---|
running | 进行中,正忙着。 |
idle | 空闲,没在干活(开着或者躺着都算)。 |
archived | 已归档,你把它从侧边栏收起来了。 |
子代理会话不会列出来(那是 AI 自己派出去的活)。
动手前会先问你
新建会话、或者往别的会话发消息,都会先弹一个确认卡,写清它要干什么,比如:
允许一次:在工作区
E:\Users\Ryuu\Desktop新建会话,内容是「查一下某件事」
你点了"允许一次"它才动手;拒绝或没应答,它就什么都不做。你自己完全关掉审批(切到完全权限模式)时,它不再打扰你——那是你的选择,不是它擅自跳过。
只是等一个会话做完、或者列一下有哪些会话,不会弹卡:这两件事不往任何地方写东西。
建好的会话,卡片上点一下就能过去
做完之后,对话里那张卡片会变成「已创建会话」加一个按钮——点一下直接跳到新建的那个会话,不用去左侧列表里找。
(这一部分由插件的浏览器端负责渲染,所以旧的对话记录也会跟着变成可点。)
安装
dsh plugin --profile desktop add @ryuu-64/dsh-session-tools@0.5.3
从源码装:
git clone https://github.com/Ryuu-64/dsh-session-tools.git
dsh plugin --profile desktop add link:C:\path\to\dsh-session-tools
装完重启 DSH 就能用,不需要其它设置。用 link: 方式装的,改完源码要重启应用才生效。
使用限制
- 不会顺手新建工作区。
workspacePath必须是已经存在的那个工作区的路径;写错了它会报错,并把现有的工作区列出来给你挑。 - 不能给子代理发消息。目标必须是普通会话;AI 派出去的子代理要用
send_message。也不能给当前这个会话自己发。 - 重启期间收不到。新建会话是立刻生效的;发出去的消息要等对方会话被打开处理,所以 DSH 得开着。等待也一样,DSH 关了就没法等。
- 归属定了就不能改。会话归到哪个工作区是记在账上的,建完之后没法在工作区之间搬。
- 需要桌面版。工作区归属靠桌面版才挂载的那个工作区服务,插件把它列为必需依赖,所以命令行无界面模式(headless)下这个插件不会加载。
Похожие плагины
dsh-web-ui (dsh-chat-recovery)
zhu1090093659/dsh-web-ui
dsh-synapse
liangmianya/dsh-synapse
billion-context
ranxianglei/billion-context
dsh-chat-import
nwflower/dsh-chat-import