baosfeng/my-dsh-plugins--plugins-dsh-file-activity ↗★ 5
dsh-file-activity
DSH 侧边栏文件活动插件:按 LRU 记录文件读取/新增/修改事件(最近访问),按绝对路径树形统计(文件统计),点击文件浮窗预览(代码高亮/Markdown/图片/PDF)。DSH web plugin: file activity tracker — LRU recent-access list plus per-file read/create/modify counts in a folder tree, with floating preview.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:baosfeng/my-dsh-plugins#cc837f22ecaa841de7d263346073dc44c55d50ee&path:plugins/dsh-file-activity说明文档
阅读完整 README ↗使用
- 侧边栏
+菜单 → 文件活动(或会话开始自动打开)。 - 点击任意文件行 → 弹出浮窗预览:浮窗内复用侧边栏内置的 file viewer 渲染(代码语法高亮 / Markdown 富文本 / 图片 / PDF / HTML),不打开侧边栏编辑器标签,也不自建预览实现;点击浮窗外任意处或按
Esc即可关闭,大文件可在浮窗内滚动。 - 顶部「刷新」手动重载,「清空」删除当前会话全部记录。
浮窗预览(复用内置渲染)
点击文件(最近访问 / 文件统计中的任意文件行)会打开一个悬浮预览窗,窗口内容由侧边栏内置的文件查看器(file viewer)渲染 —— 通过 ctx.betterSidebar.matchFileViewer(path) 拿到匹配的 viewer,取其 component 挂载,并按 viewer 的 fetchStrategy 取内容(fsRead 文本 / mediaUrl 媒体 / custom 自定义)。浮窗为轻量交互:点击浮窗外任意处、按 Esc 或点标题栏右上 × 都能关闭;浮窗主体是可滚动区域,长文件或大图在窗内滚动查看。
- 代码(后台为侧边栏内置 CodeMirror 编辑器):语法高亮 + 行号;支持 预览/编辑 切换与保存。
- Markdown(
.md/.markdown):渲染后的富文本预览,可切换 预览/编辑 模式。 - 图片(png / jpg / jpeg / gif / webp / svg / bmp / ico / avif):通过媒体路由渲染。
- PDF:浏览器原生 PDF 查看器(浮窗内嵌,工具栏提供下载)。
- HTML:沙箱化渲染预览,内容撑满整个浮窗主体(iframe 随浮窗尺寸自适应、内部滚动,与代码/Markdown/图片预览体验一致,issue #111)。
- 其余文件按内置 viewer 的
matchFileViewer回退匹配(如binary-download下载未知二进制)。
💡 工作区外文件也能预览:文件活动记录的是 agent 实际触碰过的文件,路径可能在会话工作区之外(如
/tmp临时文件)。侧边栏自带的媒体路由只允许工作区内文件,因此图片/PDF 的字节由插件自身的/file-activity/file路由提供——它按会话记录授权(只放行本会话记录过的路径,未记录的路径一律 403),fence 与侧边栏一致。Markdown/代码/HTML 文本则仍走侧边栏fs.read(不被工作区限制)。
配置
「设置 → 侧边卡片 → 文件活动」卡片齿轮:会话开始时自动打开(默认开)。