obsidian-yaml-frontmatter について
Obsidian の保管庫にある Markdown ファイルの YAML frontmatter プロパティを統一するスキルです。キーや値の形式を整え、規則に沿っているか確認する手順を扱います。
主な機能
- 01プロパティ名と形式の統一
- 02タグと日付の表記統一
- 03リンクと特殊文字を含む値の整形
- 04frontmatter 構造の確認
活用シーン
- 01新しいノートへの frontmatter 追加
- 02既存ノートのプロパティ統一
- 03タグ、日付、リンク形式の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jykim/ claude-obsidian-skills --skill obsidian-yaml-frontmatterインストール後、Claude Code で/obsidian-yaml-frontmatterを入力して読み込まれたか確認します。
詳細
YAML フロントマターの管理
Vault 内のすべてのコンテンツで、YAML フロントマターのプロパティを標準化します。
このスキルを使用する場面
次の作業が必要な場合に有効化します。
- Markdown ファイルにフロントマターを追加または更新する
- プロパティ名と書式を統一する
- タグ、日付、その他のプロパティ値を書式設定する
- フロントマターの構造を検証する
注: このスキルはフロントマターのプロパティ(キー、値、型、書式)を管理します。 ドキュメントの構造(見出しの階層、セクションの順序、フロントマターの位置)には、
obsidian-markdown-structureスキルを使用してください。
フロントマターの基本ルール
1. ファイル先頭に YAML ブロックを 1 つだけ置く
構造:
---
property: value
---
## First Section Header
重要なルール:
- ファイル先頭に YAML ブロックを 1 つだけ置きます
- 閉じる
---の後に空行を入れます - フロントマターの後、最初の見出しより前にコンテンツを置きません
2. 標準のプロパティ名
小文字で統一されたキーを使用します:
✅ CORRECT:
title: Document Title
created: 2025-10-31
tags:
- tag1
source: https://example.com
author: Author Name
❌ INCORRECT:
Title: Document Title (capitalized)
date: 2025-10-31 (use "created" not "date")
tag: tag1 (use "tags" plural)
プロパティを重複させない:
dateとcreatedの両方ではなく、createdを使用しますtagとtagsの両方ではなく、tagsを使用します
3. タグの書式
重要:YAML ではプレーンテキストを使用し、ハッシュタグは使いません:
✅ CORRECT:
tags:
- journal
- daily
- reflection
❌ INCORRECT:
tags:
- #journal
- #daily
必ずハイフン付きのリスト形式を使用します:
✅ CORRECT (list format):
tags:
- tag1
- tag2
❌ INCORRECT (inline):
tags: [tag1, tag2]
4. 日付の書式
YYYY-MM-DD 形式で統一します:
✅ CORRECT:
created: 2025-10-31
updated: 2025-11-01
❌ INCORRECT:
created: 10/31/2025
created: 2025-10-31T10:30:00
5. リンクのリスト
Wiki リンクを引用符で囲みます:
✅ CORRECT:
sources:
- "[[Journal/2025-10-31]]"
- "[[Articles/2025-10-31 Title]]"
links:
- "[[Roundup/2025-10-31]]"
attendees:
- "[[People/John]]"
- Jane
❌ INCORRECT:
sources:
- [[Journal/2025-10-31]] (missing quotes)
6. 特殊文字を含む値を引用符で囲む
次の文字を含む値は引用符で囲みます:: # " または数値のように見える文字列
単一引用符で囲む(" を含む値に最も簡単な方法):
✅ CORRECT:
title: 'He said, "Hello."'
note: 'It\'s called "PKM".'
エスケープ処理を使って二重引用符で囲む:
✅ CORRECT:
title: "He said, \"Hello.\""
source: "https://example.com"
version: "2.0"
二重引用符の文字をそのまま使う場合:
✅ CORRECT:
quote_char: '"'
引用符が混在する場合の推奨方法:二重引用符を使い、" のみをエスケープします(単一引用符はエスケープ不要です):
✅ CORRECT:
note: "It's called \"PKM\"."
❌ INCORRECT:
title: AI Era: Thriving Framework (unquoted colon)
version: 2.0 (parsed as number, not string)
複数行の値(エスケープ不要):
✅ CORRECT:
description: |
He said, "Hello."
New line preserved.
標準のプロパティセット
基本プロパティ(すべてのコンテンツ)
---
title: Document Title
created: YYYY-MM-DD
tags:
- category
- type
---
出典のあるコンテンツ
---
title: Article Title
created: YYYY-MM-DD
source: https://url or file path
author: Author Name
tags:
- clipping
- topic
---
関連コンテンツ
---
title: Document Title
created: YYYY-MM-DD
tags:
- category
sources:
- "[[Source File 1]]"
- "[[Source File 2]]"
links:
- "[[Related Topic]]"
---
イベント/ミーティング
---
title: Meeting Name
created: YYYY-MM-DD
event_date: YYYY-MM-DD
attendees:
- "[[Person 1]]"
- Person 2
sources:
- "[[Journal/YYYY-MM-DD#Section]]"
tags:
- meeting
- event
---
ワークフロー
ステップ 1:コンテンツの種類を判断する
- 日次コンテンツ(Journal、Notes)
- 取り込んだコンテンツ(Clippings、Articles)
- 作成したコンテンツ(Analysis、Tasks、Events)
- トピック/プロジェクトのページ
ステップ 2:プロパティセットを選択する
- 基本プロパティ(title、created、tags)
- 該当する場合は source/author を追加します
- 関連リンク(sources、links、attendees)を追加します
- コンテンツ固有のプロパティを追加します
ステップ 3:値を書式設定する
- 日付:YYYY-MM-DD 形式
- タグ:プレーンテキストのリスト(# なし)
- リンク:引用符で囲んだ Wiki リンク
- 特殊文字:
:または#を含む値を引用符で囲みます
ステップ 4:構造を確認する
- ファイル先頭に YAML ブロックが 1 つだけある
---の後に空行がある- プロパティ名が小文字で統一されている
- プロパティが重複していない
品質チェックリスト
フロントマターを完成させる前に確認します。
- ファイル先頭に YAML ブロックが 1 つだけあり、その後に空行がある
- すべてのプロパティキーが小文字で統一されている
- タグがプレーンテキストである(ハッシュタグは使わない)
- 日付が YYYY-MM-DD 形式である
- Wiki リンクが引用符で囲まれている
- 特殊文字が適切に引用符で囲まれている
- プロパティが重複していない(created と date、tags と tag)
コメント
Markdown 対応