Locus
A native Windows productivity tool that merges a four-stage task board with automatic, OS-level focus tracking. It tells you whether the work you planned matched the application you were actually in, with no manual input.
Most task tools track intent. Most time trackers record raw clock time. Locus is the one that checks the two matched.
A board and a focus tracker in the same window
Work moves through four fixed stages. Above it, Focus History ranks the applications that actually held your attention across today, yesterday, this week or this month. Claude Code activity flows onto the board live, marked with an amber left border.
Plan
Execute
Check
Done
For people who want to see the gap close
Locus is a small, local productivity tool for Windows. It suits people who plan work deliberately and want an honest, automatic record of where their attention actually went.
It is for you if
- You are on Windows 10 or 11 and want a task board plus focus tracking in one native window.
- You want to know whether logged time matched real attention: editor versus Discord, deep work versus drift.
- You use Claude Code and want your session's edits, tests and builds to populate the board automatically.
- You want your data local and yours: SQLite on disk, no telemetry, no cloud, no accounts.
It is not for you if
- You are on macOS or Linux. Focus tracking uses Win32 APIs, so Locus is Windows-only.
- You want a team board with sync and sharing. Locus is single-user and offline by design.
- You want flexible custom columns. The four stages are fixed; only their labels are renameable.
- You are uncomfortable with a tool that watches foreground focus, even though it never leaves your machine.
Four fixed stages, tasks that are units of execution
Stages have stable internal IDs and renameable labels. Tasks carry a status (Not Started, In Progress, Blocked, Complete) and are timed at the task level, with only one session active at a time.
Plan
Scope the work before you start it. Research and shaping live here.
Execute
Active units of work. Sessions time attention against the task you pinned at start.
Check
Verify what was built. Test runs from Claude Code land here automatically.
Done
Completed work. A named snapshot is saved automatically at session end.
Your session builds the board as you work
Hook scripts and a skill file are installed and removed automatically by the installer. Each meaningful tool call appears as a board card with an amber left border, routed to the right stage and moved to Done when it succeeds. Trivial commands are filtered out.
Edits start at Execute
Edit, Write and NotebookEdit tool calls appear at Execute, labelled by filename.
Tests start at Check
Bash calls with test keywords (go test, pytest, jest) route to Check; other meaningful commands go to Execute.
Success moves to Done
On a successful command the card moves to Done. On failure it stays in place, so what stalled stays visible.
Noise is dropped
Trivial commands like cd, ls and cat are filtered. Compound commands strip the trivial prefix first.
Native tracking, no external tools
Locus reads foreground focus through the Windows
GetForegroundWindow and QueryFullProcessImageNameW
APIs, polling every 500ms into the same SQLite database as your tasks.
Focus data is available from first launch.
Real app names
Resolved from Windows PE version info, falling back to product name then the executable stem. No hardcoded mappings.
Idle-aware
Gaps over five minutes are detected and subtracted from deep-work time, so idle does not count as focus.
System noise filtered
Processes under C:\Windows\ are excluded automatically, leaving the applications you chose to open.
Four time windows
Today, Yesterday, This Week (ISO) and This Month, ranked by total focus time with today refreshing every two seconds.
One command to build, install and launch
Locus is a Go and Wails application. The installer
builds it, installs to %LOCALAPPDATA%\locus\, registers
auto-start on login and launches it, all per-user with no administrator
rights.
Prerequisites
Go 1.21+, Node.js 20+ and Windows 10 or 11. WebView2 ships with Windows 11; on Windows 10 install it from Microsoft. The Wails CLI is installed for you if missing.
Install
Run .\install.ps1 from the project root. It builds the single locus.exe, installs it, sets up Claude Code hooks and the skill, and launches.
Restart Claude CLI
Restart Claude Code so the hooks take effect. Then run /go locus at the start of a session to load the skill context.
Uninstall any time
.\uninstall.ps1 stops the app, removes the startup key and deletes the install directory. Your board data is kept. Add -PurgeData to remove it too.
# One-shot install: build, install, auto-start, launch git clone https://github.com/oernster/locus cd locus .\install.ps1 # Or a development build with hot reload go install github.com/wailsapp/wails/v2/cmd/wails@latest cd frontend && npm install && cd .. wails dev # Production build (outputs build\bin\locus.exe) wails build
Locus