A list of app sessions is honest, but it isn't insight. Eight hours of recorded activity can mean a day of deep work or a day of frantic tab-hopping, and the raw log looks almost the same in both cases. The Focus Quality Score exists to make that difference visible.
The inputs
The score is computed from the same local session data Kshan already collects — nothing extra is recorded for it. Two signals go in:
- Focus ratio. Each session's category rolls up into a functional group, and time in deep-work groups — coding, writing, design — counts as focus time. The base score is simply the share of your active time that was focus time.
- Context switches. A switch is counted when you drop out of focused work directly into administrative or personal territory — from your editor to email, not from your editor to its documentation. The score subtracts a penalty that scales with how many of those switches you make per active hour, capped so that one chaotic stretch can't drag the whole day to zero.
A score you can argue with
Because categorization is rule-based and local, the score is inspectable. If Kshan calls a day unfocused, you can open the timeline and see exactly which blocks of time dragged it down — and if the real problem is a miscategorized app, you fix the rule and the score changes. There is no black box to appeal to.
What it's for
The score isn't a grade, and it isn't for your manager. It's a trend line for one person: you. A number you can glance at after lunch to decide whether the afternoon needs fewer tabs, and a way to notice that your focused days share a shape — and to engineer more of them.