obsidian-note-formatting-skill

Create well-formatted Obsidian notes with proper frontmatter, templates, and organization. Use when users want to create notes for their Obsidian vault, document ideas or technical content, or need help structuring information in Obsidian-compatible markdown format.

16 stars

Best use case

obsidian-note-formatting-skill is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create well-formatted Obsidian notes with proper frontmatter, templates, and organization. Use when users want to create notes for their Obsidian vault, document ideas or technical content, or need help structuring information in Obsidian-compatible markdown format.

Teams using obsidian-note-formatting-skill 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

$curl -o ~/.claude/skills/obsidian-note-formatting-skill/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/documentation/obsidian-note-formatting-skill/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/obsidian-note-formatting-skill/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How obsidian-note-formatting-skill Compares

Feature / Agentobsidian-note-formatting-skillStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create well-formatted Obsidian notes with proper frontmatter, templates, and organization. Use when users want to create notes for their Obsidian vault, document ideas or technical content, or need help structuring information in Obsidian-compatible markdown format.

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.

SKILL.md Source

# Obsidian Note-Taker

This skill helps create properly formatted Obsidian notes with consistent structure, frontmatter, and organization.

## When to Use This Skill

Activate this skill when:
- User asks to "create a note" or "document" something for Obsidian
- User provides information that needs structuring as an Obsidian note
- User mentions their vault, knowledge base, or Zettelkasten
- User wants to capture an idea, meeting notes, or technical documentation

## Core Workflow

### 1. Determine Note Type

Ask the user or infer from context:
- **Technical Documentation**: Architecture, guides, how-tos, system docs
- **Business/Ideas**: Brainstorming, concepts, project ideas
- **Personal Notes**: Meetings, reflections, daily notes
- **Research Notes**: Literature notes, source materials

### 2. Select Folder Placement

Based on note type, suggest location:
- Technical → `1 - Main Notes/`
- Ideas → `Personal/Thoughts & Ideas/`
- Personal → `Personal/`
- Research → `Research/` or topic-specific folder

Ask user to confirm: "Based on this being [type], I'll suggest placing this in [folder]. Is that correct?"

### 3. Generate Frontmatter

Create YAML frontmatter following this template:

```yaml
---
date: YYYY-MM-DD  # Today's date
status: capture    # Options: capture, develop, refine, complete
type: note         # Options: note, guide, architecture, workflow, idea
tags:
  - tag1          # 2-4 relevant tags based on content
  - tag2
---
```

### 4. Apply Template Structure

Use the appropriate template from `references/templates.md` based on note type.

### 5. Format Content

