Ambient Context: Local Text-Based Activity Logging for LLM Memory
Ambient Context 是一款專為 macOS 設計的應用程式,旨在建立使用者數位活動的持久性書面記錄,作為大型語言模型 (LLM) 的長期記憶。與依賴螢幕截圖或影片的傳統活動追蹤器不同,Ambient Context 利用 macOS accessibility tree 直接從目前聚焦的視窗中提取文字,並將數據儲存為本地 Markdown 檔案。
Local-First Architecture and Privacy
Ambient Context 遵循嚴格的「本地優先」隱私模型,以確保敏感的使用者數據絕不會離開機器。該應用程式不需要帳號,不使用伺服器,也不包含任何內建模型或遙測數據。
關鍵的隱私保護措施包括:
- Focused Window Only: 應用程式僅讀取目前聚焦的視窗;它會忽略背景、最小化或螢幕外的視窗,並在螢幕鎖定時停止運作。
- Automatic Redaction: 密碼管理員和私密瀏覽視窗會被排除在擷取範圍之外。安全輸入欄位會在 accessibility level 進行跳過,且應用程式在寫入磁碟前會清除憑證、API keys 和信用卡號碼。
- User-Owned Data: 所有記錄都以純 Markdown 檔案的形式儲存在使用者選擇的資料夾中,方便進行 grep 搜尋、手動刪除或遷移。
Technical Implementation via Accessibility API
Ambient Context 並非對螢幕截圖使用光學字元辨識 (OCR),而是利用 macOS accessibility API 來每隔幾秒鐘讀取一次目前聚焦視窗的文字。這種方法能將儲存開銷降至最低,並避免與影像擷取相關的隱私風險。
Compatibility and Limitations
由於該應用程式依賴 accessibility tree,其有效性會因應用程式而異:
- Chromium and Electron Apps: 像 Chrome、Slack、VS Code 和 Obsidian 等應用程式僅在收到請求時才會建立其 accessibility tree。這可能導致初始擷取內容較「薄」,並在幾秒鐘內逐漸填滿。Chrome 在擷取期間也可能出現輕微的視窗縮放動畫。
- Terminals: 像 Kitty 和 Alacritty 等 GPU 渲染的終端機幾乎無法透過此 API 提供文字。標準工具如 Terminal.app 和 iTerm2 則獲得完全支援。
- System Requirements: 應用程式需要在 Apple Silicon 上的 macOS 14+\n
LLM-Optimized Data Format
擷取的數據經過特別結構化,以便讓 AI agent (例如 Claude Code) 讀取並回答有關過去工作內容或自動化狀態報告的問題。
每一天的活動都會記錄在單一的 Markdown 檔案中,具有以下特性:
- Timeline Structure: 區塊標題會根據時間、應用程式和文件標題來組織當日的活動 (例如:
## 09:41–10:05 · Chrome · Tauri tray documentation)。 - Deduplication: 無論內容出現的頻率如何,正文行內容每天只會寫入一次,以防止檔案變得太大而超出 LLM 的 context window。
- Contextual Metadata: 每個區塊都會記錄文件路徑或 URL,讓 agent 可以引用原始來源而非僅依賴片段資訊。
- Agent Guidance: 擷取資料夾中包含一個
AGENTS.md檔案,向任何讀取該目錄的 LLM 解釋數據格式。
Community Perspectives and Trade-offs
開發者之間的討論顯示,雖然使用 accessibility API 的方法非常精簡,但它在數據「流失性」方面面臨挑戰。
"The accessibility tree works for a lot of things but the more I worked on it the more stuff I found needed pixels."
一些使用者指出,許多應用程式在 accessibility 方面的「佈線」並不正確,這可能需要針對特定應用程式建立自定義設定檔 (profiles) 以實現高保真度的擷取。其他人則建議,整合結構化的數位足跡——例如 git commits、Slack 訊息和電子郵件——對於某些工作流程來說,可能比螢幕抓取 (screen scraping) 提供更可靠的替代方案。
Sources
相關
- 專案
- 專案
- Dispatch
- 專案
- Dispatch