${icon("sparkles")}Preparing local semantic search…Local model${icon("chevron")}
The verified local model downloads automatically on first launch (865 MB). Your files stay on this device.
diff --git a/AGENTS.md b/AGENTS.md index e8b800b..01c0a4d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -16,6 +16,10 @@ readiness without completed release gates and recorded evidence. - Use bounded work, explicit errors, versioned storage, and offline defaults. - Never substitute simulated embeddings for working semantic search. - Production semantic search must use Google EmbeddingGemma 2 as in DigUp. + Code scope uses Google's CodeRetrieval query prefix; query-vector cache keys + must distinguish code and general search tasks. Preserve exact source bytes, + line locations and code filtering before all candidate limits. Re-run actual + CPU code fixtures after changes to tokenizer offsets or code extraction. MiniLM proof artifacts are historical experiments, not an accepted backend. - The desktop UI is the primary product, including local model setup and semantic indexing/search. Keep a separate CLI-only build for headless Linux with no GUI dependencies. diff --git a/README.md b/README.md index 72515c7..5315b69 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@
Find what matters. Locally.
-Your documents, photos, music and movies. One place to search.
+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. @@ -25,6 +25,8 @@ termination passage into view.* | 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 | @@ -37,6 +39,19 @@ 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 diff --git a/apps/desktop/src-tauri/src/main.rs b/apps/desktop/src-tauri/src/main.rs index ce30583..e5f7274 100644 --- a/apps/desktop/src-tauri/src/main.rs +++ b/apps/desktop/src-tauri/src/main.rs @@ -119,6 +119,8 @@ fn set_cpu_threads(threads: usize, state: State<'_, AppState>) -> Result
searchiSearch automatically uses supported acceleration with CPU fallback.
Local timing diagnostics for new searches. Queries and file paths are excluded from copied reports.
Disabled by default. Only an explicit action sends the shown passage to your configured endpoint.
Endpoint, model and key stay in this app session. The key authenticates requests to your endpoint.
searchiSearch automatically uses supported acceleration with CPU fallback.
Local timing diagnostics for new searches. Queries and file paths are excluded from copied reports.
Disabled by default. Only an explicit action sends the shown passage to your configured endpoint.
Endpoint, model and key stay in this app session. The key authenticates requests to your endpoint.
The verified local model downloads automatically on first launch (865 MB). Your files stay on this device.