Find what matters. Locally.
Your documents, code, photos, music and movies. One place to search.
You remember what was in the file. searchi helps you find it—even when you don't remember what it was called. Search a filename, a phrase, or describe what you're looking for in your own words. See the relevant passage or media preview alongside your results, then open the file. Your files stay on your device.  *“cancel the supplier partnership” finds the agreement and brings its termination passage into view.* ## Find it your way | What you remember | What to try | | --- | --- | | The file's name | `Supplier agreement.pdf` | | Words inside a document | `sixty days written notice` | | What a document is about | `cancel the supplier partnership` | | What a piece of code does | `retry failed requests with exponential backoff` | | An exact code symbol | `refreshAccessToken` | | A photo's subject | `mountains reflected in calm water` | | An artist or song title | `Nina Simone` or `Feeling Good`, if present in your music tags | | A scene or sound | Try `rain and thunder` or `a boat crossing a lake` in experimental media search | **Names, words and meaning work together.** Exact filenames help you get straight to a known file. Content search finds the words inside it. Google EmbeddingGemma 2 adds local semantic search for related meaning, images and sound. Use **All files** to narrow results by folder, file extension, modification date, file size or media duration. Choose a result to inspect it before opening. ### Find the implementation Choose **Code** in the **All files** filters to search source files. Look up a symbol you know, or describe the behavior you need. Local Google embeddings help connect your description to an implementation; the preview preserves code formatting and shows the source passage's starting line. Rust, Python, JavaScript/TypeScript, C/C++, Go, Java, C#, Swift, SQL and many other source formats are supported, including named build files such as `Makefile` and `Dockerfile`. Add your project folder and let semantic indexing finish for meaning-based search. See [code search](docs/CODE-SEARCH.md) for details and agent integration. ## A little less searching. A little more finding. Matching words stand out in the results and document preview. PDF results retain their page number; text results show the relevant passage. If you'd like an explanation, expand the small **Why this result?** detail.  Light and dark themes follow your system preference. Keyboard navigation, short transitions and reduced-motion support keep the interface familiar and comfortable.  *“mountains reflected in calm water” searches the pictures themselves, so a useful filename isn't required.* Images open in the preview. Audio and video have playback controls, and matching media segments can jump to their approximate location. Nothing autoplays when you select a result. ## Get searchi **searchi is in active development. Ready-to-install downloads have not been published yet.** Windows, macOS and Linux are the intended desktop platforms; packaged releases and platform testing are still being completed. Check the [releases page](https://tea.karlcom.de/karl/searchi/releases) for published downloads, or let your local AI agent handle setup for you. ### Install with your agent — copy and paste Paste this into an agent that can run commands on your computer: ```text Install searchi on this computer and get it ready for my first search. Official repository: https://tea.karlcom.de/karl/searchi Detect my operating system and processor architecture. Use a suitable official release if one is available, verifying any published checksums. Otherwise, set up the current source version using the repository's installation/build instructions. Handle the required tools and dependencies for me; don't just give me a list of commands to run. Keep the installation in a dedicated folder and preserve any existing searchi settings and index. Install the desktop app by default. On headless Linux, install the command-line version instead, without desktop dependencies. Set up the genuine local Google EmbeddingGemma 2 runtime and model, and the media helpers available for my platform. Use supported hardware acceleration with CPU fallback. Explain any large downloads or platform limitations before proceeding with those steps. Launch searchi and check that it actually opens and its local search model is ready. Create a normal launcher or shortcut so I can open it again. If a prerequisite, platform component or permission prevents setup, explain precisely what is missing; don't report a working installation until it is verified. Ask for my help only when a password, system approval or other manual action is required. Let me choose which folders to index. Keep search local and optional cloud summaries disabled. Finish by showing me how to add a folder and try a filename search followed by a search in my own words. ``` Your agent needs internet access and permission to install software locally. Since installers aren't published yet, setup currently involves building the app and may take a while. The local search model downloads approximately **865 MB**. Windows, macOS and Linux release validation is still in progress; your agent should report any platform limitation it encounters. Prefer to set it up yourself? See the [build and launch instructions](docs/BUILDING.md). ### Your first search Once searchi is running: 1. Choose **Add folder**, browse to the folder you want to search, then choose **Index folder**. 2. Start with a filename or words you remember. These searches become available as files are indexed. 3. Let the local search model finish preparing in the background. First setup downloads approximately **865 MB** and needs an internet connection. The app shows its progress; semantic search becomes available when setup and indexing finish. 4. Describe what you're looking for, select a result and inspect the preview. Press **Enter** to open the selected file in its usual application. How quickly a folder becomes searchable depends on its size and contents. The desktop keeps its search model warm for subsequent searches. searchi watches your chosen folders and updates search in the background as files change. You can also use **Reindex** to check a folder again, for example after reconnecting an external drive. searchi automatically chooses supported graphics acceleration when available and falls back to CPU when it cannot use it. You do not need a graphics development toolkit. Hardware and release validation are still in progress. ## Private by design You choose the folders to index. By default, file contents, previews and search processing stay local. Ordinary searches aren't sent to a cloud AI service. If you enable optional AI answers, an explicit **Summarize** or **Ask** action sends the previewed document excerpt to the endpoint you choose. Ordinary searches continue to run locally. The model download happens during setup. Once it's ready, semantic inference runs on your device. The local search index contains information from your files, so protect it as you would the files themselves. ## Documents and media | Files | Current support | | --- | --- | | Documents | PDF, DOCX, plain text, Markdown and source code | | Photos | JPEG, PNG, WebP and BMP | | Music and audio | MP3, FLAC, WAV, M4A, OGG, Opus, AAC and AIFF | | Movies and video | MP4, MKV, MOV, AVI, WebM, M4V and MPEG | **Media search is experimental.** Image, audio and video search are implemented, but relevance still needs improvement. Spoken topics can be missed, music matches can be too broad, and video sampling can miss a brief scene. Media timestamps identify approximate segments, rather than an exact spoken word. Playback also depends on the formats your system supports; you can open a file in its usual player if the preview cannot play it. ## Fast should feel fast Each search shows a compact result count and timing summary. Want to look closer? Enable **Performance details** in settings for a breakdown of where the time went. Copied timing reports exclude your search text and file paths.