• Stars
    star
    2,096
  • Rank 22,033 (Top 0.5 %)
  • Language
    Swift
  • License
    MIT License
  • Created 11 months ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An open source approach to locally record and enable searching everything you view on your Mac.

image

rem

🧠 Remember everything. (very alpha - download anyway)

Original Demo

An open source approach to locally record everything you view on your Apple Silicon computer.

Note: Only tested on Apple Silicon, but there is now an intel build


This is crazy alpha version (rem could use your help!)

Please log any bugs / issues you find!

Looking at this code and grimacing? Want to help turn this project into something awesome? Please contribute. I haven't written Swift since 2017. I'm sure you'll write better code than me.


I think the idea of recording everything you see has the potential to change how we interact with our computers, and believe it should be open source.

Also, from a privacy / security perspective, this is like... pretty scary stuff, and I want the code open so we know for certain that nothing is leaving your laptop. Even telemetry has the potential to leak private info.

This is 100% local. Please, read the code yourself.

Also, that means there is no tracking / analytics of any kind, which means I don't know you're running into bugs when you do. So please report any / all you find!

Getting Started

  • Download the latest release, or build it yourself!
  • Launch the app
  • Click the brain
  • Click "Start Remembering"
  • Grant it access to "Screen Recording" i.e. take screenshots every 2 seconds
  • Click "Open timeline" or "Cmd + Scroll Up" to open the timeline view
    • Scroll left or right to move in time
  • Click "Search" to open the search view
    • Search your history and click on a thumbnail to go there in the timeline
  • In timeline, give Live Text a second and then you can select text
  • Click "Copy Recent Context" to grab a prompt for interacting with an LLM with what you've seen recently as context
  • Click "Show Me My Data" to open a finder window where rem stores SQLite db + video recordings
  • Click "Purge All Data" to delete everything (useful if something breaks)

(that should be all that's needed)

Build it yourself

  • Clone the repo git clone --recursive -j8 https://github.com/jasonjmcghee/rem.git or run git submodule update --init --recursive after cloning
  • Open project in Xcode
  • Product > Archive
  • Distribute App
  • Custom
  • Copy App

Currently supports:

  • Going back in time (full-screen scrubber of everything you've viewed)
  • Copy text from back in time
  • Search everything you've viewed (with filter by application)
  • Easily grab recent context for use with LLMs

Things I'd love to add:

  • Natural language search / agent interaction via updating local vector embedding
  • Novel search experiences like spatial / similar images
  • More search filters (by time, etc.)
  • Fine-grained purging / trimming / selecting recording
  • Multi-monitor support

FAQ

  • Where is my data?
    • Click "Show Me My Data" in the tray / status icon menu
    • Currently it is stored in: ~/Library/Containers/today.jason.rem/Data/Library/Application Support/today.jason.rem
    • It was originally: ~/Library/Application\ Support/today.jason.rem/

(Never)AQ

  • Wow that logo is so great, you're an artist. Can I see your figma?

XCode + copy / paste from history:

Screen.Recording.2023-12-27.at.8.38.07.PM.mov

More Repositories

1

plock

From anywhere you can type, query and stream the output of an LLM or any other script
Rust
421
star
2

xrem

(Cross-Platform) An open source approach to locally record and enable searching everything you view on any computer.
Rust
203
star
3

portable-hnsw

What if an HNSW index was just a file, and you could serve it from a CDN, and search it directly in the browser?
HTML
76
star
4

little-worlds

Generate little pixelated worlds
HTML
44
star
5

viz-studio

Build visualizations live!
TypeScript
21
star
6

compute-shaders

Learning compute shaders in public, in Godot 4
C#
16
star
7

edujason

JavaScript
11
star
8

vlearn

With a few words and a click of a button, quickly get an engaging, high quality video. (And optionally save and share it!)
CSS
10
star
9

typical

TypeScript
10
star
10

hivemind

TypeScript
2
star
11

hit-the-spot

A dead simple game, made with Godot
C#
1
star
12

ragpipe

For quick rag tests
Python
1
star
13

rem-privacy-policy

Page to host on github pages that states we don't collect data
HTML
1
star
14

terrariaAI

Just playing with and attempting to improve the AI in an indie game called Terraria
C#
1
star
15

PyVagrantScripts

this is old code and a past version of the repo called vagrantWorkspace
Python
1
star
16

issueFinder

A simple way to find open source issues waiting for your contribution!
Ruby
1
star
17

LightsGame

Simple JS / CSS game with objective to turn off all the lights.
JavaScript
1
star
18

hivemindeditor

TypeScript
1
star
19

cssHelper

Simple css generator for stylizing text.
CSS
1
star
20

trackpad_haptic

Rust
1
star
21

freshmanGame

The game I made at my first hackathon.
HTML
1
star
22

vagrantWorkspace

After installing a few dependencies, (startVM.py) creates a puppet provisioned VM or lxc, with another puppet provisioned lxc within said inner layer.
Ruby
1
star