Han-Yao94/dsh-filelens

Plugin插件 Native原生 ⭐ 2 NOASSERTION Docs & Writing文档与写作

Project Overview项目介绍

dsh-filelens is a native plugin built exclusively for DeepSeek Harness that adds a dedicated right-column file explorer to the DSH web UI. It ships as a single npm package with both host-side service logic and browser-side user interface code, and follows DSH plugin packaging conventions so it can be installed directly via the DSH command line interface. You can install it from one of three sources: the GitHub repository directly, a pre-built release tarball downloaded from the project’s releases page, or npm once the package is published publicly. After installation completes, you only need to restart your DSH web profile to activate the new file explorer panel.

This plugin is designed for developers who use DeepSeek Harness to work with local file workspaces, and want a convenient way to browse, preview, and edit files without leaving the DSH conversation interface. A typical workflow starts with expanding the lazy-loaded directory tree to find your target file, clicking to open it in a new preview tab, then adjusting preview settings or editing the file directly in place. When you click a file mention in an existing DSH conversation, the plugin automatically switches the tree to that file’s folder and highlights the file row for quick access.

dsh-filelens requires a pre-installed, running DeepSeek Harness environment to work, and has zero additional runtime dependencies beyond what DSH already provides. It is released under the open-source MIT license, with icons derived from the Lucide icon set under the ISC license. The plugin enforces several built-in limits: filename search caps out at 300 results across 3000 directories with an 8-level depth limit, and large files show a 256KB head preview that you can load incrementally. All user interface state like expanded directories and open tabs is saved to the browser’s localStorage for persistence across page reloads.

这是一款专为DeepSeek Harness开发的原生插件,为DSH的网页界面添加了右侧栏文件浏览器。它支持懒加载目录树、多格式文件预览、文件名和内容搜索、多标签页浏览、文本文件在线编辑,内置了访问隔离保护和版本保护写入等安全机制。你可以通过DSH命令行从GitHub、发布压缩包或npm(上线后)三种方式完成安装。

本插件面向需要在DSH对话过程中便捷浏览、预览和编辑工作区文件的开发者。典型工作流为:展开目录树找到目标文件,点击打开预览,可切换格式预览、搜索内容或直接编辑,修改后通过版本保护机制保存到磁盘。点击对话中提及的文件链接可自动跳转定位到该文件所在目录并高亮。

插件依赖已安装运行的DeepSeek Harness环境,采用MIT许可证开源,零额外运行时依赖。目前搜索功能限制为递归深度8级、最多3000个目录、300个结果,单文件预览头部默认256KB,可增量加载更多内容。安装后重启DSH即可启用,状态会保存在浏览器localStorage中。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-filelens

把 Han-Yao94/dsh-filelens 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-filelens

English | 中文

FileLens — a right-column file explorer for the DeepSeek Harness web UI. Browse a lazy directory tree, preview many formats, search file names and contents, open multiple tabs, and inline-edit text files — with containment guards and version-guarded writes built in.

A single npm package ships both halves:

  • Host half — the filelens Remote service (root / list / search / grep / read / readMore / readHex / write / readImage) over the host fs service. Invocation definitions are registered into the Host Typert registry at runtime (typert.local) — no generated artifacts, no decorator markers, install-shape agnostic.
  • Browser half — the details-column UI, wired to the Host through the same /api Remote transport the built-in client connection uses. No ctx.remote namespace injection is needed, so there is nothing to deadlock or misconfigure.

Features

  • Lazy directory tree — expand/collapse, hidden-dotfile toggle, breadcrumb navigation, drag-resizable column, and every entry is shown (no per directory cap). Refresh keeps your open tabs. The tree and open previews auto-sync with the disk (~2.5 s poll): added/removed entries appear and disappear, and previews reload when file content changes.
  • Multi-tab preview — drag-sortable tabs, Ctrl+Tab / Ctrl+Shift+Tab cycling; per-tab "pretty/raw" and word-wrap preferences.
  • Typed rendering
    • Markdown: headings, lists, task lists, quotes, aligned tables, fenced code with syntax highlighting and a copy button, auto TOC, blue links (URL scheme whitelisted).
    • Images: zoom 0.2–8×, rotate, 1:1 reset, download, pixel dimensions.
    • JSON (pretty + highlighted), CSV/TSV tables, diff/log coloring.
    • 30+ languages syntax-highlighted with line numbers and cross-line block comment handling.
    • Binary files get a hex view (offset + hex + ASCII).
  • Large files — 256 KB head preview with incremental "load more" (the Host continues the same stream — no re-read from the start), virtual scrolling beyond 800 lines.
  • Search — recursive filename search (depth 8 / 3000 dirs / 300 results), content grep (≤256 KB text files, 5 hits per file, click to jump to line), Ctrl+P quick-open palette. Searches are cancelable per family, so keystrokes never pile up heavy scans on the shared host.
  • Conversation links — clicking a file mention in a conversation switches the tree to that file's own folder and highlights the file row.
  • Workspace awareness — the panel is a session-scoped details seat: it resolves the current session's workspace on open, so switching between sessions with different workspaces re-roots the panel automatically.
  • Inline editing — text files edit in place; saves write through the host fs service with a version guard (see Security).
  • Right-click menu — copy path / open in system / reveal in folder / open in new tab.
  • State persistence — expanded dirs and open tabs survive reloads via localStorage (key dsh-filex-state); the root always follows the current workspace, never a stale stored one.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-session-cost 下一个 Next dsh-turn-status-phrases →