A memory agent keeps state in SQLite instead of the model

A personal memory agent runs on a Mac and watches the screen throughout the day. It can also record the and system audio if enabled. Text on the screen is read with OCR, spoken audio is turned into text, and the result becomes structured Markdown inside an .

The goal is to capture small decisions, work context, and passing details that people usually fail to write down. The main record does not live in the note app or inside the AI model. SQLite is the for identity, duplicate cleanup, search, cost tracking, and rules.

Obsidian daily notes, timeline writing, and pages for people, projects, and topics are only generated views that can be rebuilt from the database. Data stays on the local machine unless the owner connects an external model with their own API key.

Key points

  • The agent watches a Mac screen all day and can optionally capture and system audio.
  • OCR and turn screen text and speech into structured Markdown.
  • SQLite stores the real memory state, while Obsidian pages are rebuilt outputs.
  • Search, duplicate handling, cost tracking, and are managed in the database layer.
  • Nothing leaves the machine unless the owner adds an API key for an external model.
Read original