voyager
Nagi-ovo
Enhancement suite for Gemini, AI Studio, Claude, ChatGPT & DeepSeek — plus a prompt manager for any website, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude、ChatGPT 与 DeepSeek 的增强套件;其中的提示词管理器可用于任意网站,如 DeepSeek Harness。
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:anzhaohao/dsh-side-chat-plus-plus
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
Codex 式多标签侧聊增强 —— 从 @ahggg/dsh-side-chat fork 的破坏式重写。
https://github.com/user-attachments/assets/5fefe33f-b4e8-42c5-adac-4d728fccfc0d
在原版「选中文字 → 侧聊追问」的基础上,做这些改进:
<body>,脱离 DSH AppFrame 的 z-index 20 层,稳定盖过 dsh-better-sidebar 等 body 级浮层(z-index 40)。外观仍保留原版的右下角吸附浮层样式(.dsh-side-chat-panel 的 position: fixed 定位与主题 token)。
| 维度 | @ahggg/dsh-side-chat(原版) |
本插件 |
|---|---|---|
| host | 自带 ArchivedForkSideChatService(sideChatArchived RPC) |
自带 host:DshSideChatPlusPlusPlugin 重新实现同一 remote.sideChatArchived RPC,不依赖官方插件 |
| 侧聊数量 | 单实例(打开新侧聊前必须先关旧的) | 多标签(N 个 SideChatController) |
| 引用入口 | 选中文字 → More details / Ask in side chat |
整条消息悬停按钮 + 选中文字工具栏 |
| 生成中选中 | 不允许(需等消息打完) | 允许,fork 走 A3 中回合切点零等待,失败自动等待重试 |
| 图层 | 依赖 DSH shell.overlay 槽位(z-index 20 层内) |
portal 到 <body>,最高图层,覆盖 better-sidebar |
| 与 better-sidebar 共存 | 相互挤压 | 双模式:侧栏开→侧聊覆盖不让位;侧栏关→相互让位 |
| More details | 有 | 已删除 |
Typert 描述符刻意保留上游的 wire 命名空间
sideChatArchived与 RPC 方法名(createArchived/selectArchivedModel/closeArchived),但包 id 改为dsh-side-chat-plus-plus(src/typert.ts的TYPERT.package),Cordis 服务键改为sideChatPlusPlus,避免与官方sideChat服务冲突。
src/
client/ 客户端(多标签 + 整条消息引用 + 生成中选中引用 + 双模式 dock)
rc6/Rc6SideChatOverlay.tsx 多标签外壳 + 引用按钮注入(portal 到 body)
side-chat-controller.ts 单个侧聊状态机(每个 tab 一个实例)
panel/side-chat-layout.ts 双模式 dock 布局(detect better-sidebar 开关)
selection/ 选中捕获、normalizer(生成中放行)、工具栏、批注 marker
host/ 自带 host(从上游 host 复制)
archived-fork-service.ts ArchivedForkSideChatService(fork/archive 会话,A3 中回合切点)
shared/ 共享类型与 wire schema
index.ts host 入口(Cordis 插件,重新实现 sideChatArchived RPC)
remote.ts Typert remote 贡献(客户端挂载面)
typert.ts Typert host 面(wire schema)
scripts/build.mjs esbuild 编译 host + typert + remote + client
cordis.patch.yml insert 声明(id=side-chat-plus-plus, name=包名)
npm run build
生成 4 个产物:
src/index.js —— host(ESM,@deepseek-ai/* 与 node:* 保持 external,由 DSH host 解析)src/typert.js / src/remote.js —— Typert host/客户端面(zod 打进 bundle)src/client.js —— 浏览器 bundle(window.__ModuleLoader__.load 包裹,react 与 @deepseek-ai/* 客户端运行时 external)zod 会从当前 DSH profile 探测并打进 bundle(见 scripts/build.mjs 的 resolveZodEntry)。
从 npm 安装(推荐):
dsh plugin --profile web add dsh-side-chat-plus-plus
或从 GitHub 安装:
dsh plugin --profile web add github:<owner>/dsh-side-chat-plus-plus
dsh plugin --profile web add "D:\Postgraduate_JilinUniversity\03_Sundries\02_DevLab\20260822-dsh-side-chat++"
# 修改源码后重新构建,再重启 dsh web
npm run build
@__dsh_side_chat_annotations__;引用只以胶囊卡片出现,正文不残留占位符;<selected_context> 的消息,气泡上引用胶囊正常显示,composer 胶囊清空;发送失败时引用保留不丢;MIT。本项目是 @ahggg/dsh-side-chat(MIT)的派生作品,归属说明见 NOTICE,上游许可证见 LICENSE。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: side-chat。