obsidian-ontology-sync

Extract entities and relationships from Markdown notes into a jsonl knowledge graph.

2|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/augustscl/awesome-xiawang-skills --skill obsidian-ontology-sync-augustscl
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: obsidian-ontology-sync
Source: https://github.com/augustscl/awesome-xiawang-skills/tree/main/obsidian-ontology-sync-1.0.1
Command: npx skills add https://github.com/augustscl/awesome-xiawang-skills --skill obsidian-ontology-sync-augustscl

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pyyaml, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Bidirectional synchronization between Obsidian notes and a structured ontology, enabling automatic extraction of entities and relationships to keep both human-readable notes and machine-queryable graphs in sync.

Core Features & Use Cases

  • Extracts entities (Person, Organization, Project) and relationships (works_at, assigned_to, met_at) from Markdown notes.
  • Builds and updates a machine-readable ontology (graph.jsonl) with upsert and relate operations.
  • Provides analysis and feedback to improve PKM templates and note organization, with cron-based scheduling.

Quick Start

Install dependencies, initialize the config, run a dry-run extraction, then enable cron-based automatic syncing.

Frequently Asked Questions about obsidian-ontology-sync

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract entities and relationships from Obsidian Markdown notes into a knowledge graph?

To build a knowledge graph from Obsidian notes, this Skill extracts entities like Person, Organization, and Project, plus relationships like works_at or assigned_to, writing the structured data into a machine-queryable graph.jsonl file via upsert and relate operations.

How does Markdown to ontology synchronization work for personal knowledge management?

Synchronization works by applying a YAML-configured workflow that parses Markdown notes, upserts extracted entities, creates relations, and outputs a machine-queryable graph.jsonl. This keeps your human-readable Obsidian notes and structured ontology consistently aligned.

Can I automate Obsidian knowledge graph extraction on a regular schedule?

Yes, you can automate Obsidian knowledge graph extraction using cron-based scheduling. This enables regular, hands-off synchronization to keep your ontology up to date with your latest Markdown notes for continuous personal knowledge management.

Do I need YAML configuration to extract data from Obsidian notes into a graph?

Yes, YAML configuration is required to define the extraction workflow. You initialize the config to specify how entities and relationships are parsed from Markdown notes, then run a dry-run extraction before enabling automatic syncing to the graph.jsonl file.

What is the best way to analyze and improve Obsidian note structure based on extracted data?

The best way to improve Obsidian note structure is to use analysis and feedback generated from your extracted ontology data. By evaluating the machine-queryable graph, you can identify gaps and refine your PKM templates and overall note organization.

What are the limitations of synchronizing Obsidian notes with a structured ontology?

Synchronizing Obsidian notes with a structured ontology depends on consistent Markdown formatting to accurately extract entities and relationships. Complex or unstructured notes may limit the effectiveness of building a machine-queryable knowledge graph.