English | 한국어
🧪 This project is still experimental. Performance and quality improvements are actively in progress — there's plenty of room to grow. Feedback, ideas, and interest are always welcome!
⚠️ Your machine needs to be in shape too. FSP runs a 12B vision model locally on every screen change — no cloud, no shortcuts. On an underpowered Mac, FSP won't just slow down; it'll slow everything down. Think of it as hiring a personal trainer who insists on doing their full warmup in your living room.
A local AI coach that watches your screen over your shoulder and quietly points out things worth noticing. It stays out of the way and speaks only when there's something helpful to say.
- Periodically looks at the screen; when it finds something worth knowing, it tells you in one sentence.
- Points at the spot on the screen it's referring to.
- Stays silent on ordinary screens. Everything runs locally — screen data never leaves your machine.
- OS: macOS only (Requires macOS to run locally utilizing native Apple Vision Framework & Quartz APIs)
- uv (Package manager and virtualenv tool)
- Ollama 0.30.5+ with the vision model
gemma4:12b - Screen Recording permission allowed for your terminal app or IDE (System Settings -> Privacy & Security -> Screen Recording)
make install # install dependencies (uv sync)
ollama pull gemma4:12b # pull the vision model
make start # run the coach (background)
make dev # run in development mode (foreground, show logs)
make start THRESHOLD=3 # more talkative
make start THRESHOLD=7 # only when it really mattersQuit with Ctrl+C (for foreground mode) or make stop (for background mode).
Runtime behavior is controlled via environment variables. Copy cp .env.example .env
and change only what you need (works with defaults if absent). See .env.example
for all options, choices, and ranges.

