Argonaut790 / dsh-everything-search

已收录

Instant filename search for DSH agents backed by voidtools Everything (es.exe): everything_search / everything_status tools in milliseconds, never a slow recursive walk.

master工具 查看源代码

安装

pnpm install # pulls @deepseek-ai/dsh-tools for type-checking/imports

此命令根据 GitHub 仓库地址生成。运行前请检查上游 README 与源代码;需要可复现安装时,请固定 release 或 commit。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 1eb687a同步于 2026年8月18日

Instant filename search for DeepSeek Harness (DSH) agents, backed by voidtools Everything. Registers two host-side agent tools:

  • everything_search — whole-index filename queries in milliseconds (reads the NTFS MFT index, never a slow recursive directory walk), with optional path scoping, node_modules/.git noise filtering, and exact/prefix/substring ranking.
  • everything_status — reports whether the Everything backend is usable, where es.exe was found, and what to do if it is not.

⚠️ Windows-only. Everything indexes NTFS volumes on Windows; on other platforms the tools return a clear error telling the agent to fall back to the regular glob/grep tools.

Install

Requires pnpm and a DSH profile.

# into the web profile (the default GUI profile)
dsh plugin --profile web add github:Argonaut790/dsh-everything-search

# or into the desktop profile
dsh plugin --profile desktop add github:Argonaut790/dsh-everything-search

If pnpm add is blocked from running the package's build scripts, add the exact key pnpm printed under allowBuilds in <profile>/pnpm-workspace.yaml, then re-run.

Backend requirements

The tools shell out to es.exe (the Everything command-line interface). It is discovered from, in order:

  1. the EVERYTHING_ES environment variable,
  2. ~/.dsh/bin/everything/es.exe (the portable Everything layout used by DSH Desktop),
  3. Program Files / Program Files (x86) / %LOCALAPPDATA% Everything installs,
  4. es.exe on PATH.

Install Everything from https://www.voidtools.com/ (or run the portable copy under ~/.dsh/bin/everything). Everything must be running (it stays in the tray); if it is installed but not running, the plugin attempts to start it once with Everything.exe -startup and retries.

Tools

ParameterTypeDefaultDescription
querystringFilename substring (case-insensitive). */? pass through as Everything search syntax.
rootstringAbsolute Windows folder to scope the search to (e.g. Z:\Programming\SmartQuestApp). Omit for the whole machine.
limitinteger50Max results (cap 200).
skipNoisebooleantrueDrop node_modules/.git paths from results.
contentbooleanfalseSearch file contents instead of names (requires Everything content indexing).
caseSensitivebooleanfalseMatch case exactly.

Results are ranked like the GUI file tree: exact name match, then prefix, then substring; shorter paths first; alphabetical tie-break. Each hit is { path, name, isDir } (folders are excluded — they are found via path prefixes anyway).

everything_status

No parameters. Returns backend, esPath, reachable, optional error/detail, and a human-readable hint.

Design rules

  • Never falls back to a slow recursive directory walk. If Everything is missing or not running, the tool returns a structured error telling the agent to use glob/grep instead.
  • Queries are literal substrings by default; Everything's own search syntax is passed through when the query contains * or ?.
  • Output is lossless JSON (no undefined values), so results pass dsh-tools validation.

Development

git clone https://github.com/Argonaut790/dsh-everything-search.git
cd dsh-everything-search
pnpm install            # pulls @deepseek-ai/dsh-tools for type-checking/imports
node .test-tmp/run-test.mjs   # standalone smoke test against the real es.exe

To use a local checkout instead of the published repo:

dsh plugin --profile web add link:/absolute/path/to/dsh-everything-search

License

Apache-2.0

仓库信息

开发语言
JavaScript
许可证
Apache-2.0
最后更新
2026年8月15日 19:25

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。