obsidian-markdown
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.
Best use case
obsidian-markdown is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
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.
Teams using obsidian-markdown 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
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/obsidian-markdown/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How obsidian-markdown Compares
| Feature / Agent | obsidian-markdown | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
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.
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.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Best AI Skills for Claude
Explore the best AI skills for Claude and Claude Code across coding, research, workflow automation, documentation, and agent operations.
ChatGPT vs Claude for Agent Skills
Compare ChatGPT and Claude for AI agent skills across coding, writing, research, and reusable workflow execution.
SKILL.md Source
# Obsidian Flavored Markdown
This skill enables Claude Code to create and edit valid Obsidian Flavored Markdown including wikilinks, embeds, callouts, properties, and all related syntax.
## When to Use This Skill
- Working with .md files in an Obsidian vault
- Creating notes with wikilinks or internal links
- Adding embeds for notes, images, audio, or PDFs
- Using callouts (info boxes, warnings, tips, etc.)
- Managing frontmatter/properties in YAML format
- Working with tags and nested tags
- Creating block references and block IDs
## Basic Formatting
### Paragraphs and Line Breaks
Paragraphs are separated by blank lines. Single line breaks within a paragraph are ignored unless you use:
- Two spaces at the end of a line
- Or use `<br>` for explicit breaks
### Headings
```markdown
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
```
### Text Styling
```markdown
**Bold text**
*Italic text*
***Bold and italic***
~~Strikethrough~~
==Highlighted text==
```
## Internal Links (Wikilinks)
### Basic Wikilinks
```markdown
[[Note Name]]
[[Note Name|Display Text]]
[[Folder/Note Name]]
```
### Heading Links
```markdown
[[Note Name#Heading]]
[[Note Name#Heading|Display Text]]
[[#Heading in Current Note]]
```
### Block References
```markdown
[[Note Name#^block-id]]
[[Note Name#^block-id|Display Text]]
[[#^block-id]]
```
### Creating Block IDs
Add a block ID at the end of any paragraph or list item:
```markdown
This is a paragraph you can reference. ^my-block-id
- List item with ID ^list-block
```
## Embeds
### Embedding Notes
```markdown
![[Note Name]]
![[Note Name#Heading]]
![[Note Name#^block-id]]
```
### Embedding Images
```markdown
![[image.png]]
![[image.png|400]]
![[image.png|400x300]]
```
### Embedding Audio
```markdown
![[audio.mp3]]
```
### Embedding PDFs
```markdown
![[document.pdf]]
![[document.pdf#page=5]]
![[document.pdf#height=400]]
```
### Embedding Videos
```markdown
![[video.mp4]]
```
## Callouts
### Basic Callout Syntax
```markdown
> [!note]
> This is a note callout.
> [!warning]
> This is a warning callout.
> [!tip] Custom Title
> This callout has a custom title.
```
### Callout Types
| Type | Aliases | Description |
|------|---------|-------------|
| `note` | | Default blue info box |
| `abstract` | `summary`, `tldr` | Abstract/summary |
| `info` | | Information |
| `todo` | | Task/todo item |
| `tip` | `hint`, `important` | Helpful tip |
| `success` | `check`, `done` | Success message |
| `question` | `help`, `faq` | Question/FAQ |
| `warning` | `caution`, `attention` | Warning message |
| `failure` | `fail`, `missing` | Failure message |
| `danger` | `error` | Error/danger |
| `bug` | | Bug report |
| `example` | | Example content |
| `quote` | `cite` | Quotation |
### Foldable Callouts
```markdown
> [!note]+ Expanded by default
> Content visible initially.
> [!note]- Collapsed by default
> Content hidden initially.
```
### Nested Callouts
```markdown
> [!question] Can callouts be nested?
> > [!answer] Yes!
> > Callouts can be nested inside each other.
```
## Lists
### Unordered Lists
```markdown
- Item 1
- Item 2
- Nested item
- Another nested item
- Item 3
```
### Ordered Lists
```markdown
1. First item
2. Second item
1. Nested numbered item
3. Third item
```
### Task Lists
```markdown
- [ ] Uncompleted task
- [x] Completed task
- [ ] Another task
```
## Code Blocks
### Inline Code
```markdown
Use `inline code` for short snippets.
```
### Fenced Code Blocks
````markdown
```javascript
function hello() {
console.log("Hello, world!");
}
```
````
### Supported Languages
Obsidian supports syntax highlighting for many languages including:
`javascript`, `typescript`, `python`, `rust`, `go`, `java`, `c`, `cpp`, `csharp`, `ruby`, `php`, `html`, `css`, `json`, `yaml`, `markdown`, `bash`, `sql`, and many more.
## Tables
```markdown
| Header 1 | Header 2 | Header 3 |
|----------|:--------:|---------:|
| Left | Center | Right |
| aligned | aligned | aligned |
```
## Math (LaTeX)
### Inline Math
```markdown
The equation $E = mc^2$ is famous.
```
### Block Math
```markdown
$$
\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
$$
```
## Diagrams (Mermaid)
````markdown
```mermaid
graph TD
A[Start] --> B{Decision}
B -->|Yes| C[Do Something]
B -->|No| D[Do Something Else]
C --> E[End]
D --> E
```
````
## Footnotes
```markdown
This is a sentence with a footnote.[^1]
[^1]: This is the footnote content.
```
## Comments
```markdown
%%
This is a comment that won't be rendered.
%%
Inline %%comment%% within text.
```
## Properties (Frontmatter)
### Basic Properties
```yaml
---
title: My Note Title
date: 2024-01-15
tags:
- tag1
- tag2
author: John Doe
---
```
### Property Types
| Type | Example |
|------|---------|
| Text | `title: My Title` |
| Number | `rating: 5` |
| Checkbox | `completed: true` |
| Date | `date: 2024-01-15` |
| Date & time | `created: 2024-01-15T10:30:00` |
| List | `tags: [a, b, c]` or multiline |
| Link | `related: "[[Other Note]]"` |
### Multi-value Properties
```yaml
---
tags:
- project
- work
- important
aliases:
- My Alias
- Another Name
cssclasses:
- wide-page
- cards
---
```
## Tags
### Inline Tags
```markdown
This note is about #productivity and #tools.
```
### Nested Tags
```markdown
#project/work
#status/in-progress
#priority/high
```
### Tags in Frontmatter
```yaml
---
tags:
- project
- project/work
- status/active
---
```
## HTML Support
Obsidian supports a subset of HTML:
```markdown
<div class="my-class">
Custom HTML content
</div>
<details>
<summary>Click to expand</summary>
Hidden content here
</details>
<kbd>Ctrl</kbd> + <kbd>C</kbd>
```
## Complete Example
```markdown
---
title: Project Alpha Overview
date: 2024-01-15
tags:
- project
- documentation
status: active
---
# Project Alpha Overview
## Summary
This document outlines the key aspects of **Project Alpha**. For related materials, see [[Project Alpha/Resources]] and [[Team Members]].
> [!info] Quick Facts
> - Start Date: January 2024
> - Team Size: 5 members
> - Status: Active
## Key Features
1. [[Feature A]] - Core functionality
2. [[Feature B]] - User interface
3. [[Feature C]] - API integration
### Feature A Details
The main equation governing our approach is $f(x) = ax^2 + bx + c$.
![[feature-a-diagram.png|500]]
> [!tip] Implementation Note
> See [[Technical Specs#^impl-note]] for implementation details.
## Tasks
- [x] Initial planning ^planning-task
- [ ] Development phase
- [ ] Testing phase
- [ ] Deployment
## Code Example
```python
def process_data(input):
return transform(input)
```
## Architecture
```mermaid
graph LR
A[Input] --> B[Process]
B --> C[Output]
```
## Notes
This approach was inspired by ==recent research==[^1].
[^1]: Smith, J. (2024). Modern Approaches to Data Processing.
%%
TODO: Add more examples
Review with team next week
%%
#project/alpha #documentation
```
## References
- [Obsidian Formatting Syntax](https://help.obsidian.md/Editing+and+formatting/Basic+formatting+syntax)
- [Advanced Formatting](https://help.obsidian.md/Editing+and+formatting/Advanced+formatting+syntax)
- [Internal Links](https://help.obsidian.md/Linking+notes+and+files/Internal+links)
- [Embedding Files](https://help.obsidian.md/Linking+notes+and+files/Embed+files)
- [Callouts](https://help.obsidian.md/Editing+and+formatting/Callouts)
- [Properties](https://help.obsidian.md/Editing+and+formatting/Properties)Related Skills
obsidian-bases
Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of notes, or when the user mentions Bases, table views, card views, filters, or formulas in Obsidian.
pagerduty-automation
Automate PagerDuty tasks via Rube MCP (Composio): manage incidents, services, schedules, escalation policies, and on-call rotations. Always search tools first for current schemas.
outlook-calendar-automation
Automate Outlook Calendar tasks via Rube MCP (Composio): create events, manage attendees, find meeting times, and handle invitations. Always search tools first for current schemas.
outlook-automation
Automate Outlook tasks via Rube MCP (Composio): emails, calendar, contacts, folders, attachments. Always search tools first for current schemas.
one-drive-automation
Automate OneDrive file management, search, uploads, downloads, sharing, permissions, and folder operations via Rube MCP (Composio). Always search tools first for current schemas.
oiloil-ui-ux-guide
Modern, clean UI/UX guidance + review skill. Use when you need actionable UX/UI recommendations, design principles, or a design review checklist for new features or existing systems (web/app). Focus on CRAP (Contrast/Repetition/Alignment/Proximity) plus task-first UX, information architecture, feedback & system status, consistency, affordances, error prevention/recovery, and cognitive load. Enforce a modern minimal style (clean, spacious, typography-led), reduce unnecessary copy, forbid emoji as icons, and recommend intuitive refined icons from a consistent icon set.
notion-automation
Automate Notion tasks via Rube MCP (Composio): pages, databases, blocks, comments, users. Always search tools first for current schemas.
monday-automation
Automate Monday.com work management including boards, items, columns, groups, subitems, and updates via Rube MCP (Composio). Always search tools first for current schemas.
mixpanel-automation
Automate Mixpanel tasks via Rube MCP (Composio): events, segmentation, funnels, cohorts, user profiles, JQL queries. Always search tools first for current schemas.
miro-automation
Automate Miro tasks via Rube MCP (Composio): boards, items, sticky notes, frames, sharing, connectors. Always search tools first for current schemas.
microsoft-teams-automation
Automate Microsoft Teams tasks via Rube MCP (Composio): send messages, manage channels, create meetings, handle chats, and search messages. Always search tools first for current schemas.
meeting-insights-analyzer
Analyzes meeting transcripts and recordings to uncover behavioral patterns, communication insights, and actionable feedback. Identifies when you avoid conflict, use filler words, dominate conversations, or miss opportunities to listen. Perfect for professionals seeking to improve their communication and leadership skills.