CALLBACK is an open-source recreation of Microsoft's recently announced Recall feature. Recall captures screenshots of every action a user performs on their computer and saves them in a local database. This serves as a memory bank, enabling users to search and retrieve past activities to remember website names, file locations, and more. This project is in its early stages and is intended for educational purposes only.
- Screenshot Capture: Automatically captures screenshots of user actions.
- Text Extraction: Extracts text from screenshots using OCR (Optical Character Recognition).
- Tokenization: Tokenizes extracted text for efficient searching.
- Search Functionality: Allows users to search for past screenshots based on keywords.
- Local Database Storage: Saves screenshots and metadata in a local SQLite database.
- Python 3.x
- Tesseract OCR
- Required Python packages listed in
requirements.txt
-
Clone the repository:
git clone https://github.com/diegopereiracruz/Callback.git; cd Callback
-
Install required Python packages:
pip install -r requirements.txt
-
Ensure Tesseract OCR is installed and its executable path is correctly set in
callback.py
:pytesseract.pytesseract.tesseract_cmd = r'Path\\to\\tesseract.exe'
-
Run the
callback.py
script to start capturing screenshots and monitoring user actions:python callback.py
-
To search for screenshots based on keywords, run
callback_search.py
with the desired keyword:python callback_search.py
-
Capture and Process Screenshots:
# Within callback.py mouse_listener.start() keyboard_listener.start()
-
Search for Captured Screenshots:
# Within callback_search.py keyword = "python" image_paths = search_images(keyword) for path in image_paths: print(path)
- Data Security: Currently, there is no encryption for stored data. This is a significant security risk and should be addressed before using the software for any sensitive purposes.
- Performance: The script may impact system performance due to continuous screenshot capturing.
- Feature Completeness: This project is a basic implementation and lacks many advanced features that could enhance usability and functionality.
Contributions are welcome! Please fork the repository and submit pull requests.
- Microsoft for the concept of Recall.
- The open-source community for providing the tools and libraries used in this project.