본문으로 건너뛰기
cccskills
무료GitHub에 공개

everything-search

Search files and folders instantly across Windows drives or within specific project paths using Everything (HTTP REST API or es.exe CLI). Supports sandboxed agents (Docker, WSL, DevContainers) and native desktop environments with automatic dual-mode fallback.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Docker
설치 방법 보기

포함된 파일(11)

  • SKILL.md5.0 KB
  • .gitignore41 B
  • bin/es.exe108.3 KB
  • LICENSE1.0 KB
  • README_zh.md8.5 KB
  • README.md8.0 KB
  • rules/everything-search.mdc932 B
  • scripts/enable_http.ps14.2 KB
  • scripts/everything_search.ps16.7 KB
  • scripts/everything_search.py7.1 KB
  • scripts/install.ps13.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Everything Search (Dual-Mode: HTTP REST API & CLI)

Ultra-fast, index-powered local file search using Voidtools Everything. Supports both HTTP REST API mode (essential for sandboxed/containerized agents like Docker, WSL, DevContainers) and native CLI mode (es.exe Win32 IPC) with automatic fallback.


Why Dual-Mode? (Solving Sandboxed Agent IPC Issues)

When an AI agent runs inside a sandbox, Docker container, WSL2, or a Session 0 background service, calling es.exe directly often fails with: Error 8: Everything IPC window not found. Please make sure Everything is running.

Root Cause: Windows enforces User Interface Privilege Isolation (UIPI) and Session Isolation. Sandboxed processes and non-interactive sessions cannot send Win32 WM_COPYDATA window messages to the host desktop session.

The Solution: Everything provides a high-performance built-in HTTP REST API. Network calls (TCP) bypass Win32 UIPI/session isolation entirely:

  • Sandboxed Agent / Container ➡️ HTTP Request (http://host.docker.internal:8080) ➡️ Host Everything Index (Instant Results!)
  • Native Desktop Session ➡️ Automatic fallback to es.exe CLI if HTTP is disabled.

When to Use This Skill

Use this skill whenever you need to:

  • Locate files or directories instantly across local drives or inside a project directory
  • Search files in sandboxed environments (Docker, WSL, restricted agents) without IPC errors
  • Filter by name pattern, extension (ext:ts;tsx), size (size:>100MB), or date modified (dm:today)
  • Output structured JSON for automated pipelines without token-costly directory walks

Quick Start: Python Dual-Mode Helper (Recommended)

The skill includes scripts/everything_search.py, which uses only Python standard libraries (zero external dependencies like requests).

# Auto mode: Attempts HTTP on port 8080 first; falls back to es.exe CLI automatically
python scripts/everything_search.py "package.json" -n 20

# Structured JSON output
python scripts/everything_search.py "ext:py model" -n 10 --json

# Restrict search to a specific directory
python scripts/everything_search.py "main.go" -p "C:\MyProject" -n 5

# Explicitly force HTTP REST mode
python scripts/everything_search.py "exact:Dockerfile" --mode http

# Specify custom host/port (e.g. from Docker container to host)
python scripts/everything_search.py "*.json" --url "http://host.docker.internal:8080" -n 10

Sandboxed & Container Environment Configuration

1. Enable HTTP Server on Windows Host (One-time Setup)

In Everything on the host machine:

  1. Open Everything -> Tools (工具) -> Options (选项).
  2. Click HTTP Server (HTTP 服务器) in the left menu.
  3. Check Enable HTTP Server (启用 HTTP 服务器), set Port to 8080, and click OK. (Optional: run scripts/enable_http.ps1 to configure automatically).

2. Connect from Docker Container

Run your Docker container with host access:

docker run -e EVERYTHING_HTTP_URL=http://host.docker.internal:8080 --add-host host.docker.internal:host-gateway ...

Inside the container:

python scripts/everything_search.py "ext:rs" -n 10 --json

3. Connect from WSL2

Inside WSL, resolve the Windows host IP:

export EVERYTHING_HTTP_URL="http://$(ip route show | awk '/default/ {print $3}'):8080"
python3 scripts/everything_search.py "ext:md" -n 10

Direct CLI Usage (es.exe for Native Desktop Sessions)

When running directly in a native Windows user desktop session:

# Basic search (ALWAYS specify -n to prevent flooding LLM context)
es.exe -n 20 "settings.json"

# Search inside project folder
es.exe -path "C:\my-repo" -n 20 "index.ts"

# Files only (/a-d) or Folders only (/ad)
es.exe /a-d -n 15 "ext:tsx component"
es.exe /ad -n 10 "node_modules"

# Sort by date modified (newest first)
es.exe -sort-date-modified-descending -n 10 "ext:log dm:today"

Everything Search Syntax Cheatsheet

FilterSyntaxExample
Multiple extensionsext:<ext1;ext2>ext:md;txt;json
File sizesize:>100MB or size:1MB..10MBsize:>500MB /a-d
Date modifieddm:<time>dm:today, dm:last7days, dm:2025
Exact matchexact:<name>exact:Dockerfile
Logical ANDspaceauth controller ext:go
Logical OR`` (with spaces)
Logical NOT!*.ts !*.test.ts
Regex search-r flages.exe -r "src\\api\\.*\.go$"

Environment Variables

VariableDefaultPurpose
EVERYTHING_HTTP_URLhttp://127.0.0.1:8080URL of Everything HTTP service
EVERYTHING_HTTP_USER""Optional Basic Auth username
EVERYTHING_HTTP_PASS""Optional Basic Auth password

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

이 스킬의 문제 신고