smolbren index, the ontology is rebuilt from scratch to reflect the current state of your vault.
Note types
The specialtype frontmatter key becomes the node label for that note. For example:
blog node in the graph. Any string value is accepted as a type — project, org, repo, journal, person, or anything else you use in your vault.
Notes that do not have a type key are still fully indexed and queryable. They are reachable in graph queries using the catch-all label Note, which matches every note in the vault regardless of whether it declares a type.
Edge types
Any frontmatter key — other thantype — whose value is an Obsidian wikilink ([[...]]) or a list of wikilinks becomes a typed directed edge. The frontmatter key itself becomes the edge type (the relationship label). For example:
| From | Edge type | To |
|---|---|---|
blogs/context-engineering | for | orgs/junaid-foo |
blogs/context-engineering | mentions | projects/prism |
blogs/context-engineering | mentions | repos/smolbren |
blogs/context-engineering | derives_from | Journal/2026, June 01 |
blogs/context-engineering | derives_from | Journal/2026, June 04 |
[[...]] syntax do.
Viewing the ontology
Usesmolbren types to see all note types and their counts:
smolbren edges to see all edge types and their counts:
type key are not listed in smolbren types but are still fully indexed. Edge counts reflect all edges — both resolved and unresolved — written during the last index run.
Wikilink resolution
When smolbren encounters a wikilink value like[[projects/prism]], it attempts to resolve it to a note ID in the vault. Resolution matches against the full vault-relative path (without the .md extension) and also against bare filenames for short-form links.
If the target note does not exist in the vault, or if a bare filename matches more than one note (ambiguous), the edge is written with resolved: false. These edges are still stored and counted — they appear in the unresolved_edges field of smolbren index output — but they will not participate in graph traversals that expect the target node to exist.
The ontology is rebuilt automatically on every
smolbren index run. If you rename, add, or remove notes that are wikilink targets, re-index to update edge resolution and type counts.