Obsidian 노트를 블로그 글로 바꾸는 AI 워크플로우 — 마크다운에서 발행까지
이 워크플로우는 Obsidian을 메모 앱이 아닌 콘텐츠 파이프라인의 출발점으로 쓰는 사람에게 유효하다. 이 글에서는 노트 선택 기준, 마크다운→HTML 변환 팁, Claude Code 서브에이전트 조합, 발행 API 연동까지 단계별로 다룬다.

Obsidian 노트를 AI 워크플로우로 블로그 글로 전환하는 과정을 요약한 AI 생성 대표 이미지.
왜 Obsidian 노트가 블로그 소재로 강한가?
Obsidian은 처음부터 마크다운으로 데이터를 저장하므로, 별도의 내보내기 단계 없이 텍스트 파일 그대로 파이프라인에 투입할 수 있다. 글의 구조(제목, 소제목, 리스트, 코드블록)가 이미 마크업으로 표현돼 있어 AI가 의미 단위를 파악하기 쉽다.
Obsidian의 frontmatter(YAML 헤더)에는 태그, 날짜, 상태 같은 메타데이터가 정형화돼 있어 자동화 스크립트가 발행 여부를 판별하는 신호로 바로 쓸 수 있다. 예를 들어 status: ready 필드 하나로 '발행 대기' 노트를 필터링하면, 수백 개의 노트 중 오늘 발행할 원고를 즉시 추릴 수 있다.
백링크와 태그 구조 덕분에 관련 노트를 자동으로 묶어 시리즈 글이나 주제 클러스터를 만들기도 쉽다. 단순 메모 앱과 달리 노트 간 연결이 콘텐츠 전략의 뼈대가 된다.
변환 워크플로우 6단계는 어떻게 구성하는가?
아래 표는 노트 한 편이 발행 완료까지 거치는 단계와 각 단계에서 자동화가 가능한 지점을 정리한 것이다.
| 단계 | 작업 내용 | 자동화 방법 |
|---|---|---|
| 1. 노트 선택 | status: ready 노트 필터 |
파이썬 스크립트 / Claude Code MCP |
| 2. 문맥 추출 | frontmatter 파싱 + 백링크 수집 | python-frontmatter 라이브러리 |
| 3. 채널별 앵글 | 플랫폼(티스토리·Blogger 등)에 맞는 톤·구성 결정 | Claude Code 서브에이전트 스킬 |
| 4. GEO 구조화 | FAQ·표·코드블록 추가, 검색의도 직답 삽입 | 프롬프트 스킬 + 구조화 출력 |
| 5. HTML 변환 | 마크다운 → 플랫폼 호환 HTML | mistune · Pandoc · marked.js |
| 6. 발행 | Blogger API / 티스토리 API 호출 | Python requests + OAuth2 토큰 |
각 단계는 독립적으로 실행 가능하므로, 전체를 한 번에 자동화하지 않아도 된다. 먼저 1~2단계(노트 선택·문맥 추출)만 스크립트화하고, 3~4단계는 수동으로 검토한 뒤 5~6단계를 다시 자동화하는 방식이 현실적이다.
마크다운을 블로그 HTML로 바꿀 때 놓치기 쉬운 포인트는?
Obsidian의 [[내부 링크]] 문법은 표준 마크다운에 없다. 파이프라인에서 [[노트명]]을 실제 URL이나 평문으로 치환하는 전처리가 없으면, 발행된 글에 깨진 링크가 그대로 남는다.
frontmatter 블록은 독자에게 보이면 안 되므로 HTML 변환 전에 제거해야 한다. python-frontmatter 라이브러리는 메타데이터 파싱과 본문 분리를 한 번에 처리한다. 코드 예시는 다음과 같다.
import frontmatter
import re
import mistune
def convert_note(path: str) -> dict:
post = frontmatter.load(path)
meta = post.metadata # {'title': ..., 'status': ..., 'tags': [...]}
body = post.content
# [[wikilink]] → 평문 처리
body = re.sub(r'\[\[([^\]]+)\]\]', r'\1', body)
# 마크다운 → HTML
html = mistune.html(body)
return {'meta': meta, 'html': html}
표(table) 마크다운은 플랫폼마다 렌더링이 다르다. 티스토리는 | 헤더 | 문법을 지원하지만 일부 플랫폼은 인라인 스타일이 없으면 테이블이 무너진다. 변환 시 <table style='...'>로 인라인 스타일을 직접 주입하는 후처리를 추가하면 플랫폼 의존도를 낮출 수 있다.
이미지 경로도 주의가 필요하다. Obsidian Vault 내 로컬 경로(![[이미지.png]])는 발행 시 접근 불가능하다. 이미지를 CDN이나 GitHub 저장소에 먼저 업로드하고 절대 URL로 치환하는 단계가 파이프라인에 포함돼야 한다.
Claude Code 서브에이전트를 블로그 파이프라인에 어떻게 연결하는가?
Claude Code는 서브에이전트(subagent)를 마크다운 파일(.claude/agents/ 디렉터리)로 정의하고, MCP 서버를 통해 외부 서비스(Blogger API, 파일시스템, 슬랙 등)에 연결한다. 블로그 파이프라인에 적용하면 구조는 아래와 같다.
• 오케스트레이터 — Vault 스캔, 발행 대기 노트 목록 수집, 서브에이전트 스케줄링
• 콘텐츠 서브에이전트 — 채널별 앵글 결정, GEO 구조화(FAQ·표 추가), 제목·메타 디스크립션 생성
• 변환 서브에이전트 — 마크다운→HTML, 이미지 경로 교체, 인라인 스타일 주입
• 발행 서브에이전트 — 플랫폼 API 호출, 발행 결과(URL) 기록, frontmatter
status 갱신
각 서브에이전트는 자체 컨텍스트 창에서 실행되므로, 노트 10편을 동시에 처리할 때 하나의 에이전트가 다른 에이전트의 문맥을 오염시키지 않는다. 단, 병렬 실행 수는 2~3개로 제한하는 것이 안정적이다. API 레이트 리밋과 파이프라인 오류 추적 모두 동시도가 낮을수록 관리하기 쉽다.
MCP(Model Context Protocol)는 파일시스템 읽기, 발행 API 호출, 결과 로깅을 표준화된 인터페이스로 묶어준다. 별도의 OAuth 플로우 코드 없이 설정 파일에 서버를 등록하면 에이전트가 해당 서비스를 도구처럼 호출한다.
GEO(Generative Engine Optimization) 구조는 어떻게 노트에 적용하는가?
GEO는 구글 AI Overview, ChatGPT 검색, Perplexity 같은 AI 검색 엔진이 콘텐츠를 직접 인용하도록 최적화하는 방식이다. 핵심은 검색 질문에 첫 문장이 직접 답하고, 표·FAQ·코드블록으로 답변 단위가 명확히 분절되는 것이다.
Obsidian 노트는 헤더 계층(#, ##, ###)이 이미 명확하므로 GEO 구조화 비용이 낮다. 서브에이전트가 각 소제목을 '검색 질문형'으로 바꾸고, 첫 문장을 답으로 재구성하는 프롬프트 스킬 하나로 대부분의 GEO 전환이 완료된다.
발행 전 마지막 체크 항목은 3가지다: (1) 소제목이 의문문인가, (2) 각 소제목 첫 문장이 40자 이내로 답을 포함하는가, (3) 표나 리스트가 최소 1개 이상 있는가. 이 세 조건을 충족하면 AI 인용 가능성이 눈에 띄게 높아진다.
실제로 적용해 보면 어디서 막히는가?
가장 자주 막히는 지점은 이미지 처리다. Obsidian Vault 로컬 이미지를 자동으로 외부 CDN에 올리는 단계는 플랫폼마다 API가 다르고, 이미지 중복 업로드 방지 로직도 직접 구현해야 한다. 처음에는 이미지 없는 텍스트 중심 글부터 파이프라인을 검증하는 것이 낫다.
두 번째는 플랫폼 고유 HTML 제약이다. 일부 블로그 플랫폼은 <script>나 <iframe>을 차단하고, 특정 CSS 속성을 제거한다. 발행 후 실제 렌더링을 자동으로 스크린샷하거나 HTML을 재파싱해서 검증하는 단계를 파이프라인 끝에 붙이면 오류를 빠르게 잡을 수 있다.
세 번째는 프롬프트 일관성이다. 서브에이전트가 생성하는 글의 문체가 노트마다 달라질 수 있다. 브랜드 문체 가이드를 시스템 프롬프트에 고정하고, 생성 결과를 문체 채점 서브에이전트가 0~100점으로 평가해 기준 이하면 재생성하도록 루프를 추가하면 일관성을 유지할 수 있다.
🤖 AI·자동화 가이드 더 보기
FAQ
3줄 요약과 다음 글 예고
2. 마크다운→HTML 변환 전 wikilink 치환·frontmatter 제거·이미지 경로 교체 3가지를 먼저 처리한다.
3. Claude Code 서브에이전트는 노트 선택부터 발행까지 단계별 역할을 분리해 파이프라인 안정성을 높인다.
다음 글에서는 Blogger API와 티스토리 Open API를 Python으로 연동해 실제 발행 자동화를 구성하는 방법을 다룰 예정이다. OAuth 토큰 관리와 초안 vs 발행 상태 제어가 핵심이다.
도구 기능은 업데이트가 잦아 공식 문서 재확인을 권한다.
댓글
댓글 쓰기