Skip to content

About

100% Private, Zero-Cloud, Bare-Metal Desktop Memory & Screen Search Engine, Native MCP Server (nanorecall-mcp).

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

Β 

History

56 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⚑ NanoRecall: 100% Private Desktop Memory & Screen Search

PyPI Conda-Forge Debian / Ubuntu PPA CI Stars Issues Discussions Open in Colab Python PyPy No-GIL NanoVector FASM Engine License Privacy Hardware Donate USDT

🀝 Community, Issues & Support

  • πŸ› Found a bug, screen capture issue, or memory leak? Please Open an Issue β€” reports are tracked and resolved quickly!
  • πŸ’¬ Questions, UI ideas, or integration requests? Join our GitHub Discussions.
  • ⭐ Find NanoRecall useful? Give it a star on GitHub β€” it helps more privacy-conscious users discover the project!
  • β˜• Support development (USDT TRC-20): TDVbEdnpgNgoAhNcn1EwXxWHiR3RKLit5P (Verify on TronScan)

A high-performance, open-source, 100% private alternative to Microsoft Windows Recall.
Engineered with pure C99/SIMD, native Win32 capture, and zero cloud telemetry. Search anything you saw on your screen by natural language in milliseconds.

NanoRecall Desktop Memory & Search Dashboard

πŸ“¦ Multi-Platform Installation

Platform / Manager Installation Command
PyPI (pip) pip install nanorecall
PyPI (uv) uv add nanorecall
Conda (Conda-Forge) conda install -c conda-forge nanorecall | pixi add nanorecall
Ubuntu / Debian (APT PPA) curl -sS https://eminsk.github.io/ppa/setup.sh | sudo bash
sudo apt install python3-nanorecall
Ubuntu / Debian (.deb) sudo dpkg -i python3-nanorecall_0.1.7-1_all.deb

🧩 Universal Compatibility Matrix

Runtime / Implementation Supported Versions Execution Mode Status
CPython (Standard) 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.14, 3.15, 3.16 (Alpha) Standard bytecode + GIL βœ… Fully Supported
CPython (Free-Threaded) 3.13t, 3.14t, 3.15t Multi-core No-GIL (PEP 703) βœ… Fully Supported
PyPy (JIT Accelerated) 3.8, 3.9, 3.10, 3.11, 3.12 High-speed JIT tracing βœ… Fully Supported
Operating Systems Windows (7, 8, 10, 11), Linux, macOS (Intel & Apple Silicon) x86_64, ARM64 βœ… Fully Supported

⚑ The Problem with Microsoft Recall

Feature Microsoft Windows Recall NanoRecall (This Project)
Privacy & Cloud Unencrypted storage, telemetry risks 100% Local & Encrypted (Zero bytes leave your PC)
Hardware Lock-in Requires expensive Copilot+ PC ($1500+) with 40+ TOPS NPU Runs on any standard Intel / AMD / ARM CPU
Vector Engine Heavy proprietary runtime NanoVector (Pure C99 + AVX2, <120KB footprint)
Search Latency Variable (Cloud / NPU overhead) 0.28 ms (Sub-millisecond exact semantic search)
Password Protection Records sensitive credentials and cards Privacy Shield: Auto-ignores 1Password, Bitwarden, KeePass, Incognito
Storage Footprint Tens of gigabytes of raw frames Smart Frame Differencing: Suppresses static frames (30–60 KB/frame)
Code Footprint Gigabytes of OS bloatware <200 KB pure codebase, <25MB RAM idle, 0.1% CPU

🌟 Key Highlights

  • 100% Private & Offline: All frame embeddings and OCR snippets are stored in a single, local .nvec binary file. No accounts, no API keys, no internet required.
  • Powered by NanoVector: Directly uses NanoVector's C99 AVX2/NEON vector search engine for instant 90-microsecond semantic retrieval.
  • Intelligent Perceptual Frame Differencing: Continuously monitors your display; if the screen hasn't changed by >1.5% (reading, idle, away from desk), capture is skipped to conserve disk space and battery.
  • Bare-Metal FASM SIMD Engine: Hand-crafted AVX2+FMA and SSE2 assembly microkernels executing screen differencing in 38 ns (26M fps) and vector dot products in 11 ns (90M ops/sec).
  • Built-in Privacy Shield: Automatically detects active foreground windows and terminates recording whenever password managers (1Password, Bitwarden, KeePass), private browsing windows (Incognito, InPrivate), or crypto wallets are active.
  • Dual Interface: Instant lightning-fast terminal CLI (nanorecall search ...) and a sleek dark-mode local web dashboard (nanorecall ui).

⚑ Bare-Metal FASM SIMD Hardware Engine

