obsidian-kb/ofm-guide

Guide for creating and editing Obsidian notes using Obsidian Flavored Markdown (OFM). Covers wikilinks, embeds, callouts, YAML properties, and knowledge organization best practices.

1,592 stars

Best use case

obsidian-kb/ofm-guide is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Guide for creating and editing Obsidian notes using Obsidian Flavored Markdown (OFM). Covers wikilinks, embeds, callouts, YAML properties, and knowledge organization best practices.

Teams using obsidian-kb/ofm-guide should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/obsidian-kb/SKILL.md --create-dirs "https://raw.githubusercontent.com/openakita/openakita/main/examples/plugins/obsidian-kb/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/obsidian-kb/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How obsidian-kb/ofm-guide Compares

Feature / Agentobsidian-kb/ofm-guideStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Guide for creating and editing Obsidian notes using Obsidian Flavored Markdown (OFM). Covers wikilinks, embeds, callouts, YAML properties, and knowledge organization best practices.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Obsidian Flavored Markdown Guide

When creating or editing notes in the user's Obsidian vault, follow these conventions.

## Core Principles

1. **Ask before creating** — confirm the save location and vault structure first.
2. **Use OFM syntax** — prefer wikilinks, callouts, and embeds over standard Markdown equivalents.
3. **Atomic notes** — one concept per note, connected through links.
4. **Metadata-driven** — use YAML frontmatter for searchability and Dataview queries.

## Wikilinks

```markdown
[[Note Name]]                 # link to a note
[[Note Name|Display Text]]    # custom display text
[[Note Name#Heading]]         # link to a heading
[[Note Name#^block-id]]       # link to a block
```

- Use descriptive, unique note names. Avoid special characters: `[ ] # ^ | \`
- Prefer full note names over path-based links (Obsidian auto-resolves)

## Embeds

```markdown
![[Note Name]]                # embed entire note
![[Note Name#Heading]]        # embed a section
![[image.png]]                # embed image
![[image.png|300]]            # embed with width
```

## Callouts

```markdown
> [!note] Title
> Content here

> [!tip] Tip title
> Useful advice

> [!warning] Warning
> Important caution

> [!info]- Collapsible (collapsed by default)
> Hidden content
```

Available types: `note`, `tip`, `warning`, `important`, `info`, `abstract`, `todo`, `example`, `question`, `quote`, `bug`, `success`, `failure`, `danger`

## YAML Frontmatter

Always start notes with frontmatter properties:

```yaml
---
title: Note Title
date: 2026-03-22
tags: [topic1, topic2]
aliases: [alternate-name]
cssclass: custom-class
---
```

Key fields:
- `tags` — array format `[tag1, tag2]` preferred over inline `#tags`
- `aliases` — alternative names for linking
- `date` — ISO format YYYY-MM-DD

## Daily Notes

Format: `YYYY-MM-DD.md` in the configured daily folder.

Template:
```markdown
---
date: {{date}}
tags: [daily]
---

# {{date}}

## Tasks
- [ ] 

## Notes

## Reflection
```

## Folder Organization

Common vault structures:
- `Inbox/` — new unsorted notes
- `Projects/` — active project notes
- `Areas/` — ongoing responsibility areas
- `Resources/` — reference material
- `Archive/` — completed items
- `Daily/` — daily notes
- `Templates/` — note templates

## Best Practices

- Use `[[wikilinks]]` instead of `[text](url)` for internal links
- Add `tags` in frontmatter rather than inline `#tags` for consistency
- Create MOC (Map of Content) notes to organize related topics
- Keep file names concise but descriptive
- Use callouts for important information rather than bold/italic

Related Skills

platform-guide

1592
from openakita/openakita

OpenAkita Platform guide for searching and installing Agents from Agent Hub and Skills from Skill Store. Use when user asks to find, browse, or install Agents or Skills from the platform.

openakita/skills@obsidian-skills

1592
from openakita/openakita

Manage Obsidian vaults with full support for Obsidian Flavored Markdown — wikilinks, embeds, callouts, YAML properties, Dataview queries, Canvas, and Bases. Organize notes using MOCs (Maps of Content), atomic note principles, and consistent folder/tag taxonomies. Always ask the user where to save before creating notes.

openakita/skills@yuque-skills

1592
from openakita/openakita

Manage Yuque (语雀) knowledge bases, documents, and team collaboration through API integration. Supports personal search, weekly reports, knowledge base management, document CRUD, and group collaboration workflows. Based on yuque/yuque-skills.

openakita/skills@youtube-summarizer

1592
from openakita/openakita

Summarize YouTube videos by extracting transcripts and generating structured notes. Use when the user wants to summarize a YouTube video, extract key points from a talk, create study notes from a lecture, or get timestamps for important moments. Supports multiple URL formats and languages.

openakita/skills@xlsx

1592
from openakita/openakita

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.

openakita/skills@xiaohongshu-creator

1592
from openakita/openakita

Create engaging Xiaohongshu (RED/小红书) content including titles, body text, hashtags, and image style recommendations. Supports multiple content types such as product reviews, tutorials, lifestyle sharing, and shopping guides with platform-specific optimization.

openakita/skills@wechat-article

1592
from openakita/openakita

Create and format WeChat Official Account (公众号) articles with proper Markdown-to-WeChat HTML conversion, rich formatting, cover image guidance, and both API and manual publishing workflows.

openakita/skills@webapp-testing

1592
from openakita/openakita

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

openakita/skills@web-artifacts-builder

1592
from openakita/openakita

Suite of tools for creating elaborate, multi-component interactive HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

openakita/skills@video-downloader

1592
from openakita/openakita

Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.

openakita/skills@translate-pdf

1592
from openakita/openakita

Translate PDF documents while preserving original layout, styling, tables, images, and formatting. Supports Simplified Chinese, Traditional Chinese, English, Japanese, Korean, and more. Page-by-page translation with structure preservation.

openakita/skills@todoist-task

1592
from openakita/openakita

Manage Todoist tasks, projects, sections, labels, and filters via REST API v2. Supports task CRUD, due dates, priorities, recurring tasks, project organization, and advanced filtering. Based on doggy8088/agent-skills/todoist-api, using curl + jq.