huntdier/dsh-open-plugins--packages-dsh-client-ui-aionui-panel ↗★ 0
@huntdier/dsh-client-ui-aionui-panel
DSH 右侧面板框架(Explorer / Preview / SCM)+ 内置代码 IDE 编辑器(独立开源版)—— 基于上游 @linxin666 aionui-panel 并含本地 IDE 适配增强
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:huntdier/dsh-open-plugins#544bcdbacaa9ccffed44370c988c232bb0c8028c&path:packages/dsh-client-ui-aionui-panel说明文档
阅读完整 README ↗@huntdier/dsh-client-ui-aionui-panel
DSH Web GUI 右侧面板系统(独立开源版):Explorer 文件树 / Preview 多格式预览 / SCM 变更面板 + 内置代码 IDE 编辑器。项目会话打开时,聊天区右侧出现 「预览」与「文件/变更」两块面板,数据源为当前会话工作目录的真实文件系统与 真实 git 仓库。
本包基于上游 @linxin666/dsh-client-ui-aionui-panel(BSD-3-Clause)并含本地
IDE 适配增强,从 dsh-web-ui 全家桶中独立拆出,不依赖聚合包,适配 DSH
Desktop(compatibility 壳)与 DSH Web。
功能
- Explorer 文件树:点击文件在预览面板打开、整行点击展开文件夹、按文件名搜索定位; 面板宽度 220~500px 可拖拽,折叠状态与宽度按项目持久化(localStorage)
- Preview 多 tab 预览:markdown / html / code / diff / csv / pdf / office / 图片 / 文本等格式,支持源码/预览切换、分屏编辑、保存
- SCM 变更面板:真实 git stage / unstage / discard
- IDE 编辑器:代码文件、Markdown、HTML 的源码编辑与只读查看全部使用内置
IDE 编辑器 —— 行号 + 语法高亮 + 只读代码查看,编辑态支持括号/引号自动补全、
自动缩进、Tab 处理,适配任意文件语言(
data-lang按扩展名识别) - 安全边界:所有
/aionui-panel/*路由经 Host 侧 workspace 门禁 (lib/index.js中的 createWorkspaceGate),浏览器只能读写已注册工作区内的 文件,不能触碰任意主机目录
安装
# DSH Desktop profile
dsh plugin --profile desktop add
# DSH Web profile
dsh plugin --profile web add
安装后打开任意项目会话,右侧即出现面板。依赖的 @deepseek-ai/* 运行时由 DSH
自身提供(peerDependencies)。
注意:全家桶
@linxin666/dsh-web-ui-all也注册ui-dsh-aionui-panel行。 使用本独立包时请勿同时安装全家桶;若共存,需让本包的 patch 层最后应用。
目录
lib/index.js Host 半边:workspace 门禁 + fs/git 服务 + /aionui-panel 路由
lib/client.js 浏览器半边:面板 UI + 内置 IDE 编辑器(含 esbuild IIFE)
lib/types/** 类型声明
src/ide-editor.tsx IDE 编辑器源码(tsx)
src/ide-bundle.js IDE 编辑器 esbuild IIFE 产物
scripts/build.mjs 补丁流水线:把 IDE 编辑器拼进上游 client bundle
scripts/verify.mjs 产物校验
构建 IDE 编辑器(开发者)
lib/client.js 由 scripts/build.mjs 生成:把 src/ide-bundle.js(
src/ide-editor.tsx 的 esbuild 产物)拼接进上游 client bundle,并将
CodeViewer 与三处 textarea 编辑器(SplitPane / Markdown / HTML 源码模式)
替换为 IdeEditor。
# 1) 改 src/ide-editor.tsx 后重新打包 IIFE
# 2) 对上游 client bundle 打补丁
node scripts/build.mjs lib/client.js
# 3) 校验产物
node scripts/verify.mjs
build.mjs 为纯字符串扫描,任何锚点缺失都会显式报错,不会静默产出坏包。
许可证
MIT。派生自 @linxin666/dsh-client-ui-aionui-panel(linxin666 / zhu1090093659,
dsh-web-ui,BSD-3-Clause),上游声明见 LICENSE。