Hindsight is an open-source Android app that allows you to record, search, and query everything you've seen on your phone.
How It Works
Hindsight takes a screenshot of your phone screen every 2 seconds.
The screenshots are uploaded to your own personal server. Currently, the server is designed to run on your personal computer and is only exposed to the local network.
The server runs OCR on the screenshots to extract text and stores the results to a local SQLite database.
On your computer, the screenshots can be searched by text, time, and application.
On your computer or phone, you can use an LLM (running on your computer) to query the screenshots using natural language.
Demos
Vision
At Hindsight, we believe technology is falling short of its promise to improve the human condition. We believe we can help redefine the relationship between people and technology by
empowering people to collect and utilize their own data. By controlling the most comprehensive dataset on ourselves, we can better harness the ever increasing power of technology and A.I. to help us achieve our goals.
It is time to flip the script on big data.
FAQ
How much battery does Hindsight use?
We are working on getting consumption stats from more users, but for a Pixel 8 it uses <4% of the battery when in "only record when user active" mode.
How much storage does Hindsight use?
It uses 12GB of storage for 21 hours of recording on a Pixel 8. However, this is storing the screenshots as individual pngs. The storage used could be greatly reduced by compressing the images into videos.
How do I start recording with Hindsight?
To start recording, simply open the app and toggle the Screen Recording on. The app will run in the background.
How do I stop recording with Hindsight?
You can pause or stop (will require broadcast permission again) the screen recording using the recording notification. Toggling Screen Recording off within the app will prevent recording from initiating when the phone wakes up, but it will not always stop an active recording.
What Permissions are required to run Hindsight?
Notification Permissions are always required. Each time the app starts recording Broadcast Permission will be requested. Accessibility Permission is required for using the "only record when user active" mode.
How can I access the screenshots and data saved by Hindsight?
The screenshots and database are both saved in a data directory within the directory running the Hindsight server. The screenshots are stored by date and then by application within each day (all in UTC).
Is my data secure with Hindsight?
Yes! As long as you are the only one with access to the PC running your server your data never leaves your local network. Within the network, the server uses an https connection to ensure the data is encrypted and cannot be intercepted. While on the phone, the screenshots are saved within the Hindsight app's data directory to ensure no malicious phone software can access the data.
Does a version of this exist for PC?
Yes! These is an open-source Mac version rem and a cross-platform version screenpipe.
Contact Us
If you have any questions about Hindsight, please feel free to reach out through the following: