ICOR for Life - Focus
approvedby Paperless Movement S.L.
See where your attention actually goes: you sit in the center of the map, today's work orbits close, older work ripples outward, and every entity type keeps its own color and shape. Part of the ICOR for Life suite. - This plugin has not been manually reviewed by Obsidian staff.
ICOR for Life - Focus
See where your attention actually went.
You sit at the center. Everything you worked on today orbits close, older work ripples outward ring by ring, and the question "what am I actually working on?" answers itself in one look.
Part of the ICOR for Life suite.
What it is for
A graph view shows you the shape of your vault. That is interesting once and then never again, because the shape barely changes.
This shows you something that changes every day: where your attention has been going. A project drifting toward the outer rings is real information. So is a Topic you swore you were exploring sitting three rings out, untouched since last month.
Use it at the start of a week to see what you actually did last week, rather than what you remember doing.
Getting started
Click FOCUS under the ICOR for Life banner in the file tree, or run Open the Focus map from the command palette.
There is nothing to set up and nothing to configure. The map draws itself from what is already in your vault.
Reading the map
- Distance is recency. The closest ring is today; each ring out is older. Busy days draw wide rings, quiet days thin ones.
- Size is intensity. A note you touched repeatedly is bigger than one you opened once.
- Colour is kind. Key Elements, Projects, Topics, Habits, Goals and Contacts each keep their own colour and shape; everything else stays neutral so it does not compete.
- The same day always draws the same map. Position is computed from what happened, not from a layout algorithm looking for a pleasing arrangement. If something moved, something changed.
Toggle between everything and entities only, switch the range between 7, 14 and 30 days, drag nodes, pan, zoom, and click any node to open the note.
The list beside the map
The map shows you the shape. The list beside it names the notes: highest score first, with the score and the day each one was last touched. Click a row, or tab to it and press Enter, and the note opens in a new tab.
It is headed Attention (Focus score) on purpose. If you also run a script that counts how often you wrote about something in your journal, that is a different number measuring a different thing. Both are useful; neither is the other.
The list shows ten notes by default. Settings change that, and can hide the list altogether.
What it counts
Four things, all of them already in your vault or on your machine:
- Edits, so work the AI team did on your behalf counts too.
- Mentions in daily notes, dated by the day of the note.
- Backlinks, so a note edited today pulls what it links to along with it.
- Opens, logged on this device only and pruned after 35 days.
Count file edits in settings turns the first one off. Turn it off if scripts rewrite many notes in your vault at once: one bulk pass stamps the same edit time on hundreds of files, and the score then measures the script rather than you. It is on by default, so nothing changes unless you say so. Backlinks are still dated by the day their source file was edited, because that is the only date a link has.
Machine layer
Every time the map recomputes, Focus writes what it computed to
.icor-for-life/icor-for-life-focus/attention.json, so a script, the AI
chat or another plugin can read the same ranking instead of guessing at it.
The folder is hidden, nothing in it is a note, and deleting it loses
nothing: the next recompute writes the file again.
{
"schema": 1,
"generated_at": "2026-09-15T10:00:00.000Z",
"window_days": 7,
"count_file_edits": true,
"items": [
{
"path": "04 Inner World/My Life/Topics/knowledge-management.md",
"name": "knowledge-management",
"type": "topic",
"score": 8.25,
"last_seen": "2026-09-15",
"signals": { "edits": 2, "mentions": 3, "backlinks": 1, "opens": 2.25 }
}
]
}
schemais an integer. Check it before you trust a field; this document describes1.generated_atis the instant of the recompute, in UTC.window_daysis the range the map was showing: today plus that many days.count_file_editssays whether the edit signal was counted, because the same vault scores differently with it off.itemscarries every note in the window, highest score first, not just the ones the list shows. Ties break on the more recently seen note, then on the path, so the order is the same on two machines with the same vault.last_seenis a local day,YYYY-MM-DD: the day of the most recent thing that counted.signalssplits the score by what paid for it, and the four numbers add up toscore.
The file is per device. Obsidian Sync skips folders whose name starts with a dot, so each machine writes its own, which is right: the opens half of the score is that machine's anyway.
What it touches
- Reads your notes and their links to build the map.
- Writes one small local log of which notes you opened, on this device, pruned after 35 days. It never leaves your machine.
- Writes one small JSON file under
.icor-for-life/icor-for-life-focus/with the ranking it just computed. See "Machine layer" above. It writes nowhere else, and it never touches your notes.
It makes no network connection and starts no process.
Good to know
- It only renders what the signals say. An empty-looking map means a quiet period, not a broken plugin.
- Beta. In daily use in a real vault, and you will find rough edges. If something looks off, open an issue.
Support
Open an issue on this repository. For security problems, see SECURITY.md.
Licence
Source-available, see LICENSE. Not open source. Bundled third-party
components: see THIRD-PARTY-NOTICES.md.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.