huntdier/dsh-open-plugins--packages-dsh-client-ui-aionui-panel0

@huntdier/dsh-client-ui-aionui-panel

DSH 右侧面板框架(Explorer / Preview / SCM)+ 内置代码 IDE 编辑器(独立开源版)—— 基于上游 @linxin666 aionui-panel 并含本地 IDE 适配增强

包名
@huntdier/dsh-client-ui-aionui-panel
版本
0.1.10
许可证
NOASSERTION
最近更新
2026年8月17日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:huntdier/dsh-open-plugins#544bcdbacaa9ccffed44370c988c232bb0c8028c&path:packages/dsh-client-ui-aionui-panel

@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.jsscripts/build.mjs 生成:把 src/ide-bundle.jssrc/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