- Use `[[wikilinks]]` for internal references
- Use `[text](url)` for external links
- Maintain proper heading hierarchy (# > ## > ###)
- Include "Related Notes" section at the end

### 6. Find Related Notes in Vault

**Before finalizing the note, search the user's Obsidian vault for related notes:**

Use the Obsidian MCP tools to find relevant existing notes:

```
# Search vault for notes related to the topic
mcp__MCP_DOCKER__obsidian_simple_search(
    query="[key terms from note title/content]",
    context_length=50
)
```

Then add the most relevant notes (3-5 maximum) to the "Related Notes" section as wikilinks:
```markdown
## Related Notes
- [[Actual Note Title 1]]
- [[Actual Note Title 2]]
- [[Actual Note Title 3]]
```

If no related notes are found, you can omit the "Related Notes" section or leave it empty for the user to fill later.

## Quick Templates

For immediate use without loading references:

### Technical Note
```markdown
---
date: YYYY-MM-DD
status: capture
type: note
tags:
  - technical
  - [topic]
---

# [Title]

## Overview
[One paragraph summary]

## Key Concepts
- Concept 1
- Concept 2

## Implementation Details
[Main content]

## Related Notes
- [[Related Note 1]]
- [[Related Note 2]]
```

### Idea Note
```markdown
---
date: YYYY-MM-DD
status: capture
type: idea
tags:
  - idea
  - [domain]
---

# [Idea Title]

## Problem Statement
[What problem does this solve?]

## Proposed Solution
[How to solve it]

## Next Steps
- [ ] Action 1
- [ ] Action 2

## Related Ideas
- [[Related Idea]]
```

## File Naming Convention

- Title case with spaces: `System Architecture for Auth Service.md`
- Remove special characters: `: / \ | * ? " < >`
- Keep under 60 characters
- No underscores or hyphens in filenames

## Tag Suggestions

Suggest tags based on content domain:
- **Technical**: `architecture`, `api`, `database`, `security`, `devops`
- **AI/ML**: `ai`, `llm`, `claude`, `automation`, `agents`
- **Business**: `business`, `startup`, `revenue`, `strategy`
- **Personal**: `meeting`, `reflection`, `planning`, `learning`

Format: lowercase, use hyphens for multi-word tags

## Validation Checklist

Before presenting the note:
- [ ] Frontmatter present and valid YAML
- [ ] Date in YYYY-MM-DD format
- [ ] Status is valid option
- [ ] At least 2 relevant tags
- [ ] Title clear and under 60 chars
- [ ] Content follows template structure
- [ ] Wikilinks properly formatted
- [ ] Folder placement suggested

## Output Format

Present the complete note and instructions:

```
Here's your formatted Obsidian note:

[COMPLETE NOTE CONTENT]

📁 Save to: `[folder]/[filename].md`

Would you like me to adjust anything?
```

## Saving to Obsidian Vault

**After presenting the formatted note, ask the user if they want to save it to their Obsidian vault.**

### Step 1: Present Note and Ask for Confirmation

After showing the formatted note, ask:

```
Would you like me to save this note to your Obsidian vault at: `[suggested-folder]/[filename].md`?
```

### Step 2: If User Confirms, Save Using MCP Tool

Only if the user confirms (says yes, save it, go ahead, etc.), then use the Obsidian MCP integration:

```
mcp__MCP_DOCKER__obsidian_append_content(
    filepath="[suggested-folder]/[filename].md",
    content=[complete_formatted_note_including_frontmatter]
)
```

### Step 3: Confirm Success

After successful save, inform the user:

```
✅ Note saved to Obsidian vault at: `[filepath]`
```

### Step 4: Error Handling

If MCP save fails:
1. Explain: "I couldn't save directly to your vault"
2. Display the formatted note content
3. Suggest manual save: "You can copy this content and save it manually to: `[filepath]`"

### Important Notes

- **Always ask before saving** - Never save without user confirmation
- The filepath should match the suggested location from "Output Format"
- Include the complete note with frontmatter in the `content` parameter
- If user declines to save, that's fine - they have the formatted note to copy manually

### Example Workflow

For a technical note titled "Testing MCP Integration":

1. Format note with frontmatter:
   ```yaml
   ---
   date: 2025-10-20
   status: capture
   type: note
   tags:
     - testing
     - mcp
   ---

   # Testing MCP Integration

   [content here]
   ```

2. Determine folder: `1 - Main Notes/`

3. Save using MCP:
   ```
   mcp__MCP_DOCKER__obsidian_append_content(
       filepath="1 - Main Notes/Testing MCP Integration.md",
       content=[complete note from step 1]
   )
   ```

4. Confirm: "✅ Note saved to Obsidian vault at: `1 - Main Notes/Testing MCP Integration.md`"

## Advanced Features

For complex requirements, see:
- `references/templates.md` - Detailed templates for all note types
- `references/folder-structure.md` - Complete folder organization guide
- `scripts/validate_frontmatter.py` - Validate note structure

Related Skills

obsidian-markdown

16
from diegosouzapw/awesome-omni-skill

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.

android-release-notes-structure

16
from diegosouzapw/awesome-omni-skill

Create Play Store release notes directory structure with locale templates (Fastlane metadata)

update-notes

16
from diegosouzapw/awesome-omni-skill

Condense learnings from this session, so that they can be used to make better decisions on future runs. With these notes, you don't need to rely on auto-compaction to keep a conversation going.

archive-obsidian-vault

16
from diegosouzapw/awesome-omni-skill

Archives monthly work items from Obsidian vault Area/ and Projects/ to Archive/ with proper organization and attachment handling. Use when archiving completed monthly work.

ai-notes

16
from diegosouzapw/awesome-omni-skill

Manage AI notes in ~/Compost/AI-Notes - read existing notes, list recent documents, and write new implementation plans (仕様書, 計画書, 設計書). Auto-triggers when reading from or writing to notes, specifications, or plans.

tool-call-file-parameter-formatting

16
from diegosouzapw/awesome-omni-skill

Formats file and URL parameters for tool calls. You must analyze the target tool's parameter names and descriptions to choose the correct format (base64, text, or URL ref).

team-collaboration-standup-notes

16
from diegosouzapw/awesome-omni-skill

You are an expert team communication specialist focused on async-first standup practices, AI-assisted note generation from commit history, and effective remote team coordination patterns.

obsidian

16
from diegosouzapw/awesome-omni-skill

Read, write, search, and manage Obsidian vault notes. Use when: (1) Reading/writing markdown notes, (2) Searching vault content, (3) Managing daily/periodic notes, (4) Tracking tasks or oncall incidents. Supports filesystem access and Local REST API.

obsidian-bases

16
from diegosouzapw/awesome-omni-skill

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.

notebooklm

16
from diegosouzapw/awesome-omni-skill

Use this skill to query your Google NotebookLM notebooks directly from Claude Code for source-grounded, citation-backed answers from Gemini. Browser automation, library management, persistent auth....

notebook-writer

16
from diegosouzapw/awesome-omni-skill

Create and document Jupyter notebooks for reproducible analyses

keynote-slides

16
from diegosouzapw/awesome-omni-skill

Build Keynote-style single-file HTML slide decks with brand-ready templates, minimal navigation, and Gemini nano banana media generation. Includes Narrative Engine integration for framework-driven deck creation with 17 proven storytelling structures and 5-agent review panel. Use when creating or editing slide decks, transforming content into presentations, or generating slide visuals.