zhangxiang1993621/dsh-ws-files

zhangxiang1993621★ 0JavaScriptLast synced: 2026-08-14

Open on GitHub

DeepSeek Harness 插件:Web 前端工作空间文件浏览器——树形目录浏览、文件名搜索、系统默认程序打开、在线编辑保存(写前确认),只读优先、路径围栏安全设计。

README excerpt

dsh-ws-files — 工作空间文件浏览器(DeepSeek Harness 插件) 在 DeepSeek Harness 的 Web 前端直接查看/编辑 工作空间 的文件:树形目录浏览、文件名搜索、系统默认程序打开、在线编辑保存(写前确认)。 功能 - 侧栏底部「📁 文件」按钮 → 右侧弹出文件面板 - 树形目录 :工作区根 → 逐层展开/折叠(懒加载),文件夹加粗、显示大小 - 搜索 :按文件名(不区分大小写)搜索,命中可直达 - 打开 :用系统默认程序打开文件/目录 - 编辑保存 :面板内编辑文本 → 保存前 确认对话框 (用户即审批者)→ 写入 - 多工作区切换(下拉选择 workspaceRegistry 中已登记的任一工作区) 架构 半 文件 作用 host lib/index.js Cordis 插件行: inject ['webServer','fs','workspaceRegistry'] ,注册 /ws-files JSON 路由 client lib/client.js 浏览器 bundle( ModuleLoader 协议,纯手工编写,仅 external 平台模块): sidebar.footer.action 入口 + shell.overlay 面板 声明 package.json dsh.bundle.patch (挂载 host 行)+ dsh.client (客户端声明)+ exports["./client"] API(host 半) 方法 端点 说明 GET /ws-files?action=workspaces 所有工作区 {id, path} GET /ws-files?action=list&root=&path= 列目录 {name, type, size}[] GET /ws-files?action=read&root=&path= 读文本内容 GET /ws-files?action=stat&root=&path= 元信息 GET /ws-files?action=search&root=&q= 按文件名搜索(限深 4 层 / 2000 条) GET /ws-files?action=open&root=&path= 系统默认程序打开 POST /ws-files?action=write&root=&path= 写文件,body {"content": "..."} (客户端已确认) 安装 安全设计 - 路径围栏 :所有读写都限制在 workspaceRegistry 已登记的工作区根目录内(realpath 校验,越界返回 403) - 写沙箱 :写入显式携带 workspace-write + 所选工作区根的沙箱策略(宿主 fs 策略层双重把关) - 写前确认 :浏览器端保存前弹确认框,…

View full README on GitHub →
Searchdsh-plugindsh-plugin-verifydsh-pluginssidebar

Category