Obsidian 노트를 Jekyll GitHub 블로그로 게시하는 워크플로우.
BLOG_PATH: /Users/jinwoong-kim/Library/Mobile Documents/iCloud~md~obsidian/Documents/Blog/blog/blog
IMAGE_SOURCE_PATH: /Users/jinwoong-kim/Library/Mobile Documents/iCloud~md~obsidian/Documents/Blog/blog
| 경로 | 용도 |
|---|---|
BLOG_PATH/_posts_wip/ |
작성 중인 글 |
BLOG_PATH/_posts/ |
게시된 글 |
BLOG_PATH/images/글폴더명/ |
게시된 글의 이미지 |
IMAGE_SOURCE_PATH |
Obsidian 붙여넣기 이미지 위치 |
“게시해줘”라고 하면 _posts_wip/에서 published: true인 파일을 찾는다.
1. Filesystem:list_directory - _posts_wip/ 파일 목록 조회
2. 각 파일의 front matter에서 published: true 확인
3. published: true인 파일만 게시 대상으로 선정
Filesystem:read_text_file - 글 내용 읽기
정규식: !\[.*?\]\(([^)]+\.(png|jpg|jpeg|gif|webp|heic))\)
또는: !\[\[([^\]]+\.(png|jpg|jpeg|gif|webp|heic))\]\]
각 이미지에 대해:
Filesystem:search_files - IMAGE_SOURCE_PATH에서 이미지 찾기Filesystem:create_directory - BLOG_PATH/images/글폴더명/ 생성Pasted image YYYYMMDDHHMMSS.png → YYYYMMDDHHMMSS.pngFilesystem:move_file - 이미지를 새 이름으로 폴더에 이동원본 이미지 참조는 삭제하고, 아래 두 줄을 추가:
변환 전:  또는 ![[Pasted image 20260101.png]]
변환 후 (두 줄 추가):


이미지 이름 규칙:
20260101120320.png)파일명에 날짜가 없거나 불완전하면 오늘 날짜(YYYY-MM-DD)를 자동으로 붙인다.
예시:
my-post.md → 2026-01-03-my-post.md2024-01-my-post.md → 2026-01-03-my-post.md (오늘 날짜로 교체)2024-01-15-my-post.md → 그대로 유지 (이미 완전한 날짜가 있음)front matter의 tags가 비어있거나 부족하면, 글 내용을 기반으로 적절한 태그를 자동 생성한다.
규칙:
<br> 변환Obsidian에서 빈 줄 두 개로 띄워도 Jekyll에서는 하나로 합쳐지므로, 자동 변환한다.
변환 규칙:
변환 전 (빈 줄 2개 이상):
첫 번째 문단
(빈 줄)
(빈 줄)
두 번째 문단
변환 후:
첫 번째 문단
<br>
두 번째 문단
<br> + 빈 줄로 변환게시 전 글 내용의 맞춤법과 띄어쓰기를 검사하고, 문제가 있으면 사용자에게 알려준다.
규칙:
Filesystem:write_file - 수정된 내용으로 _posts/에 저장 (Step 5의 파일명 사용)_posts_wip/ 파일은 _trash/로 이동파일명에서 .md 제거:
2026-01-01-한해를-돌아보며.md → images/2026-01-01-한해를-돌아보며/블로그 관련 질문 시 Filesystem 도구로 BLOG_PATH 탐색.
| 트리거 | 동작 |
|---|---|
| “게시해줘” | _posts_wip/에서 published: true인 파일 찾아서 게시 |
| 파일명 날짜 없음 | 오늘 날짜(YYYY-MM-DD) 자동 추가 |
| 태그 부족 | 글 내용 기반 태그 1~3개 자동 생성 |
| 빈 줄 2개 이상 | <br> 태그로 자동 변환 |
| 맞춤법/띄어쓰기 | 검사 후 수정하지 않고 사용자에게 알려주기 |