NanoRecall features hand-crafted x86-64 (AVX2+FMA) and x86 32-bit (SSE2) microkernels authored directly in Flat Assembler (FASM):

Microkernel ISA / Vector Width Throughput / Latency Purpose
nanorecall_frame_diff_u8 AVX2 (vpsadbw) / SSE2 (psadbw) 38 ns / frame (26.3M fps) 32x32 grayscale screen diffing for static frame suppression
nanorecall_frame_diff_f32 AVX2+FMA / SSE2 45 ns / frame Float32 perceptual delta comparison
nanorecall_vector_dot AVX2+FMA (256-bit unrolled) 11 ns / op (90.9M ops/sec) Fast vector inner product (dim=128)
nanorecall_cosine_similarity AVX2+FMA / SSE2 14 ns / op Episodic memory vector similarity
nanorecall_hamming_dist_u64 Hardware popcnt 2 ns / hash Bitwise perceptual image hash hamming distance
nanorecall_mask_rect_rgba AVX2 (vpbroadcastd) <10 ns / region High-speed RGBA privacy bounding box screen redaction
# Verify native bare-metal hardware engine:
nanorecall info
# Or run standalone assembly benchmarks in Windows / Linux:
cd asm && build.bat

πŸ›οΈ Architecture

                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚     Windows Desktop Display    β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                     β”‚
                        (Perceptual Diffing / 0.1% CPU)
                                     β”‚
                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚    Native Win32 Screen Capture β”‚
                     β”‚  (GDI / BitBlt / DirectMemory) β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                     β”‚
                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚    Offline Text Extraction     β”‚
                     β”‚  (Windows.Media.Ocr / Local)   β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                     β”‚
                                     β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                     β”‚ Text + Embeddings             β”‚ Compressed Frame
                                     β–Ό                               β–Ό
                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚       NanoVector Core          β”‚  β”‚   Local Image Store   β”‚
                     β”‚  (C99 AVX2 + .nvec persistence)β”‚  β”‚   (WebP / 30-60 KB)   β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                     β”‚                               β”‚
                                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                     β–Ό
                                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                     β”‚     Search & Recall Engine     β”‚
                                     β”‚   (CLI + Dark-Mode Dashboard)  β”‚
                                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸš€ Interactive Google Colab Demo

Test NanoRecall interactively in your browser with zero local installation:

Open In Colab

The Interactive Colab Notebook demonstrates:

  • Backend & SIMD Detection: Verifying NanoRecall and NanoVector AVX2/NEON.
  • Privacy Shield: Live simulation blocking 1Password/Incognito windows and redacting API keys.
  • Desktop Memory & Search: Ingesting sample desktop screens and querying via natural language in <0.3 ms.
  • Single-File .nvec Persistence: Saving and restoring the entire screen memory index.
  • Colab CPU Benchmark: Benchmarking search latency (15–300 Β΅s) and QPS over 10,000 frames.

πŸš€ Quickstart

1. Installation

pip install nanorecall
# or with uv
uv add nanorecall

(Requires Python 3.9+ on Windows, Linux, or macOS)

2. Capture Your Screen

Capture and index your current desktop state:

nanorecall capture

Output:

πŸ“Έ Capturing desktop screen...
πŸ” Extracting offline OCR text...
🧠 Indexing into NanoVector (Window: Active Window)...
βœ… Indexed frame 2026-09-11_142315 (342 words, 98.4% change)

3. Natural Language Search (CLI)

Search for anything you saw hours, days, or weeks ago:

nanorecall search "github pull request sqlfluff"

Output:

πŸ” Search Query: 'github pull request sqlfluff' (1 results found in 0.28 ms)

#1 [98% Match] Google Chrome β€” sqlfluff pull request 8449 github
   πŸ•’ Captured: 2026-09-11_142315
   πŸ“ Text:     merged upstream/main to pull in CI fix and added StarRocks test cases...
   πŸ–ΌοΈ  File:     C:\Users\M_N_N\.nanorecall\frames\2026-09-11_142315.webp

4. Interactive Web Dashboard

Launch the local dark-mode dashboard with visual timeline scrubber:

nanorecall ui

Then open http://127.0.0.1:8765 in your browser.

  • Interactive daily timeline scrubber (scrub your day hour-by-hour).
  • Instant search bar with live autocomplete and semantic similarity badges.
  • Click any memory card to inspect the full-resolution screenshot with OCR highlights.

5. Background Daemon

Run NanoRecall silently in the background:

nanorecall daemon --interval 3.0

6. Model Context Protocol (MCP) Server

NanoRecall features a native Model Context Protocol (MCP) Server over JSON-RPC 2.0 stdio, exposing private desktop memory and real-time screen capture to Claude Desktop, Cursor, Windsurf, and Google Antigravity.

Quickstart

Run directly via CLI:

