lurk silently captures your work context across VS Code, Chrome, Slack, and 30+ apps — so every AI conversation starts with full context, not from zero.
You've been deep in a problem for two hours. Then you open an AI chat and have to reconstruct all of that from memory.
How It Works
lurk watches your desktop and builds a running understanding of what you're doing — automatically.
A native macOS daemon watches your desktop every 3 seconds — active app, window title, screen content via OCR.
Raw events are parsed into structured context — file names, projects, languages, conversation participants, decisions.
Activity is grouped into workstreams using a local LLM. Work across apps is connected because it's about the same thing.
When you ask for context, lurk generates a natural language prompt from the active workstream — adapted to your role.
Features
Whether you're a developer, PM, designer, or marketer — lurk adapts to what you're doing.
lurk context gives you a prompt with everything an AI needs — what you're working on, key decisions, who's involved, what's changed.
lurk doesn't just know you're in VS Code. It knows you're implementing JWT auth, decided on RS256, and Sarah approved the token policy.
A Slack conversation, a Google Doc, a code editor, and a browser tab — if they're about the same thing, lurk connects them.
Developers get file paths and diffs. PMs get stakeholder names and decision logs. Designers get Figma references. No configuration needed.
Connect directly to Claude Code, Cursor, and other AI tools. Agents get context automatically — and can feed decisions back.
Everything runs on your machine. No cloud, no accounts, no telemetry. Your data never leaves your disk.
See It In Action
$ lurk context -p
I'm working on implementing JWT authentication for the API.
Current state: The middleware is partially complete — token validation works but the refresh endpoint isn't written yet.
Key context:
- Using JWT with RS256 over session auth because the API is stateless
- Token policy: 1-hour access tokens, 30-day refresh (agreed with Sarah in Slack)
- Key files: auth/middleware.ts, server/http.ts
- Asked Claude Code to scaffold the middleware — it built token validation but skipped refresh
- Discussed token rotation approach with Gemini, decided on sliding window
People involved: Sarah Chen (API design), Mike (will review PR)
[What I need help with: ▊]
Copy to clipboard with lurk context -c — paste into any AI chat.
Privacy
lurk is 100% local. Everything runs on your machine. Nothing is sent anywhere. There is no “other copy.”
SQLite at ~/.lurk/store.db — on your disk, nowhere else.
Zero outbound connections. No cloud services, no APIs called.
No analytics, no crash reports, no usage tracking. Ever.
No sign-up, no login, no cloud dashboard. Just install and run.
MCP and HTTP servers run on localhost — not exposed to the network.
Pause, inspect, export, or delete everything. lurk purge wipes it all.
Get Started
One install, one start. lurk handles the rest — daemon, observers, everything.
# install lurk
$ pip install 'lurk[all]'
# start everything
$ lurk
# get your context — paste into any AI
$ lurk context -c
Requires macOS 13+ and Python 3.11+