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.
/plugin marketplace add davepoon/buildwithclaude/plugin install all-skills@buildwithclaudeThis skill inherits all available tools. When active, it can use any tool Claude has access to.
This skill enables Claude Code to create and edit valid Obsidian Flavored Markdown including wikilinks, embeds, callouts, properties, and all related syntax.
Paragraphs are separated by blank lines. Single line breaks within a paragraph are ignored unless you use:
<br> for explicit breaks# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
**Bold text**
*Italic text*
***Bold and italic***
~~Strikethrough~~
==Highlighted text==
[[Note Name]]
[[Note Name|Display Text]]
[[Folder/Note Name]]
[[Note Name#Heading]]
[[Note Name#Heading|Display Text]]
[[#Heading in Current Note]]
[[Note Name#^block-id]]
[[Note Name#^block-id|Display Text]]
[[#^block-id]]
Add a block ID at the end of any paragraph or list item:
This is a paragraph you can reference. ^my-block-id
- List item with ID ^list-block
![[Note Name]]
![[Note Name#Heading]]
![[Note Name#^block-id]]
![[image.png]]
![[image.png|400]]
![[image.png|400x300]]
![[audio.mp3]]
![[document.pdf]]
![[document.pdf#page=5]]
![[document.pdf#height=400]]
![[video.mp4]]
> [!note]
> This is a note callout.
> [!warning]
> This is a warning callout.
> [!tip] Custom Title
> This callout has a custom title.
| 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 |
> [!note]+ Expanded by default
> Content visible initially.
> [!note]- Collapsed by default
> Content hidden initially.
> [!question] Can callouts be nested?
> > [!answer] Yes!
> > Callouts can be nested inside each other.
- Item 1
- Item 2
- Nested item
- Another nested item
- Item 3
1. First item
2. Second item
1. Nested numbered item
3. Third item
- [ ] Uncompleted task
- [x] Completed task
- [ ] Another task
Use `inline code` for short snippets.
```javascript
function hello() {
console.log("Hello, world!");
}
```
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.
| Header 1 | Header 2 | Header 3 |
|----------|:--------:|---------:|
| Left | Center | Right |
| aligned | aligned | aligned |
The equation $E = mc^2$ is famous.
$$
\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
$$
```mermaid
graph TD
A[Start] --> B{Decision}
B -->|Yes| C[Do Something]
B -->|No| D[Do Something Else]
C --> E[End]
D --> E
```
This is a sentence with a footnote.[^1]
[^1]: This is the footnote content.
%%
This is a comment that won't be rendered.
%%
Inline %%comment%% within text.
---
title: My Note Title
date: 2024-01-15
tags:
- tag1
- tag2
author: John Doe
---
| 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]]" |
---
tags:
- project
- work
- important
aliases:
- My Alias
- Another Name
cssclasses:
- wide-page
- cards
---
This note is about #productivity and #tools.
#project/work
#status/in-progress
#priority/high
---
tags:
- project
- project/work
- status/active
---
Obsidian supports a subset of HTML:
<div class="my-class">
Custom HTML content
</div>
<details>
<summary>Click to expand</summary>
Hidden content here
</details>
<kbd>Ctrl</kbd> + <kbd>C</kbd>
---
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)
graph LR
A[Input] --> B[Process]
B --> C[Output]
This approach was inspired by ==recent research==1.
%% 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)
Smith, J. (2024). Modern Approaches to Data Processing. ↩
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.