From claude-obsidian
Writes correct Obsidian Flavored Markdown: wikilinks, embeds, callouts, properties, tags, highlights, math, and canvas syntax. Reference when creating or editing any wiki page.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-obsidian:obsidian-markdownThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Reference this skill when writing any wiki page. Obsidian extends standard Markdown with wikilinks, embeds, callouts, and properties. Getting syntax wrong causes broken links, invisible callouts, or malformed frontmatter.
Reference this skill when writing any wiki page. Obsidian extends standard Markdown with wikilinks, embeds, callouts, and properties. Getting syntax wrong causes broken links, invisible callouts, or malformed frontmatter.
Substrate preference (v1.7+): This skill is a self-contained fallback. Prefer kepano/obsidian-skills (by Steph Ango, Obsidian CEO) as the authoritative substrate — its obsidian-markdown skill is the canonical Obsidian syntax reference for any Agent-Skills runtime. If you see an obsidian-markdown skill available without the claude-obsidian: namespace, that is kepano's version: use it. The reference below is provided so the plugin remains functional when kepano's marketplace is not installed. Install: claude plugin marketplace add kepano/obsidian-skills. Repo: github.com/kepano/obsidian-skills.
Internal links use double brackets. The filename without extension.
| Syntax | What it does |
|---|---|
[[Note Name]] | Basic link |
[[Note Name|Display Text]] | Aliased link (shows "Display Text") |
[[Note Name#Heading]] | Link to a specific heading |
[[Note Name#^block-id]] | Link to a specific block |
Rules:
[[Folder/Note Name]] to disambiguate.Embeds use ! before the wikilink. They display the content inline.
| Syntax | What it does |
|---|---|
![[Note Name]] | Embed a full note |
![[Note Name#Heading]] | Embed a section |
![[image.png]] | Embed an image |
![[image.png|300]] | Embed image with width 300px |
![[document.pdf]] | Embed a PDF (Obsidian renders natively) |
![[audio.mp3]] | Embed audio |
Callouts are blockquotes with a type keyword. They render as styled alert boxes.
> [!note]
> Default informational callout.
> [!note] Custom Title
> Callout with a custom title.
> [!note]- Collapsible (closed by default)
> Click to expand.
> [!note]+ Collapsible (open by default)
> Click to collapse.
| Type | Aliases | Use for |
|---|---|---|
note | : | General notes |
abstract | summary, tldr | Summaries |
info | : | Information |
todo | : | Action items |
tip | hint, important | Tips and highlights |
success | check, done | Positive outcomes |
question | help, faq | Open questions |
warning | caution, attention | Warnings |
failure | fail, missing | Errors or failures |
danger | error | Critical issues |
bug | : | Known bugs |
example | : | Examples |
quote | cite | Quotations |
contradiction | : | Conflicting information (wiki convention) |
Obsidian renders YAML frontmatter as a Properties panel. Rules:
---
type: concept # plain string
title: "Note Title" # quoted if it contains special chars
created: 2026-04-08 # date as YYYY-MM-DD (not ISO datetime)
updated: 2026-04-08
tags:
- tag-one # list items use - format
- tag-two
status: developing
related:
- "[[Other Note]]" # wikilinks must be quoted in YAML
sources:
- "[[source-page]]"
---
Rules:
YYYY-MM-DD, not 2026-04-08T00:00:00.- item, not inline [a, b, c]."[[Page]]".tags field: Obsidian reads this as the tag list, searchable in vault.Two valid forms:
#tag-name : inline tag anywhere in the body
#parent/child-tag : nested tag (shows hierarchy in tag pane)
In frontmatter:
tags:
- research
- ai/obsidian
Do not use # inside frontmatter tag lists. Just the tag name.
Standard Markdown plus Obsidian extensions:
| Syntax | Result |
|---|---|
**bold** | Bold |
*italic* | Italic |
~~strikethrough~~ | Strikethrough |
==highlight== | Highlighted text (yellow in Obsidian) |
`inline code` | Inline code |
Obsidian uses MathJax/KaTeX:
Inline math:
$E = mc^2$
Block math:
$$
\int_0^\infty e^{-x} dx = 1
$$
Standard fenced code blocks. Obsidian highlights all common languages:
```python
def hello():
return "world"
```
Standard Markdown tables:
| Column A | Column B | Column C |
|----------|----------|----------|
| Value | Value | Value |
| Value | Value | Value |
Obsidian renders tables natively. No plugin needed.
Obsidian renders Mermaid natively:
```mermaid
graph TD
A[Start] --> B{Decision}
B -->|Yes| C[End]
B -->|No| D[Loop]
D --> A
```
Supported: graph, sequenceDiagram, gantt, classDiagram, pie, flowchart.
This sentence has a footnote.[^1]
[^1]: The footnote text goes here.
[link text](path/to/note.md) for internal links: use [[Note Name]] instead.## inside a callout body: headings don't render inside callouts.tags: [a, b, c] inline in frontmatter: Obsidian prefers the list format.2026-04-08T00:00:00Z): use 2026-04-08.When working on this skill, apply the 10-principle loop. See skills/think/SKILL.md for the canonical framework.
| # | Principle | Application here |
|---|---|---|
| 1 | OBSERVE (ext) | Which syntax does the user need? (Wikilinks? Callouts? Embeds? Math? Mermaid?) |
| 2 | OBSERVE (int) | Am I documenting Obsidian Flavored Markdown as I remember it or as it currently is? Check the spec. |
| 3 | LISTEN | The user's source-of-confusion — what specific syntax did they get wrong? |
| 4 | THINK | Minimal correct examples. "What NOT to do" is often as valuable as "what to do." |
| 5 | CONNECT (lat) | How does OFM differ from CommonMark and GFM? The deltas are where users get confused. |
| 6 | CONNECT (sys) | Substrate-defer to kepano/obsidian-skills when present — single source of truth, less drift. |
| 7 | FEEL | A cheat sheet that's scannable in 30 seconds, not a wall of text. |
| 8 | ACCEPT | Not every wikilink needs an alias; some syntax is genuinely optional. Don't over-prescribe. |
| 9 | CREATE | Syntax reference, current to Obsidian X.Y. Include the gotchas section. |
| 10 | GROW | As OFM evolves (newer Mermaid types, callout types, cssclasses, etc.), refresh. |
npx claudepluginhub agricidaniel/claude-obsidian --plugin claude-obsidianCreate and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, frontmatter properties, and other syntax. Use for .md files in Obsidian vaults or Obsidian-specific features.
Create and edit Obsidian Markdown with wikilinks, embeds, callouts, properties, block IDs, and frontmatter. For .md files in Obsidian vaults or Obsidian syntax mentions.
Creates and edits Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.