Guide

Migrate an Obsidian vault to OKF and keep using Obsidian

An Obsidian vault is already a folder of markdown with frontmatter, so migrating it to OKF means adding a few frontmatter fields and switching wikilinks to standard markdown links. Your notes stay plain files, and Obsidian keeps opening them. Knowtarium, an end-to-end encrypted knowledge base, includes a free skill that does the migration for you, and imports the result into a workspace.

By Fadel Kaadan · Updated

What changes and what doesn't

You can migrate an Obsidian vault to OKF without leaving Obsidian. An Obsidian vault is a folder of markdown files with YAML properties at the top. An OKF bundle is a folder of markdown files with YAML frontmatter at the top. The Open Knowledge Format, an open specification published by Google Cloud, adds a few fields that record what a document is, who wrote it, who checked it and when it goes stale. Those fields are what Knowtarium reads to show you who wrote every note (and, in folders with review on, who checked it). So the migration is small:

Part of your vaultAfter the migration
Your notesStill .md files in the same folders. Your writing isn't touched.
Your own propertiesKept exactly as written. OKF allows any extra keys and asks tools to preserve them.
FrontmatterGains type, the only required OKF field, plus who wrote the note (generated) and when it goes stale (stale_after).
WikilinksBecome standard markdown links. Obsidian supports both formats, so they keep working, and now every other tool can follow them too.
AttachmentsStay where they are. Images and PDFs aren't documents in OKF, which only covers .md files, so they keep their folder and their names. Embeds such as ![[diagram.png]] become standard markdown image links, which Obsidian and every other tool render.
Your Obsidian settingsObsidian keeps them in the .obsidian folder, which isn't markdown and isn't part of the format.
An indexA new index.md lists what the bundle holds, so agents can find their way without reading everything.

One thing looks different in Obsidian afterwards. Its properties view doesn't support nested properties, and generated and verified are nested, so read those in source mode. The note itself opens as before.

In Knowtarium

Knowtarium shows frontmatter as properties at the top of the note, not raw YAML, including who wrote the note (and, in folders with review on, who checked it), when it expires and where it came from. Your own properties stay exactly as written.

Before you start

Any migration that touches every file deserves an undo button. The migration skill writes a converted copy and never changes the vault, but if you migrate by hand you edit the files themselves. If your vault isn't in git yet, put it there and commit, so you can see exactly what changed and roll it back:

terminal
# notes that use a name OKF reserves

The last command matters. In OKF, index.md and log.md are reserved names at every level: index.md lists a folder's contents and log.md records changes. The migration skill renames notes with those names to index-note.md and log-note.md and updates the links to them. If you migrate by hand, rename them in Obsidian first: with "Automatically update internal links" turned on under Settings, Files and links, Obsidian updates the links for you.

If you sync your vault, let the sync finish before you start, and pause edits on other devices.

Migrate with the free migration skill