nanorecall mcp
# or using the dedicated entry point:
nanorecall-mcp

Client Configuration

Add to your claude_desktop_config.json, .cursor/mcp.json, or Antigravity MCP settings:

{
  "mcpServers": {
    "nanorecall": {
      "command": "nanorecall-mcp"
    }
  }
}

Or zero-install with uvx:

{
  "mcpServers": {
    "nanorecall": {
      "command": "uvx",
      "args": ["nanorecall", "mcp"]
    }
  }
}

Available MCP Tools

Tool Purpose Annotations
recall_search Semantic vector search across screen history, OCR text, and past app windows. readOnlyHint: true
recall_capture_now Capture and index current desktop screen in real-time with privacy shielding. readOnlyHint: false
recall_remember Manually persist custom text facts, notes, or preferences into episodic vector memory. readOnlyHint: false
recall_get_stats Inspect total indexed frames, vector dimension, database size in KB, and storage path. readOnlyHint: true

πŸ›‘οΈ Privacy Shield Rules

NanoRecall includes out-of-the-box protection rules. The following windows and sensitive tokens are automatically shielded from being recorded:

  • Password Managers: 1Password, Bitwarden, KeePass, KeePassXC, LastPass, Dashlane, NordPass, Enpass.
  • Private Browsing: Chrome Incognito, Edge InPrivate, Firefox Private Browsing, Tor Browser.
  • Crypto Wallets: MetaMask, Phantom, Ledger Live, Trezor Suite, Exodus, Rabby.
  • Credentials & Tokens: Credit card numbers, OpenAI API keys (sk-...), GitHub personal access tokens (ghp_...), and SSH/RSA private keys are automatically redacted.

πŸ“Š Telemetry & Benchmark

nanorecall stats
⚑ NanoRecall Engine Telemetry:
----------------------------------------
Total Indexed Frames: 1,420
Vector Dimension:     128D
Active Backend:       NanoVector (AVX2)
Local Database Size:  1.24 MB
Search Latency:       0.28 ms
Idle CPU Usage:       < 0.1%

πŸ§ͺ Testing & Verification

Run the full pytest suite covering screen capture, memory persistence, OCR pipelines, CLI commands, and privacy redaction filters:

uv run --extra dev pytest -v
# or with standard pytest
pytest -v

All 13 tests pass with 100% success rate across Python 3.8 through 3.16 (including No-GIL free-threaded 3.13t–3.16t) and PyPy 3.8 through 3.12.


🌐 High-Performance Systems Ecosystem

nanorecall is developed by @eminsk as part of an open-source AI & systems engineering ecosystem:

  • ⚑ NanoVector β€” Bare-metal C99/AVX2 vector search & episodic memory engine (~120KB) with Native MCP Server (pip install nanovector).
  • 🧠 AgentJIT β€” Just-In-Time Compiler for AI Agent Trajectories with speculative de-optimization guards (pip install agentjit).
  • ⚑ NanoGEMM β€” Bare-metal AVX2+FMA SIMD matrix multiplication engine in ~100KB for sub-microsecond CPU inference (pip install nanogemm).
  • πŸ›’ avito-sdk β€” Headless Avito scraping & data extraction SDK with price drop tracking, Playwright cookies, Telegram/VK bots, and Native MCP Server (pip install avito-sdk).
  • πŸ“Š xlsx_vievers β€” Headless Excel formula engine (129+ functions), desktop spreadsheet viewer, SIMD SSE2 math, and Native MCP Server (pip install xlsx-viewer-pro).
  • πŸ“ˆ yfinance-ta-patterns β€” Candlestick & chart pattern scanner with AI Confluence Scoring, Backtesting, and Native MCP Server (pip install yfinance-ta-patterns).

🀝 Contributing

Contributions are warmly welcomed! Please submit issues or pull requests to improve OCR backends, UI features, or compression optimizations.


β˜• Support, Community & Donations

If you find this project valuable and would like to support ongoing development:

  • ⭐ Star the Repository: If NanoRecall helps you effortlessly search and recall your screen memory, give us a star on GitHub β€” it helps more developers discover private desktop memory!
  • πŸ’¬ Join Discussions: Have ideas, use cases, or OCR models to suggest? Start or join a thread in GitHub Discussions!
  • β˜• Donate (USDT TRC-20):
    TDVbEdnpgNgoAhNcn1EwXxWHiR3RKLit5P
    (Network: TRON / TRC-20 | Verify on TronScan)

GitHub Repo stars GitHub Discussions Donate USDT


πŸ“œ License

Distributed under the MIT License. Created by eminsk.

About

100% Private, Zero-Cloud, Bare-Metal Desktop Memory & Screen Search Engine, Native MCP Server (nanorecall-mcp).

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages