English | 简体中文 | 日本語 | 한국어 | Español | Italiano
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
dowse
Open-source local file content search for Windows. Find file names, PDF and Office contents, source code, and text inside screenshots — one hotkey away.
Website ·
English product page ·
Windows file-content search guide(中文)
The name comes from a dowsing rod.
Motivation
No Windows tool satisfies all three of the following at once:
- Keep a persistent index of file contents, not just file names (Everything can scan contents on demand, but its instant index is centered on names and paths)
- Recognize and index text inside images on ordinary Windows PCs without requiring a Copilot+ device
- One hotkey to summon, full keyboard operation, no perceptible latency
The closest open-source implementation is sist2, but it targets Linux (on Windows it only runs via Docker), treats Chinese text as trigrams, and the project is no longer maintained. dowse is a Windows-native implementation built around these three points.
Features
| | |
|---|---|
| 🔍 **File name search** | Instant, as you type |
| 📄 **Document content search** | Plain text, Markdown, code, and document formats (PDF, Word, Excel, PowerPoint) |
| 🖼️ **Screenshot / image OCR** | Text inside PNG/JPG/WebP/BMP images, fully offline (Windows.Media.Ocr) |
| 🈶 **Chinese word segmentation** | jieba + BM25 ranking, not trigrams — plus automatic GBK encoding detection |
| ⚡ **Incremental indexing** | File-watch during runtime, mtime/size reconciliation at startup |
| 🤖 **MCP server** | Exposes local search to AI agents over stdio |
| 🚀 **NTFS fast path** | MFT enumeration + USN Journal, admin-only, falls back transparently otherwise |
dowse vs. the alternatives
| | dowse | Everything | Windows Search | sist2 |
|---|:---:|:---:|:---:|:---:|
| File name search | ✓ | ✓ | ✓ | ✓ |
| Document content search | ✓ (persistent index) | on-demand scan | depends on indexed locations and filters | ✓ |
| Screenshot / image OCR | ✓ | ✗ | device/version dependent | limited (optional Tesseract) |
| Proper Chinese segmentation | ✓ (jieba) | — | limited | ✗ (trigrams) |
| Fully local, no network | ✓ | ✓ | ✓ | ✓ |
| Global hotkey overlay | ✓ | ✓ | ✓ (Win key) | ✗ (web UI) |
| Windows-native | ✓ | ✓ | ✓ | ✗ (Linux-first, Docker on Windows) |
Chinese text handling
- Word segmentation via jieba, ranking via BM25 (tantivy engine). No trigrams.
- Automatic file encoding detection (chardetng). GBK-encoded files are decoded correctly before indexing — this matters because a large share of Chinese-language documents on Windows, especially older ones, are still saved in GBK rather than UTF-8, and a search tool that assumes UTF-8 will silently mis-index or garble them.
- Multi-term queries default to AND semantics. Quoted phrase queries match on exact position. Inline operators narrow things down further: path:reports, mtime:>2026-01-01, size:>10mb, uppercase OR between groups, -term to exclude.
- OCR runs on the Windows-native engine (Windows.Media.Ocr), fully offline. The zh-Hans language pack also covers mixed Chinese/English text, no extra configuration required.
Performance
Design targets; exceeding them is treated as a defect. "Measured" is a from-scratch
benchmark of dowse 0.7.0 (i7-13700K / 24 logical cores / 64GB RAM, single machine,
single session, 2026-07-12), reusing the byte-identical corpus from the v0.6.1 round-3
benchmark for direct comparability. Full raw output (index/search logs, JSON result
files) is kept with the benchmark working directory, outside this repo.
| Metric | Design target | Measured (v0.7.0, 2026-07-12) |
|---|---|---|
| Hotkey to window visible | < 50ms | not measured — CLI-only benchmark, no overlay-app instrumentation |
| Keystroke to results rendered | < 80ms | not measured — same |
| OCR, single image | ~112ms / 1080p screenshot | ~170ms isolated (480×200 synthetic image), unchanged from v0.6.1 — the OCR pipeline was not modified this release. Sub-30ms readings on immediate repeat runs of the same image reflect OS-level recognition caching, not real recognition, and are excluded here. Not real 1080p screenshots |