在输入框打 @ 唤醒另一个会话,实现跨会话实时对话
30.2/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/12 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add KeFan-J/dsh-chat-link该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 7 处,展示前 7 条)
- 读取本地文件lib/index.js:50
if (!existsSync(msgFile())) return - 读取本地文件lib/index.js:51
const raw = readFileSync(msgFile(), 'utf8') - 读取本地文件lib/index.js:57
if (existsSync(identFile())) { - 读取本地文件lib/index.js:59
const stored = JSON.parse(readFileSync(identFile(), 'utf8')) - 写入本地文件lib/index.js:81
mkdirSync(state.base, { recursive: true }) - 写入本地文件lib/index.js:82
writeFileSync(msgFile(), state.messages.map((m) => JSON.stringify(m)).join('\n'), 'utf8') - 写入本地文件lib/index.js:83
writeFileSync(identFile(), JSON.stringify(state.identity, null, 2), 'utf8')
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- @唤醒其他会话
- 跨会话实时对话
- 持久消息板
README
由 DeepSeek 最新模型翻译生成dsh-chat-link · 会话联动
DeepSeek Harness (DSH) 多会话对等互聊插件 —— 让任意两个会话像 IM 一样直接对话,输入框打 @ 就能把消息发给另一个会话,对方会被自动唤醒并处理。
✨ 它解决什么问题
DSH 本身只有「会话内」的多代理协作(subagent 父子关系)。dsh-chat-link 补齐了缺失的一环:对等的、跨会话的实时对话。
- 会话 A 在输入框打 @B 帮我查一下今天的任务 → 会话 B 被自动唤醒,把消息作为任务处理;
- B 回复时 A 又被唤醒 —— 两个会话真正互聊,不需要人当传话筒;
- 消息持久化在本地文件(~/.dsh/chat-link/),重启 DSH 不丢。
🚀 功能特性
1. @ 会话引用(像调用技能一样)
- 输入框直接打 @ → 弹出系统原生选择菜单(会话名 + 在线/未读状态,支持过滤);
- 选中后输入框里出现蓝色 chip 标签(@会话名)—— 和 DSH 的技能引用/斜杠命令同一套机制;
- 发送时 chip 自动投影为 @会话名 内容,由 Agent 转发给目标会话。
展开完整文档(README 剩余 1 节)
dsh-chat-link · 会话联动 DeepSeek Harness (DSH) 多会话对等互聊插件 —— 让任意两个会话像 IM 一样直接对话,输入框打 @ 就能把消息发给另一个会话,对方会被自动唤醒并处理。 ✨ 它解决什么问题 DSH 本身只有「会话内」的多代理协作(subagent 父子关系)。dsh-chat-link 补齐了缺失的一环:对等的、跨会话的实时对话。 - 会话 A 在输入框打 @B 帮我查一下今天的任务 → 会话 B 被自动唤醒,把消息作为任务处理; - B 回复时 A 又被唤醒 —— 两个会话真正互聊,不需要人当传话筒; - 消息持久化在本地文件(~/.dsh/chat-link/),重启 DSH 不丢。 🚀 功能特性 1. @ 会话引用(像调用技能一样) - 输入框直接打 @ → 弹出系统原生选择菜单(会话名 + 在线/未读状态,支持过滤); - 选中后输入框里出现蓝色 chip 标签(@会话名)—— 和 DSH 的技能引用/斜杠命令同一套机制; - 发送时 chip 自动投影为 @会话名 内容,由 Agent 转发给目标会话。 2. 唤醒投递 - 目标会话在线 → 通过 DSH 原生 agent.send(message, 'next-turn', true) 立即唤醒处理; - 目标未打开 → 消息存在消息板,3 秒轮询兜底补投,对方打开会话即收到。 3. 原生质感收件箱 - 侧边栏「⇄ 会话联动」入口(DOM 注入,与 dsh-ssh / 任务看板同款机制,React 重渲染自愈); - 点击后接管中间主内容区(非浮层),与 DSH 设计系统一致(--dsw- 主题变量,跟随皮肤); - 未读消息卡片 + 会话列表双栏;点击任意消息/会话直接跳转到对应会话; - 打开会话自动清除未读红点;未读数在侧边栏入口实时角标。 4. 五个模型工具(所有会话可用) | 工具 | 用途 | | chat_link_send | 给指定会话发送联动消息(名称 / sessionId / 前缀寻址) | | chat_link_inbox | 查看并领取本会话未读联动消息 | | chat_link_history | 查看本会话的联动消息往来 | | chat_link_roster | 列出全部联动会话(名称/在线/未读) | | chat_link_register | 给本会话设置自定义联动名称 | 5. 命名实时同步 - 联动名称实时派生自会话标题 —— 在工作区重命名会话,联动列表自动更新; - chat_link_register 可设置自定义名称(优先于标题)。 📦 安装 🚀 一键安装(推荐) bash -c "$(curl -fsSL https://raw.githubusercontent.com/KeFan-J/dsh-chat-link/main/install.sh)" 脚本自动完成:克隆代码 → 安装依赖 → 挂载到 DSH web profile。完成后只需重启 DSH(Ctrl+C → npx @deepseek-ai/dsh web)并强制刷新浏览器(Cmd+Shift+R)。 自定义安装目录:bash -c "$(curl -fsSL <上面的URL>)" - /path/to/dir 更新插件:重新执行一键安装命令即可(自动 git pull)。 手动安装 前置要求 - DeepSeek Harness 0.1.0-rc.6(npx @deepseek-ai/dsh web 启动的 Web GUI) - Node.js ≥ 22、pnpm(corepack enable 或 npm i -g pnpm) 步骤 1. 克隆本仓库 git clone https://github.com/KeFan-J/dsh-chat-link.git cd dsh-chat-link 2. 安装依赖(仅 @deepseek-ai/dsh-tools) pnpm install 3. 挂载到 DSH web profile(bundle 机制,自动加入插件层) dsh plugin --profile web add link:$(pwd) 4. 重启 DSH 终端 Ctrl+C → 重新运行 npx @deepseek-ai/dsh web 5. 浏览器强制刷新页面(Cmd+Shift+R) 注:DSH 通过 ~/.dsh/vendor/plugins/ 加载插件。若你使用 vendor 目录部署模式,更新代码后需同步: cp -r lib ~/.dsh/vendor/plugins/dsh-chat-link/ 🎮 使用 方式一:输入框 @(推荐) 1. 在任意会话的输入框打 @; 2. 从菜单选择目标会话(或继续输入过滤); 3. 输入内容并发送 —— 消息自动转发,对方被唤醒; 4. 对方回复时,你也会被唤醒(侧边栏入口出现未读角标)。 方式二:收件箱面板 点击侧边栏底部「⇄ 会话联动」: - 查看未读消息,点击跳转到来源会话; - 会话列表点击跳转;「复制」按钮一键复制 @名称; - 「全部已读」清空未读。 方式三:直接跟 Agent 说 用 chat_link_roster 看看有哪些会话给「XXX」发条消息说:…… 🏗️ 架构 ┌─────────────────────────────── 宿主进程 (Host) ───────────────────────────────┐ │ lib/index.js │ │ ├─ 消息板: ~/.dsh/chat-link/messages.jsonl + identity.json(磁盘持久化) │ │ ├─ 5 个模型工具(全局注册,所有会话可调) │ │ ├─ 唤醒投递: agent.send(msg, 'next-turn', true) + 3s 轮询补投 │ │ ├─ 会话打开即已读(agent/session-start) │ │ └─ HTTP 路由: /api/dsh-chat-link/state · /mark-read │ └──────────────────────────────────────────────────────────────────────────────┘ ▲ fetch / 事件 ┌─────────────────────────────── 浏览器 (Client) ───────────────────────────────┐ │ lib/client.js(ModuleLoader bundle) │ │ ├─ '@' 输入触发器(框架标准 inputTriggers 协议,chip 引用) │ │ ├─ 侧边栏入口(DOM 注入 + MutationObserver 自愈) │ │ ├─ 收件箱面板(接管中间主内容区,--dsw- 皮肤变量) │ │ └─ 与 dsh-ssh / 任务看板互斥(dsh-panel-activate 事件) │ └──────────────────────────────────────────────────────────────────────────────┘ 🔒 数据与隐私 - 所有数据仅存本机 ~/.dsh/chat-link/(消息板 + 会话身份映射); - 无任何云端依赖、无遥测、无外部请求; - 卸载插件(dsh plugin --profile web remove @linxin666/dsh-chat-link)不影响历史会话。 🧩 兼容与依赖 - 依赖 @deepseek-ai/dsh-tools@^0.1.0-rc.6(运行时); - 通过 DSH 标准 bundle 机制挂载(dsh.bundle.patch + dsh.client 声明),无需修改 DSH 源码; - 与其他全家桶插件(dsh-ssh、任务看板、Git 图谱等)互不干扰。 📄 License MIT © Jinkefan Made for the DeepSeek Harness plugin community.
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
KeFan-J/dsh-chat-link
在输入框打 @ 唤醒另一个会话,实现跨会话实时对话
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1
这是你的仓库?认领条目