浮层浏览工作区文件树,点击即可预览代码与 Markdown
28.3/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add YZz-S/dsh-workspace-files-explorer该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
- 发起网络请求lib/client.js:87
return fetch(url, {
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 浮层浏览文件树
- 点击预览代码
- 预览Markdown
一组给 DeepSeek Harness(DSH)用的动态 Cordis 插件:token 费用计量、余额查询、更新检查,还有带代码和 Markdown 预览的工作区文件浏览器。纯 JavaScript,粘贴即用。
README
由 DeepSeek 最新模型翻译生成workspace-files-explorer
English · 中文
DeepSeek Harness(dsh)Web GUI 的工作区文件浏览器插件:在浮层面板中浏览当前会话工作区(cwd)的文件树,点击文件即可预览——代码文件带行号与语法高亮,Markdown 文件渲染为富文本。
DeepSeek Harness(dsh)Web GUI 的工作区文件浏览器插件:在浮层面板中浏览当前会话工作区(cwd)的文件树,点击文件即可预览——代码文件带行号与语法高亮,Markdown 文件渲染为富文本。
文件预览效果 1
文件预览效果 2
中文 · ← Back to DeepSeekHarnessPlugins
Features
- 浮动文件面板:注册在 shell.overlay 上,采用增量注册——不替换任何内置 UI;默认停靠在右上角
- 文件树:懒加载展开,目录优先,隐藏文件(以点开头)置灰显示,显示文件大小,每个目录超过 500 项时显示截断提示,一键刷新
- 代码预览:行号 + 轻量级语法高亮(按扩展名支持 30 多种语言:JS/TS/Python/Go/Rust/Java/C#/PHP/Bash/SQL/JSON/YAML/CSS/HTML……
展开完整文档(README 剩余 1 节)
workspace-files-explorer English · 中文 DeepSeek Harness(dsh)Web GUI 的工作区文件浏览器插件:在浮层面板中浏览当前会话工作区(cwd)的文件树,点击文件即可预览——代码文件带行号与语法高亮,Markdown 文件渲染为富文本。 DeepSeek Harness(dsh)Web GUI 的工作区文件浏览器插件:在浮层面板中浏览当前会话工作区(cwd)的文件树,点击文件即可预览——代码文件带行号与语法高亮,Markdown 文件渲染为富文本。 文件预览效果 1 文件预览效果 2 中文 · ← Back to DeepSeekHarnessPlugins Features - 浮动文件面板:注册在 shell.overlay 上,采用增量注册——不替换任何内置 UI;默认停靠在右上角 - 文件树:懒加载展开,目录优先,隐藏文件(以点开头)置灰显示,显示文件大小,每个目录超过 500 项时显示截断提示,一键刷新 - 代码预览:行号 + 轻量级语法高亮(按扩展名支持 30 多种语言:JS/TS/Python/Go/Rust/Java/C#/PHP/Bash/SQL/JSON/YAML/CSS/HTML……),自动适配浅色/深色主题,超大文件会被截断 - Markdown 预览:渲染标题 / 列表 / 表格 / 引用 / 链接 / 代码块,内嵌代码块也会高亮;整个 HTML 在渲染前会被转义,链接仅允许 http/https 并强制使用 rel="noopener noreferrer" - 面板交互:拖动标题栏移动,拖动右下角调整大小(400–1400 × 280–900),关闭 / 刷新 - 会话标题栏按钮:标题栏操作区中的“Workspace Files”按钮(点亮 = 面板已打开),点击可切换可见性 - 跟随会话:工作区根目录来自当前会话的 cwd(标准 useSessions hook);切换会话会重置面板并自动加载新的工作区 Installation (dsh.bundle) 本仓库同时也是一个可安装的 dsh 插件包(package.json 声明了 dsh.bundle + dsh.client): dsh plugin --profile web add github:YZz-S/dsh-workspace-files-explorer 安装后,“Workspace Files”按钮会出现在会话标题栏操作区,浮层面板会自动生效。动态用法(cordis_define 加载 host.js / client.js)也保留;两者任选其一。 Files | File | Description | | index.js | Host 半部分(安装形式):webServer 路由 /api/wsf-explorer/,只读文件浏览 API | | lib/client.js | Client 半部分(安装形式):__ModuleLoader__ 浏览器模块,通过 fetch 调用 Host 路由 | | cordis.patch.yml | Bundle 补丁:将插件行插入 dsh 组合中 | | host.js | Host 半部分(动态形式):用于 cordis_define,通过 harness.handle 进行包内私有 RPC | | client.js | Client 半部分(动态形式):用于 cordis_define,通过 host.call 调用 Host | | README.md | 本文档 | | LICENSE | MIT 许可证 | | package.json | 包元数据 + dsh.bundle / dsh.client 声明 | 用法 方式 1:动态 Cordis 插件(临时) 在 dsh Web GUI 会话中使用 Cordis 工具定义并运行: 1. 调用 cordis_define:将 host.js 内容粘贴为 code.host,将 client.js 内容粘贴为 code.client(plugin.kind: 'new',idPrefix 为 3–6 个小写字母) 2. 调用 cordis_run 以激活,并在 UI 中允许授权 3. 面板默认打开;标题栏右侧会出现“Workspace Files”按钮,用于切换可见性 注意:动态插件的生命周期与当前 dsh 进程相同。重启 dsh 后,必须重新定义并运行它。 方式 2:可安装插件(持久化) 参见上文“安装(dsh.bundle)”:dsh plugin --profile web add github:YZz-S/dsh-workspace-files-explorer —— 插件会随 profile 持久化,无需每次手动运行。 工作原理 - 工作区根目录:Client 通过标准 hook useSessions((s) => s) 读取当前会话的 cwd,并在每次请求时将其传递给 Host;当没有会话时,回退到 sandboxPolicy.workspaceRoot - Host 为只读:仅使用 fs 的 resolve / stat / listDir / readText / contains / processPath —— 完全不写入;每个路径都必须通过 fs.contains 校验,以确保位于工作区内 - 预览安全:代码和 Markdown 内容在渲染前会进行 HTML 转义;Markdown 链接仅允许 http/https,并强制使用 rel="noopener noreferrer";原始 HTML 永远不会被透传 - 限制:文本预览 256 KB,代码渲染 2000 行,Markdown 渲染 4000 行,目录列表 500 项 —— 超出限制时会显示友好提示 隐私 - 仅读取当前会话工作区内的文件和目录列表 —— 无外部网络请求、无文件写入、无遥测、无持久化存储 - 任何超出工作区边界的路径都会被拒绝(path outside the workspace) 已知限制 - 二进制文件和超过 256 KB 的文本仅显示提示,不提供预览 - 语法高亮为内置轻量实现(关键字 / 字符串 / 注释 / 数字),并非完整的语义高亮 - 面板按钮注册在会话头部操作区;空白新会话(无标题栏)不会显示该按钮,但面板仍会默认打开 - 动态插件是进程级的:重启后必须重新运行 发布前检查清单 - [x] 无硬编码密钥 / 令牌 / 密码(已扫描 api[_-]?key、secret、token、password、私钥头等模式) - [x] 无个人信息(用户名、机器路径、内部 IP、电子邮件);工作区路径来自运行时会话状态,而非硬编码在代码中 - [x] 无外部网络请求、无遥测、无第三方数据收集 - [x] 已采用 MIT 许可证,README 完整 - [x] 代码仅使用 dsh 插件公开接口(Services / webServer / slots / React);所有副作用都挂在插件 Fiber 上,并在 stop 时清理 - [x] 输入(文件名 / 文件内容)在渲染前均经过 HTML 转义;链接协议白名单 + noopener —— 无注入面 许可证 MIT English · ← 返回 DeepSeekHarnessPlugins DeepSeek Harness(dsh)Web GUI 的工作区文件浏览器插件:在浮层面板中浏览当前会话工作区(cwd)的文件树,点击文件即可预览——代码文件带行号与语法高亮,Markdown 文件渲染为富文本。 功能 - 浮层文件面板:注册在 shell.overlay,加法式注册,不替换任何自带 UI;默认停靠右上角 - 文件树:懒加载展开、目录优先排序、隐藏文件(点开头)淡化显示、文件大小标注、单目录最多 500 项截断提示、一键刷新 - 代码预览:行号 + 轻量语法高亮(JS/TS/Python/Go/Rust/Java/C#/PHP/Bash/SQL/JSON/YAML/CSS/HTML 等 30+ 语言按扩展名识别),深浅色主题自适应,超长文件截断 - Markdown 预览:标题 / 列表 / 表格 / 引用 / 链接 / 代码块等渲染,内嵌代码块同样高亮;渲染前整体 HTML 转义,链接仅允许 http/https 且强制 rel="noopener noreferrer" - 面板交互:标题栏拖拽移动、右下角拖拽缩放(400–1400 × 280–900)、关闭 / 刷新 - 会话头部按钮:标题栏动作区显示「工作区文件」按钮(点亮 = 面板已打开),点击切换显隐 - 跟随会话:工作区根目录取自当前会话的 cwd(useSessions 标准 hook),切换会话时面板自动重置并加载新工作区 安装(dsh.bundle) 本仓库同时是可安装的 dsh 插件包(package.json 声明 dsh.bundle + dsh.client): dsh plugin --profile web add github:YZz-S/dsh-workspace-files-explorer 安装后「会话标题栏动作区」出现「工作区文件」按钮,浮层面板自动生效。 动态用法(cordis_define 加载 host.js / client.js)仍保留,两种方式二选一。 文件说明 | 文件 | 说明 | | index.js | Host 半部分(安装版):webServer 路由 /api/wsf-explorer/,只读文件浏览 API | | lib/client.js | Client 半部分(安装版):__ModuleLoader__ 浏览器模块,fetch 调用 Host 路由 | | cordis.patch.yml | bundle 补丁:把插件行插入 dsh 组合 | | host.js | Host 半部分(动态版):供 cordis_define 使用,harness.handle 包私有 RPC | | client.js | Client 半部分(动态版):供 cordis_define 使用,host.call 调用 Host | | README.md | 本说明 | | LICENSE | MIT 许可证 | | package.json | 包元信息 + dsh.bundle / dsh.client 声明 | 使用方法 方式一:动态 Cordis 插件(临时运行) 在 dsh Web GUI 的会话中,用 Cordis 工具定义并运行: 1. 调用 cordis_define:code.host 粘贴 host.js 的内容,code.client 粘贴 client.js 的内容(plugin.kind: 'new',idPrefix 取 3–6 个小写字母) 2. 调用 cordis_run 激活,在界面上允许授权 3. 面板默认打开;标题栏右侧出现「工作区文件」按钮用于切换显隐 注意:动态插件的生命周期与当前 dsh 进程相同。重启 dsh 后需重新定义运行。 方式二:可安装插件(常驻) 见上文「安装(dsh.bundle)」:dsh plugin --profile web add github:YZz-S/dsh-workspace-files-explorer,插件随 profile 常驻,无需每次手动运行。 工作原理 - 工作区根:Client 端通过标准 hook useSessions((s) => s) 读取当前会话的 cwd,随每次请求传给 Host;无会话时回退 sandboxPolicy.workspaceRoot - Host 只读:仅使用 fs 的 resolve / stat / listDir / readText / contains / processPath,无任何写入;所有路径经 fs.contains 校验必须位于工作区内 - 预览安全:代码与 Markdown 内容一律先做 HTML 转义再渲染;Markdown 链接仅允许 http/https 协议并强制 rel="noopener noreferrer";原始 HTML 不直通 - 上限:文本预览 256KB、代码渲染 2000 行、Markdown 渲染 4000 行、目录列表 500 项,超出部分友好提示 隐私说明 - 仅读取当前会话工作区内的文件与目录列表,无外部网络请求、无文件写入、无遥测、无持久化存储 - 工作区边界外的路径一律拒绝(路径超出工作区范围) 已知限制 - 二进制文件与超过 256KB 的文本只提示,不预览 - 语法高亮为内置轻量实现(关键字 / 字符串 / 注释 / 数字),非完整语义级高亮 - 面板按钮注册在会话头部动作区;空白新会话(无标题栏)时按钮不显示,面板仍默认打开 - 动态插件为进程级生命周期,重启后需重新运行 开源前检查 - [x] 无硬编码密钥 / Token / 密码(已扫描 api[_-]?key、secret、token、password、私钥头等模式) - [x] 无个人信息(用户名、机器路径、内部 IP、邮箱);工作区路径来自运行时会话状态,未写入代码 - [x] 无外部网络请求、无遥测、无第三方数据收集 - [x] MIT 许可证齐全,README 完整 - [x] 代码仅使用 dsh 插件公开接口(Services / webServer / slots / React),副作用全部挂在插件 Fiber 上,停止即清理 - [x] 输入内容(文件名 / 文件内容)均经 HTML 转义后渲染,链接协议白名单 + noopener,无注入面 License MIT English · 中文
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
YZz-S/dsh-workspace-files-explorer
浮层浏览工作区文件树,点击即可预览代码与 Markdown
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,350已汉化DSH
71.5
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,506已汉化DSH
71.1
AI 矢量设计工具ZSeven-W/openpencil
全球首个 AI 原生开源矢量设计工具。
★ 7,027已汉化DSH
71.1
这是你的仓库?认领条目