界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

everything-search

everything-search

【效率与协作】Find and count local Windows files and folders through the voidtools Everything index and ES command-line interface. Use when the user asks to locate files, discover folders, search by filename, extension, size or modified date, find recent local artifacts, count matching paths, or perform fast machine-wide or path-scoped file discovery without scann…

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: everything-search description: Find and count local Windows files and folders through the voidtools Everything index and ES command-line interface. Use when the user asks to locate files, discover folders, search by filename, extension, size or modified date, find recent local artifacts, count matching paths, or perform fast machine-wide or path-scoped file discovery without scanning the filesystem recursively.

Everything Search

Use the plugin's read-only wrapper around es.exe. It returns structured JSON, limits output, blocks Everything control commands, and reports missing ES or Everything IPC with actionable errors. Do not use it to delete, move, open, or modify results.

Prerequisites

Everything and the ES command-line interface are user-installed Windows programs; the plugin does not bundle either binary. Everything must be running in the user's interactive session so ES can reach its IPC window. Never start, exit, reindex, or reconfigure Everything unless the user asks.

Resolve <plugin-root> as the directory two levels above this skill directory. Run a diagnostic before the first search in a task or after any IPC error:

python <plugin-root>/scripts/everything_search.py doctor

If everything_ipc_ready is false, ask the user to start Everything and retry. Do not fall back to a slow whole-disk recursive scan unless the user explicitly requests that alternative.

Search

Use a bounded search:

python <plugin-root>/scripts/everything_search.py search --query "<expression>" --max-results 100

Add only the options needed:

  • --path <existing-directory> scopes results to a folder or drive.
  • --kind file|directory|any filters object type.
  • --sort date-modified --order descending returns newest results first.
  • --offset <n> and --max-results <1..1000> page through large result sets.
  • --regex, --case-sensitive, --whole-word, --match-path, or --diacritics enable ES modes.
  • --instance <name> targets a named Everything instance.

Prefer a path scope when the user names a location. Otherwise search the whole index with a small limit, summarize the best matches, and page only when necessary. Never issue an empty unbounded query.

Useful Everything expressions:

  • report ext:pdf;docx: matching documents.
  • dm:today ext:py: Python files modified today.
  • size:>100mb video:: large videos.
  • project | workspace: either term.
  • invoice !draft: include invoice and exclude draft.
  • content:needle ext:txt: content search; warn that content is not indexed and can be slow.

Queries beginning with -, /, or about: are intentionally rejected because Everything can treat them as options or commands. Express those searches with filename terms or functions.

Count

When the user needs only a total, avoid returning paths:

python <plugin-root>/scripts/everything_search.py count --query "ext:py" --path <workspace> --kind file

Result handling

The search response contains returned plus results[] with name, path, full_path, kind, extension, size, ISO-8601 creation/modification dates, and Windows attributes. Treat results as index data: verify a path with a filesystem check before reading or changing it because the index can briefly contain stale entries. Present a short ranked list and mention the scope and filters.

Official references:

我的收藏