Screenpipe: Record and Search Everything You Do, Locally
Ever had that moment where you know you saw a specific error message, a config snippet, or a weird output in your terminal last week, but you can't remember where or when? Or maybe you're debugging a tricky issue and wish you could rewind and see exactly what you did a few hours ago. Most of us rely on memory, scattered notes, or a cluttered browser history. What if your computer could just remember for you?
That's the idea behind Screenpipe. It's an open-source, local-first tool that quietly runs in the background, recording your screen and indexing everything that happens. The real magic isn't just the recording—it's the ability to search through it all with plain English queries, instantly.
What It Does
In simple terms, Screenpipe is a private, always-on DVR for your computer. It captures your screen (with optional privacy zones), uses OCR (Optical Character Recognition) to read all the text that appears, and then makes that text searchable. You can ask it things like "show me when I was working on the login API yesterday" or "find that Docker command with port 8080," and it will pull up the exact video clip where that text was on screen.
Everything is stored locally on your machine. Nothing is sent to the cloud, which is a core part of its design philosophy.
Why It's Cool
The local-first, privacy-focused approach is the biggest win here. You're not uploading hours of your screen activity to a third-party server. It's all yours, sitting on your disk. This makes it viable for developers who work with sensitive code, proprietary data, or just value their privacy.
The search is surprisingly effective because it's not just matching filenames or browser titles—it's searching every word that has appeared on your screen. That includes terminal output, code editor text, error dialogs, and even text in fleeting notification popups. The implementation stitches together screen recording, efficient OCR (using Tesseract), and a local vector database for semantic search, which is a neat piece of engineering.
For developers, the use cases are pretty clear:
- Debugging & Context Switching: Jump back to the exact state of your terminal, IDE, and browser from hours or days ago.
- Knowledge Retrieval: Find that obscure command or configuration value you used once and forgot to bookmark.
- Meeting & Work Recaps: Easily review what was discussed or shown in a call without frantic note-taking.
How to Try It
The project is on GitHub and is actively being developed. Since it's a local tool that needs system-level permissions for screen recording, the best way to get started is to head to the repository.
- Go to the Screenpipe GitHub repo.
- Check the README for the latest installation instructions. As of now, it provides builds for macOS (with instructions for Linux coming).
- Download, install, and grant the necessary permissions (screen recording is a must).
- Let it run in the background for a bit, then open the search interface and try querying something you did recently.
It's free and open-source, so you can also poke around the code, built with Tauri for the frontend and Rust for the heavy lifting.
Final Thoughts
Screenpipe feels like one of those tools that could quietly become part of your essential workflow. It's not about surveillance or productivity policing; it's about giving your future self a better memory. The local-only aspect is what makes it trustworthy enough to actually run all the time.
As a developer, I can see this saving hours of frustrating backtracking. The setup is straightforward, and the payoff is immediate once you have a few hours of activity logged. It's a clever solution to a problem we didn't always know we had.
Found an interesting tool? Share it with us @githubprojects.
Repository: https://github.com/screenpipe/screenpipe