Obsidian Flavored Markdown Skill
Create and edit valid Obsidian Flavored Markdown. Obsidian extends CommonMark and GFM with wikilinks, embeds, callouts, properties, comments, and other syntax. This skill covers only Obsidian-specific extensions -- standard Markdown (headings, bold, italic, lists, quotes, code blocks, tables) is assumed knowledge.
Workflow: Creating an Obsidian Note
- Add frontmatter with properties (title, tags, aliases) at the top of the file. See PROPERTIES.md for all property types.
- Write content using standard Markdown for structure, plus Obsidian-specific syntax below.
- Link related notes using wikilinks (
<span class="broken-link" title="Page not found: Note">Note</span>) for internal vault connections, or standard Markdown links for external URLs. - Embed content from other notes, images, or PDFs using the
!<span class="broken-link" title="Page not found: embed">embed</span>syntax. See EMBEDS.md for all embed types. - Add callouts for highlighted information using
> [!type]syntax. See CALLOUTS.md for all callout types. - Verify the note renders correctly in Obsidian's reading view.
When choosing between wikilinks and Markdown links: use
<span class="broken-link" title="Page not found: wikilinks">wikilinks</span>for notes within the vault (Obsidian tracks renames automatically) and[text](url)for external URLs only.
Internal Links (Wikilinks)
<span class="broken-link" title="Page not found: Note Name">Note Name</span> Link to note
<span class="broken-link" title="Page not found: Note Name">Display Text</span> Custom display text
<span class="broken-link" title="Page not found: Note Name#Heading">Note Name#Heading</span> Link to heading
<span class="broken-link" title="Page not found: Note Name#^block-id">Note Name#^block-id</span> Link to block
<span class="broken-link" title="Page not found: #Heading in same note">#Heading in same note</span> Same-note heading link
Define a block ID by appending ^block-id to any paragraph:
This paragraph can be linked to. ^my-block-id
For lists and quotes, place the block ID on a separate line after the block:
> A quote block
^quote-id
Embeds
Prefix any wikilink with ! to embed its content inline:
!<span class="broken-link" title="Page not found: Note Name">Note Name</span> Embed full note
!<span class="broken-link" title="Page not found: Note Name#Heading">Note Name#Heading</span> Embed section
!<span class="broken-link" title="Page not found: image.png">image.png</span> Embed image
!<span class="broken-link" title="Page not found: image.png">300</span> Embed image with width
!<span class="broken-link" title="Page not found: document.pdf#page=3">document.pdf#page=3</span> Embed PDF page
See EMBEDS.md for audio, video, search embeds, and external images.
Callouts
> [!note]
> Basic callout.
> [!warning] Custom Title
> Callout with a custom title.
> [!faq]- Collapsed by default
> Foldable callout (- collapsed, + expanded).
Common types: note, tip, warning, info, example, quote, bug, danger, success, failure, question, abstract, todo.
See CALLOUTS.md for the full list with aliases, nesting, and custom CSS callouts.
Properties (Frontmatter)
---
title: My Note
date: 2024-01-15
tags:
- project
- active
aliases:
- Alternative Name
cssclasses:
- custom-class
---
Default properties: tags (searchable labels), aliases (alternative note names for link suggestions), cssclasses (CSS classes for styling).
See PROPERTIES.md for all property types, tag syntax rules, and advanced usage.
Tags
#tag Inline tag
#nested/tag Nested tag with hierarchy
Tags can contain letters, numbers (not first character), underscores, hyphens, and forward slashes. Tags can also be defined in frontmatter under the tags property.
Comments
This is visible %%but this is hidden%% text.
%%
This entire block is hidden in reading view.
%%
Obsidian-Specific Formatting
==Highlighted text== Highlight syntax
Math (LaTeX)
Inline: $e^{i\pi} + 1 = 0$
Block:
$$
\frac{a}{b} = c
$$
Diagrams (Mermaid)
```mermaid
graph TD
A[Start] --> B{Decision}
B -->|Yes| C[Do this]
B -->|No| D[Do that]
```
To link Mermaid nodes to Obsidian notes, add class NodeName internal-link;.
Footnotes
Text with a footnote[^1].
[^1]: Footnote content.
Inline footnote.^[This is inline.]
Complete Example
---
title: Project Alpha
date: 2024-01-15
tags:
- project
- active
status: in-progress
---
# Project Alpha
This project aims to <span class="broken-link" title="Page not found: improve workflow">improve workflow</span> using modern techniques.
> [!important] Key Deadline
> The first milestone is due on ==January 30th==.
## Tasks
- [x] Initial planning
- [ ] Development phase
- [ ] Backend implementation
- [ ] Frontend design
## Notes
The algorithm uses $O(n \log n)$ sorting. See <span class="broken-link" title="Page not found: Algorithm Notes#Sorting">Algorithm Notes#Sorting</span> for details.
Reviewed in <span class="broken-link" title="Page not found: Meeting Notes 2024-01-10#Decisions">Meeting Notes 2024-01-10#Decisions</span>.