PluginBench
Skill
Pass
Audit score 90

obsidian-markdown

kepano/obsidian-skills

Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, and properties.

What is obsidian-markdown?

Write valid Obsidian-specific Markdown syntax including wikilinks, embeds, callouts, frontmatter properties, tags, and comments. Use this when working with .md files in Obsidian or when the user mentions internal links, embeds, callouts, or vault-specific formatting.

  • Create wikilinks and internal references with custom display text and heading/block anchors
  • Embed notes, images, PDFs, and other content inline with sizing options
  • Add callouts (note, warning, tip, etc.) with custom titles and collapsible states
  • Define frontmatter properties (title, tags, aliases, cssclasses, custom fields)
  • Use inline tags with nested hierarchy and highlight syntax
  • Insert hidden comments and LaTeX math expressions

How to install obsidian-markdown

npx skills add https://github.com/kepano/obsidian-skills --skill obsidian-markdown
Claude Code
Cursor
Windsurf
Cline

How to use obsidian-markdown

  1. 1.Add YAML frontmatter at the top with title, tags, and other properties
  2. 2.Write content using standard Markdown (headings, lists, bold, italic)
  3. 3.Create internal links using [[Note Name]] syntax for vault connections
  4. 4.Embed related content with ![[Note Name]] or ![[image.png|width]]
  5. 5.Add callouts using > [!type] syntax for highlighted information
  6. 6.Use inline tags (#tag) and block IDs (^id) for organization and linking
  7. 7.Verify the note renders correctly in Obsidian's reading view

Use cases

Good for
  • Building a personal knowledge base with interconnected notes and automatic link tracking
  • Creating project documentation with embedded diagrams, images, and referenced sections
  • Organizing research notes with tags, properties, and callout-highlighted key information
  • Writing technical documentation with LaTeX formulas and Mermaid diagrams
  • Setting up a task management system with properties and collapsible callouts
Who it's for
  • Knowledge workers and researchers using Obsidian vaults
  • Technical writers documenting projects with embedded content
  • Students organizing study notes with cross-references
  • Project managers tracking tasks and milestones with properties

obsidian-markdown FAQ

When should I use wikilinks vs. Markdown links?

Use [[wikilinks]] for notes within your Obsidian vault—Obsidian automatically tracks renames. Use [text](url) for external URLs only.

How do I link to a specific section or paragraph?

Link to headings with [[Note Name#Heading]] or to blocks with [[Note Name#^block-id]]. Define block IDs by appending ^block-id to any paragraph.

Can I embed just part of a note?

Yes, use ![[Note Name#Heading]] to embed a specific section, or ![[Note Name#^block-id]] to embed a single block.

What callout types are available?

Common types include note, tip, warning, info, example, quote, bug, danger, success, failure, question, abstract, and todo. See CALLOUTS.md for the full list.

How do I hide text in Obsidian?

Wrap text in %% %% for inline comments or use a %% %% block for multi-line hidden content. Hidden text does not appear in reading view.

Full instructions (SKILL.md)

Source of truth, from kepano/obsidian-skills.


name: obsidian-markdown description: Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in Obsidian, or when the user mentions wikilinks, callouts, frontmatter, tags, embeds, or Obsidian notes.

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

  1. Add frontmatter with properties (title, tags, aliases) at the top of the file. See PROPERTIES.md for all property types.
  2. Write content using standard Markdown for structure, plus Obsidian-specific syntax below.
  3. Link related notes using wikilinks ([[Note]]) for internal vault connections, or standard Markdown links for external URLs.
  4. Embed content from other notes, images, or PDFs using the ![[embed]] syntax. See EMBEDS.md for all embed types.
  5. Add callouts for highlighted information using > [!type] syntax. See CALLOUTS.md for all callout types.
  6. Verify the note renders correctly in Obsidian's reading view.

When choosing between wikilinks and Markdown links: use [[wikilinks]] for notes within the vault (Obsidian tracks renames automatically) and [text](url) for external URLs only.

Internal Links (Wikilinks)

[[Note Name]]                          Link to note
[[Note Name|Display Text]]             Custom display text
[[Note Name#Heading]]                  Link to heading
[[Note Name#^block-id]]                Link to block
[[#Heading in same note]]              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:

![[Note Name]]                         Embed full note
![[Note Name#Heading]]                 Embed section
![[image.png]]                         Embed image
![[image.png|300]]                     Embed image with width
![[document.pdf#page=3]]               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 [[improve workflow]] 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 [[Algorithm Notes#Sorting]] for details.

![[Architecture Diagram.png|600]]

Reviewed in [[Meeting Notes 2024-01-10#Decisions]].

References