Knowtarium includes a free migration skill that does the conversion for you. It's free for everyone and needs no account. Your agent, such as Claude Code, Codex or Cursor, runs it with the free knowtarium command line tool, which reads your vault and writes the converted copy to a new folder. The vault itself is never changed, and your writing is left untouched:

  1. It adds the OKF fields each note lacks: a type, a title, a description (the note's first paragraph) and who wrote it (you, at the time of the migration). It leaves stale_after unset, so nothing is flagged stale on day one; you add expiry dates to the notes where they matter.
  2. It turns wikilinks and embeds into standard markdown links, so every tool can follow them. Attachments stay where they are.
  3. It keeps your own properties exactly as they are, and writes an index.md in every folder. If your vault already has notes called index.md or log.md, it renames them to index-note.md and log-note.md and updates the links.
  4. You import the copy into a Knowtarium workspace, as a folder or a zip. (The import also converts an Obsidian vault the same way on its own, if you'd rather skip the skill.)

Because the copy sits next to the original, you can read the whole migration as one diff. git diff --no-index --stat with the two folders should show changes in the frontmatter and the links, the new index.md files, a root log.md, the conversion report (.knowtarium/conversion-report.md) and any notes renamed to index-note.md or log-note.md, and nothing else. If a paragraph you wrote shows up as changed, look at it before you keep it.

Migrate an Obsidian vault to OKF by hand

You don't need any tool to do this. OKF is plain frontmatter, and a small vault takes an afternoon. Here's a note before and after:

pricing.md, before
---
tags: [pricing, sales]
aliases: [Plans]
owner: maya
---
Pro is €14 a month since September. See [[Annual plans]].
pricing.md, after
---
type: Note
tags: [pricing, sales]
aliases: [Plans]
owner: maya # your own keys stay
generated: { by: human:maya, at: 2026-03-02T10:00:00Z }
stale_after: 2027-03-01T00:00:00Z
---
Pro is €14 a month since September. See [Annual plans](Annual%20plans.md).

1. Add a type to every note

type is the only required field. OKF has no fixed list of types, so pick a few descriptive ones that match how you already think: Note, Meeting, Person, Decision, Reference. A note with only a type is already valid OKF.

In Knowtarium

You can migrate in stages. Knowtarium imports any bundle: missing fields, unknown types and broken links never make a document unreadable, so a half-migrated vault still opens and shows what's there.

2. Record who wrote it

Add generated with an actor and a time. For notes you wrote, use human: and your name. For notes an AI wrote, use the tool and its version, like claude-code/2.1. Times are ISO 8601 with a UTC offset, such as 2026-03-02T10:00:00Z. If you don't know the exact time, the file's date is a fair estimate.

For notes you wrote and still stand behind, add yourself to verified with the same time. Leave verified out of notes an AI wrote until you've reread them.

3. Say when it goes stale

Add stale_after to notes that expire: prices, plans, anything with "currently" in it. Evergreen notes can go without it.

4. Switch to markdown links

In Obsidian, open Settings, then Files and links, turn off "Use [[Wikilinks]]", and set "New link format" to "Relative path to file". New links are then standard markdown. Existing wikilinks need converting, by hand or by asking an agent. In markdown links, spaces in file names are written as %20.

In Knowtarium

A link to a note that doesn't exist isn't an error in OKF. Knowtarium draws it as a ghost in the graph, so a link that broke during conversion is easy to spot.

Knowtarium's graph coloured by freshness: two stale notes, two going stale soon, five fresh, and ghost links to Competitors and Incident log, notes nobody has written yet (opens full size in a new tab)Knowtarium's graph coloured by freshness: two stale notes, two going stale soon, five fresh, and ghost links to Competitors and Incident log, notes nobody has written yet (opens full size in a new tab)
A demo workspace's graph: Competitors and Incident log are ghosts, linked but not written yet. Select it to open it full size.

5. Write an index

Add an index.md at the root, and in any folder where it helps. It has no frontmatter, just headings and a line per document with a short description:

index.md
# Pricing
* [Pricing](pricing.md) - current plans and prices
* [Annual plans](Annual%20plans.md) - why we moved to yearly billing
# Customers
* [Interviews](customers/interviews/) - one note per customer call

A log.md of changes, newest first under YYYY-MM-DD headings, is optional.

Import the migrated vault into Knowtarium

Whether the skill did the work or you did it by hand, the result is an OKF bundle, and Knowtarium imports it as one into a workspace, from a folder or a zip. A report comes first, with the storage it needs; then every note is encrypted on your device and uploaded, so we can't read any of it (the agents you connect see what they read).

Importing an Obsidian vault into Knowtarium: 28 notes in 6 folders, 47 wikilinks rewritten as markdown links, and two links to notes that don't exist kept as written (opens full size in a new tab)Importing an Obsidian vault into Knowtarium: 28 notes in 6 folders, 47 wikilinks rewritten as markdown links, and two links to notes that don't exist kept as written (opens full size in a new tab)
The report before anything is uploaded. This demo vault wasn't migrated first, so the import converts it on the way in: wikilinks rewritten, and links to missing notes kept as written. Select it to open it full size.

From then on, this is what you see:

  • Who wrote every note, read from generated. In folders with review on, verified also shows who checked it: human-reviewed, or unverified until someone checks it. Notes past stale_after are listed on the Stale and expiring page.
  • A graph of your links. It shows what's gone stale, and with review on, it can colour notes by trust tier. Links to notes nobody has written yet are ghosts.
  • Every change signed and undoable. An agent's change is saved at once, signed with its own key, marked on the note and one Undo away. Turn on review for a folder, and agents' changes there wait for your approval instead.
  • Search and history. Full-text search across the workspace, run in your browser, and every version kept with the signed change that made it, for as long as you choose.

Your agents connect with and work on the notes over MCP. In folders with review on, when you change a note you can ask your agent to check it against everything connected. Knowtarium doesn't call an AI itself, it keeps your custom properties, comments and formatting as they are, and you can export a workspace or a folder as plain markdown whenever you like.

Knowtarium is an end-to-end encrypted web app. For a side-by-side of what each app is for, see Knowtarium vs Obsidian.

Keep using Obsidian on the same folder

After the migration the new folder is still a vault: the skill copies your Obsidian settings next to the bundle, so Obsidian opens it the same way, and you can keep using Obsidian there. If you also import it into Knowtarium, the workspace holds its own encrypted copy, and the two don't sync with each other: decide where you edit, and export from Knowtarium as plain markdown when you want the files back. A few habits keep the bundle clean:

  • Start new notes in the format. If you create notes from a template, give it a type and a signature, with the values quoted, so Obsidian's properties panel doesn't overwrite the variables:
templates/okf-note.md
---
type: Note
generated: { by: "human:maya", at: "{{date:YYYY-MM-DDTHH:mm:ssZ}}" }
---
  • Stick to markdown links. If you turn wikilinks back on, new links won't be readable by other tools. Obsidian-only syntax, such as embeds and callouts, may not show the same way elsewhere.
  • Sync stays yours. Knowtarium keeps a workspace in step across your browsers, not with the folder on disk, and there's no phone app yet. Keep whatever already syncs the vault folder; the files are plain markdown, so git works alongside.

After the migration

With provenance in place, the vault is ready for agents that write alongside you:

Questions

Can I keep using Obsidian after migrating to OKF?

Yes. The converted notes are plain markdown files, the skill copies your Obsidian settings so Obsidian opens the new folder the same way, and Obsidian supports standard markdown links. The new frontmatter fields are ordinary YAML. Nested ones like generated are easiest to read in Obsidian's source mode.

Will the migration change what I wrote?

It shouldn't. The migration adds frontmatter fields and converts wikilinks to markdown links. The skill writes a converted copy and never changes the vault, so you can compare the two folders as one diff with git diff --no-index. If you migrate by hand, commit the vault to git first, so you can undo anything else that changed.

What happens to my custom properties?

They stay exactly as you wrote them. OKF allows any extra keys and asks tools to preserve keys they don't recognise.

Do I need the migration skill?

No. You can add the fields yourself: a type on every note, generated for who wrote it, stale_after for notes that expire, markdown links instead of wikilinks, and an index.md. The skill does the same work for you, and Knowtarium's import converts an Obsidian vault on the way in.

What do I see when I open the migrated vault in Knowtarium?

Every note with who wrote it (and, in folders with review on, who checked it, with the graph coloured by trust tier), the notes past their date on the Stale and expiring page, and every later change signed and undoable. You import the vault into a workspace as a folder or a zip, and it's encrypted on your device before it's uploaded.

What is an OKF bundle?

A folder of markdown files with YAML frontmatter, one concept per file. The only required field is type. Optional fields record sources, who wrote and checked each document, and when it goes stale.