Ambient Context

Werking

Wanneer het oog-icoon in je menu-balk open is, leest Ambient Context elke paar seconden de tekst van het venster dat op dat moment gefocust is (via de macOS accessibility tree). Deze tekst wordt toegevoegd aan een eenvoudig Markdown-bestand: één bestand per dag, opgeslagen in een door jou gekozen map.

Door Claude Code of een andere agent naar die map te verwijzen, kan de AI vragen beantwoorden zoals "Waar heb ik afgelopen dinsdag aan gewerkt?", geheugen opbouwen over je projecten of je stand-up rapportage voor je schrijven.

De applicatie maakt geen gebruik van screenshots of video; hij leest uitsluitend tekst via de accessibility API.

Privacy en Beveiliging

  • Lokaal: Niets verlaat je machine. Er is geen account, geen server, geen telemetrie en geen ingebouwd model. Deze build maakt helemaal geen netwerkverbindingen; de ondertekende release zal enkel een controle voor updates uitvoeren via GitHub.
  • Eigenaarschap: Je bezit de bestanden. Het betreft platte Markdown-bestanden in een door jou gekozen map. Je kunt ze verplaatsen, doorzoeken met grep of verwijderen.
  • Redactie: Voordat tekst wordt weggeschreven, vindt er redactie plaats. Wachtwoordbeheerders en privévensters van browsers worden nooit vastgelegd. Wachtwoordvelden worden bij de bron overgeslagen, en inloggegevens, API-sleutels en kaartnummers worden verwijderd voordat ze op de schijf terechtkomen.

Optimalisatie voor LLM's

De app is specifiek gebouwd om door een LLM gelezen te worden:

  • Regels worden gededupliceerd over de loop van de dag.
  • Interface-ruis wordt gefilterd.
  • Elk blok registreert het documentpad of de URL, zodat een agent het originele bestand kan openen in plaats van te vertrouwen op fragmenten.
  • In de map bevindt zich een AGENTS.md bestand waarin het formaat wordt uitgelegd aan de software die de data leest.

Systeemvereisten

De applicatie vereist macOS 14+ op Apple Silicon.

Installatie en Build

De software bevindt zich in een vroeg stadium en is nog niet ondertekend. Er is nog geen genotariseerde download beschikbaar (de aanmelding bij het Apple Developer programma is in gang), dus voorlopig moet je de app zelf bouwen. Dit duurt ongeveer twee minuten.

Benodigdheden

Je hebt Node, Rust en de Xcode Command Line Tools nodig.

Build-instructies

git clone https://github.com/dragthelake/ambient-context
cd ambient-context
npm install
npm run tauri build

De applicatie wordt geplaatst in src-tauri/target/release/bundle/macos/. Sleep Ambient Context.app naar je Applicaties-map en open deze.

Voor ontwikkeling kan npm run tauri dev worden gebruikt om de app met hot reload uit te voeren.

Eerste gebruik

Bij de eerste start opent het instellingenvenster automatisch.

  1. Toegankelijkheid: Verleen de gevraagde toegankelijkheidsrechten (Accessibility). Dit is de permissie die de app in staat stelt om venstertekst te lezen; zonder dit werkt de applicatie niet.
  2. Opslaglocatie: Kies waar de bestanden moeten worden opgeslagen. De standaardlocatie is ~/Ambient Context, bewust buiten ~/Documents geplaatst zodat iCloud de records niet van de machine synchroniseert.

Zodra de configuratie is voltooid, start de opname. Vanaf dat moment start de opname automatisch bij het openen van de app. Klik op het oog in de menu-balk om de opname te stoppen; deze status wordt onthouden tot je de opname handmatig weer start.

Interface

  • Open oog: Opname actief.
  • Gesloten oog: Opname gepauzeerd.
  • Rechtermuisknop op icoon: Directe toegang tot het bestand van vandaag, de map en de instellingen.

Bestandsstructuur

Een dagbestand ziet er als volgt uit:

---
date: 2026-08-25
captured_by: Ambient Context 0.1.0
---
## 09:41–10:05 · Chrome · Tauri tray documentation
url: https://v2.tauri.app/learn/system-tray/
<tekst gezien in dat venster, de eerste keer dat dit vandaag verscheen>

De koppen vormen de tijdlijn van de dag. Inhoudelijke regels worden slechts één keer per dag geschreven, ongeacht hoe vaak ze worden gezien, zodat het bestand klein genoeg blijft om in zijn geheel aan een LLM te worden gevoerd. In AGENTS.md wordt het formaat en de optimale leesmethode gedocumenteerd.

Notities voor testers

  • Chromium en Electron: Applicaties zoals Chrome, Slack, VS Code, Obsidian en Figma bouwen hun accessibility tree pas op wanneer daar om gevraagd wordt. Hierdoor is de eerste capture in deze apps beperkt en vullen ze zich pas bij latere doorgangen. In Chrome kan een licht glitchy animatie bij het vergroten van het venster optreden; dit is een bekend gevolg van het mechanisme.
  • Terminals: GPU-gerenderde terminals (zoals Kitty en Alacritty) tonen weinig tot geen tekst. Terminal.app en iTerm2 werken wel.
  • Feedback: Feedback over welke apps rijke, gedeeltelijke of lege data teruggeven is zeer welkom (zie docs/census.md voor het template).

Testen

Om tests uit te voeren, gebruik:

cd src-tauri && cargo test

Privacy-model

De applicatie leest uitsluitend het gefocuste venster: nooit vensters op de achtergrond, andere schermen of geminimaliseerde vensters, en nooit wanneer het scherm is vergrendeld. Wachtwoordbeheerders en privévensters worden volledig uitgesloten, beveiligde invoervelden worden op accessibility-niveau overgeslagen, en geheimen worden via pattern-scrubbing verwijderd voordat ze worden weggeschreven. Alles wat de app produceert is platte tekst op je eigen schijf, en de capture-map zelf is uitgesloten van capture zodat de app zichzelf niet kan observeren.