darker2016/dsh-filexplore

darker2016★ 1JavaScriptLast synced: 2026-08-14

Open on GitHub

README excerpt

dsh-filexplore DeepSeek Harness web 插件:把「文件」带进对话输入框 + 工作区文件浏览。 功能 1. 拖拽入库 :把任意文件(非纯图片)拖到聊天输入框 → 文件自动写入当前会话工作区的 attachments/ 目录,并在输入框末尾插入一个 @file 引用 chip。纯图片拖拽仍走 dsh 原生图片通道。 2. @ 文件引用 :在输入框输入 @ 会弹出候选菜单(与子智能体 @ 共存),列出当前会话工作区里的文件;选中后插入文件引用 chip。 3. 工作区文件夹查看 :侧边栏工作区列表里,每个工作区行右侧有一个文件夹按钮(悬停显示),点击打开 VS Code 风格的文件夹/文件树弹层,可逐级展开目录查看文件(懒加载)。 点击任意文件或文件夹行会把该路径以 @file 引用插入到当前对话框 (同一工作区用相对路径,跨工作区自动用绝对路径);点击行首箭头则展开/收起目录。 发送时 chip 序列化为 @file ,agent 可用自带的 read / bash 等工具直接读取该文件。 工作原理 半边 文件 职责 Host 插件 lib/index.js 在 web server 注册 /filexp 路由: GET /filexp/list (列工作区文件)、 GET /filexp/tree (按工作区 id + 相对路径返回一个目录层级,供文件树懒加载)、 POST /filexp/intake (把拖入文件写入 /attachments/ ) Client 插件 lib/client.js 注册 @ 触发源 file ;捕获阶段 drop 监听(接管含非图片文件的拖放);MutationObserver 向每个工作区行注入文件夹按钮 + React 文件树弹层 引用格式约定: @file (相对会话 cwd)。菜单与 chip 里的 label 是文件名,完整相对路径作为副标题 / title。 安装(web profile) 限制 - 单文件 ≤ 32 MiB,单次 intake ≤ 64 MiB(超出部分跳过并打印 warning)。 - 文件列表只扫会话 cwd 下最多 4 层,跳过 node modules / .git / .dsh / dist / build 等噪音目录,最多返回 400 条。 - 文件树每层最多返回 1000 条,跳过隐藏文件与噪音目录;文件树暂不支持文件内容预览。 - 文件写入 attachments/ 后不会自动删除;拖拽只在有会话打开时生效。 - 同名文件自动追加 -1 、 -2 后缀去重。 - 混合拖拽(图片 + 其他文件)时整批都按文件引用处理,图片不再走原生图片通道。

View full README on GitHub →
Fun / Adsdeepseek-harnessdrag-and-dropdsh-pluginfile-uploadpluginagent

Category