Kensaku searches filenames and extracted text from documents, code, and images in folders you choose. It combines keyword and fuzzy matching with optional semantic search, which finds text by meaning.

  • Search inside files. Supported formats include PDF, Office documents, EPUB, and source code. OCR, which reads text from images, makes screenshot text searchable.
  • Narrow the query. Filters such as type:pdf invoice, ext:md, and modified:7d restrict results without opening a separate search form.
  • Share an index with tools. kensaku-cli search "docker error" --json returns structured results. kensaku-cli mcp connects compatible agents through MCP, the standard for connecting agents to tools.
  • Limit agent access. First-party docs describe read-only search, bounded snippets, and configurable folder scopes. Reindexing requires an explicit opt-in.

Prebuilt packages cover Windows, macOS, and Linux, including Debian, RPM, and AppImage downloads. First run selects folders and exclusions, then builds the index. OCR and semantic search use model downloads; source builds require Rust and Bun or a supported Node.js version. The code uses the MIT licence.

The practical use is finding a document by its contents when its filename is forgotten. The maintainer says search stays local, with outbound requests limited to update checks and model downloads. A connected hosted assistant can still receive retrieved snippets, so scope its access carefully.

Caveat: releases are unsigned, and the maintainer reports less real-world testing on macOS and Linux than on Windows. Treat the extracted-text index as sensitive data.

Discovered through the creator’s r/BestGitHubRepos post. Details come from the current README, installation guide, and agent documentation.