GitHub 저장소에서 Obsidian vault로 마크다운 노트를 자동으로 동기화하는 플러그인입니다.
- n8n/Zapier 워크플로우에서 생성된 노트를 Obsidian으로 자동 가져오기
- iCloud로 동기화되는 vault에 외부 자동화 연동
- RSS 피드, AI 요약 등 자동 생성 콘텐츠 수집
- GitHub 저장소의 특정 폴더에서 마크다운 파일 동기화
- Obsidian 시작 시 자동 동기화
- 설정된 간격으로 주기적 동기화
- Command Palette 또는 Ribbon 아이콘으로 수동 동기화
- 중복 파일 처리 (스킵/덮어쓰기/이름 변경)
- 동기화 후 GitHub 파일 삭제 또는 processed 폴더로 이동
- SHA 기반 추적으로 이미 동기화된 파일 스킵
- 최신 릴리스에서
main.js,manifest.json,styles.css다운로드 - Vault의
.obsidian/plugins/github-inbox-sync/폴더에 파일 복사 - Obsidian 설정 > Community Plugins에서 플러그인 활성화
- BRAT 플러그인 설치
- "Add Beta Plugin" 명령 실행
- 저장소 URL 입력
- GitHub Settings > Developer settings > Personal access tokens 접속
- "Fine-grained tokens" 선택 후 새 토큰 생성
- 필요한 권한:
- Repository access: 대상 저장소만 선택
- Permissions: Contents (Read and write)
- 생성된 토큰 복사
| 설정 | 설명 | 기본값 |
|---|---|---|
| GitHub Personal Access Token | 생성한 토큰 | - |
| 저장소 | owner/repo 형식 |
- |
| 브랜치 | 동기화할 브랜치 | main |
| 소스 폴더 | GitHub 내 폴더 경로 | inbox |
| 대상 폴더 | Vault 내 저장 폴더 | inbox |
| 시작 시 동기화 | Obsidian 시작 시 자동 동기화 | 켜짐 |
| 자동 동기화 | 주기적 백그라운드 동기화 | 켜짐 |
| 동기화 간격 | 자동 동기화 간격 (분) | 5 |
| 중복 파일 처리 | skip/overwrite/rename | skip |
| processed 폴더로 이동 | 동기화 후 이동 | 켜짐 |
| 동기화 후 삭제 | GitHub에서 파일 삭제 | 꺼짐 |
- Command Palette:
GitHub Inbox Sync: Sync now - Ribbon 아이콘: 왼쪽 사이드바의 inbox 아이콘 클릭
GitHub 노드에서 inbox/ 폴더에 파일 생성 후 커밋하면 플러그인이 자동으로 가져옵니다.
웹페이지 URL을 받아 크롤링하고, AI로 콘텐츠를 정제하여 GitHub에 마크다운으로 저장하는 워크플로우를 제공합니다.
- 워크플로우 파일:
examples/n8n/n8n-crawl-to-github.json
워크플로우 흐름:
Webhook → Jina Reader → AI Agent → GitHub
│ │ │ │
│ │ │ └─ inbox/에 마크다운 저장
│ │ └─ 콘텐츠 정제 및 제목 추출
│ └─ 웹페이지 크롤링 (jina.ai)
└─ POST 요청으로 URL 수신
설정 방법:
- n8n에서 워크플로우 파일 임포트
- Credentials 설정:
- OpenRouter API: OpenRouter에서 API 키 발급
- GitHub API: Personal Access Token (Contents 권한 필요)
- GitHub 노드에서 저장소 정보 수정:
owner: GitHub 사용자명repository: 저장소 이름
사용법:
curl -X POST https://YOUR_N8N_DOMAIN/webhook/crawl-to-github \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/article"}'제공된 워크플로우 대신 직접 워크플로우를 구성하려면 다음과 같이 설정합니다.
1. Code 노드에서 마크다운 생성:
// n8n Code 노드
const markdown = `---
created: ${new Date().toISOString()}
source: n8n
tags: [auto-generated]
---
# ${items[0].json.title}
${items[0].json.content}
`;
return [{
json: {
filename: items[0].json.title.replace(/[^a-zA-Z0-9가-힣\s-]/g, '').replace(/\s+/g, '-'),
content: markdown
}
}];2. GitHub 노드 설정:
| 설정 | 값 |
|---|---|
| Resource | File |
| Operation | Create |
| Repository | owner/repo |
| File Path | inbox/{{ $json.filename }}.md |
| File Content | {{ $json.content }} |
| Commit Message | Add: {{ $json.filename }} |
Safari나 다른 앱에서 공유 버튼을 눌러 웹페이지를 바로 Obsidian으로 저장할 수 있습니다.
- 단축어 앱 열기
- + 버튼으로 새 단축어 생성
- 다음 액션들을 순서대로 추가:
액션 1: 공유 시트에서 입력 받기
- 상단의 ⓘ 버튼 탭 → "공유 시트에서 보기" 활성화
- "공유 시트 유형"에서 URL 선택
액션 2: URL 콘텐츠 가져오기
| 설정 | 값 |
|---|---|
| URL | https://YOUR_N8N_DOMAIN/webhook/crawl-to-github |
| 방법 | POST |
| 요청 본문 | JSON |
JSON 본문:
{
"url": "단축어 입력"
}"단축어 입력"은 변수 선택에서 단축어 입력 선택
액션 3: 알림 보기
- 제목:
저장 완료 - 내용:
Obsidian으로 전송되었습니다.
- Safari에서 저장하고 싶은 웹페이지 열기
- 공유 버튼 (□↑) 탭
- 생성한 단축어 선택
- Obsidian에서 동기화 후 노트 확인
- 동기화된 파일은 SHA로 추적됩니다. 로컬에서 삭제해도 다시 다운로드되지 않습니다.
- 동기화 기록은 90일 후 자동으로 정리됩니다.
- 동기화 기록을 초기화하면 이전에 동기화된 파일이 다시 다운로드될 수 있습니다.
MIT