How I work · PKM & AI

Notes are the hub. Agents do the legwork.

I keep one Markdown vault in Git, with a daily journal at its centre. AI agents read from it, work in small, reviewable steps, and write what they learn back. Here is the setup and why it looks the way it does.

A forest track covered with fallen leaves, running between tall conifers towards the light.
A forest track in winter. Photo: Ben Matheja

The loop

The loop

From capture to published note Capture flows into the daily journal, the hub. The journal links into the PARA vault with OKF frontmatter. A main agent session plans from the vault and hands focused tasks to minions, which open merge requests. Results flow back into the journal; notes marked publish go to matheja.me after a deny-list check. Capturephone, desktop, clips Daily journalthe hub PARA vaultOKF frontmatter Main sessionplans, reviews Minionsone MR each results flow back matheja.me planned: publish flag + deny-list From capture to published note Capture, daily journal, PARA vault, main session, minions, in that order. Results flow back into the journal; notes marked publish go to matheja.me after a deny-list check. Capture Daily journal: the hub PARA vault + OKF Main session Minions: one MR each matheja.me planned: only notes with a publish flag, after the deny-list check

One vault, in Git

Everything lives in a single Obsidian vault of plain Markdown, organised with PARA: projects, areas, resources, archive. It syncs through Git only. On the phone, an iOS Shortcut pulls when Obsidian opens and commits when it closes, so conflicts became rare instead of weekly.

I write in whichever language the thought arrives in. Roughly half the vault is German, half English, and that is fine for me and for the agents.

The daily journal is the hub

Every day gets one note. It links to the projects I touched, the decisions I made and the notes that changed. Agents start their work there, so they see what I see. Anything worth keeping moves out into a permanent note, and the journal shrinks to a short index of the day.

One TODO.md, run like GTD

Every task I have lives in a single TODO.md at the root of the vault, grouped by area: house, family, homelab, travel, taxes. There is no second list and no task app; I dropped Todoist when this one started to work. Each daily journal shows the open tasks through a Dataview query rather than a copy, so there is one list and many views of it.

The rules come from Getting Things Done, kept small. Everything is captured first, in the journal's inbox, and then clarified into a next action. A task is one scannable line that says what to do and where to look, never how: anything that needs more than a sentence becomes a project note or a sub-bullet, and the checkbox links to it. Agents follow the same rules. They add tasks when they find work, tick them off when they finish it, and never leave a task buried in a journal.

What I do not do yet is the part GTD rests on: the weekly review. The journals are there and the list is there, but nobody sits down once a week to go through both, so stale tasks pile up and the Now page lags behind. That is the next habit to build, with an agent preparing the review from the week's journals and the list, and me doing the deciding.

OKF and vk

The Open Knowledge Format gives every note a small, predictable frontmatter: type, status, tags, related notes. okf backfills it and checks it, so agents never have to guess what a note is. vk installs the same skills and templates into every vault for every agent I use, from one source.

A main session and minions

One long-running Claude Code session acts as the lead. It reads the issue, plans, and hands each focused task to a minion: a fresh agent with its own worktree, one branch and one merge request. Minions report back in a file; the main session reviews, I merge. The rule that makes this work: a minion never merges, deploys or touches another minion's branch.

A densely linked vault is great for thinking and expensive for agents: every link is a reason to read one more note. I keep agent context narrow on purpose.

My setup

Tools I use every day
ToolRoleWhy this one
ObsidianWriting and linkingPlain Markdown on disk, nothing locked in
GitSync and historyWorks on every device, every change reviewable
Claude CodeMain session and minionsStrong at planning, good at long tasks
MCP gatewayAgent access to the labOne endpoint, behind SSO
okf, vkVault hygiene and shared skillsWritten by me, for exactly this