dshbase

插件目录 / Developer / dsh-file-picker

dsh-file-picker

已验证 · 实测可装 shaomingbo

✓ 持续维护

查看 GitHub ↗ ← 返回插件目录

0Stars
0Forks
0未关闭 issue
—语言
2026-08-21最近推送
跨平台平台

功能简介

Developer 类别的 DeepSeek Harness 插件。

✅
我们的评价
可用 — 实测通过,早期项目

Developer 类别的 DeepSeek Harness 插件。 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

DSH File Picker

A portable DeepSeek Harness Web GUI bundle that lets you search for and select files or directories anywhere on the local DSH host, then makes the chosen paths available to the active conversation.

It is designed for paths outside the current workspace: Downloads, Desktop, another project, or any other readable host directory. Search is a non-recursive, case-insensitive name filter within the currently open directory.

Install

Preferred — install the fixed release tag with the package's own no-argument installer:

npx --yes github:shaomingbo/dsh-file-picker#v0.2.1

No subcommand is the same as install. The installer only edits dependencies.dsh-file-picker and dsh.profile.bundles in the target profile's package.json (default profile web), writes the manifest atomically, then runs pnpm install --ignore-scripts in that profile directory. It never stops or restarts DSH.

For a different profile, or from a local checkout with link::

npx --yes github:shaomingbo/dsh-file-picker#v0.2.1 --profile lab
npx --yes github:shaomingbo/dsh-file-picker#v0.2.1 --source link:/path/to/dsh-file-picker

The default source is pinned to the current SemVer tag; --source (or the DSH_FILE_PICKER_SOURCE environment variable) can override it. Every command also accepts -h/--help.

Status

npx --yes github:shaomingbo/dsh-file-picker#v0.2.1 status

Reports whether both the dependency and the bundle entry are present.

Uninstall

Idempotent — running it twice is safe, and the original manifest is restored if dependency installation fails:

npx --yes github:shaomingbo/dsh-file-picker#v0.2.1 uninstall

This removes dsh-file-picker from both dependencies and dsh.profile.bundles, runs pnpm install --ignore-scripts, and prints a reminder to restart DSH.

After installing or uninstalling: restart DSH manually and refresh the existing Web GUI.

Manual fallback — edit ~/.dsh/profiles/web/package.json yourself, adding "dsh-file-picker" to dependencies (with the tag source) and to dsh.profile.bundles, then run pnpm install --ignore-scripts in that profile directory and restart DSH.

Use

  1. Open a normal DSH Web conversation.
  2. Click 📁 in the composer tool row.
  3. Browse the host filesystem or filter the current directory with the search field.
  4. Select files and directories with their checkboxes. Clicking a directory name opens it; Select this folder selects the directory currently shown in the path bar.
  5. Click Apply, then send your next prompt. The model receives the selected paths in a <selected_paths> context block. It can use read for files and glob or grep to inspect directories when appropriate.

Files and directories can be mixed in one selection, up to 32 paths. Applying a new selection replaces the selection for that conversation. Clear removes it. The selection is kept only in the running DSH process; restart DSH to discard it.

Security and privacy

  • The picker returns paths and entry kinds only; it never reads or uploads file contents and never recursively scans a selected directory.
  • Search filters names in the current directory only; it does not traverse subdirectories.
  • The selected paths are sent only to the model as conversation context after you apply them.
  • Its private browser-to-host RPC is limited to localhost/loopback browsers. This intentionally prevents filesystem browsing from a remote Web GUI authority.
  • It accepts only regular files and directories for selection; devices and sockets cannot enter the selected-path context.

Compatibility

This bundle targets the current DSH Web profile architecture (dsh.client, connection.rpc, systemPrompt.context, and the conversation.input.left / shell.overlay slots). It has been checked against DSH 0.1.0-rc.6.

Update

Re-run the installer for the desired release tag (idempotent — it refreshes the pinned dependency source and keeps a single bundle entry):

npx --yes github:shaomingbo/dsh-file-picker#v0.2.1

Then restart DSH and refresh the Web GUI.

Development

npm run check

The tests cover the host filesystem/RPC and prompt-context behavior plus the installer: first install, repeat install, status, uninstall, malformed manifests, bad arguments, and rollback when dependency installation fails, all inside a temporary DSH_HOME. The browser bundle is syntax-checked as part of the same command.

License

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-file-picker」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:shaomingbo/dsh-file-picker

Headless(CLI)profile:

dsh plugin --profile headless add github:shaomingbo/dsh-file-picker

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7819 个插件 →