-
Obsidian Sync가 데스크톱 앱 없이도 명령줄 환경에서 동기화할 수 있는 헤드리스 클라이언트를 제공
- CI 파이프라인, 서버, 자동화 스크립트 등 비대화형 환경에서 vault 동기화를 수행 가능
-
ob sync 명령으로 단발성 또는 지속적 동기화를 실행하며, OBSIDIAN_AUTH_TOKEN 환경 변수로 자동 인증 지원
- 원격 vault 생성, 로컬 연결 설정, 상태 확인, 설정 변경 등 세부 명령어 세트를 포함
- Windows와 macOS에서는 파일 생성 시각(birthtime) 을 유지하는 네이티브 모듈을 제공해 데이터 무결성을 강화
개요
- Obsidian Sync의 Headless Client는 데스크톱 앱 없이 vault를 동기화할 수 있는 도구
- CI, 자동화 에이전트, 서버 환경 등에서 유용
- 최신 변경사항을 가져오거나 파일을 지속적으로 최신 상태로 유지 가능
- 한 기기에서는 데스크톱 Sync와 Headless Sync를 동시에 사용하지 않아야 함, 데이터 충돌 위험 존재
- 설치는 npm install -g obsidian-headless 명령으로 수행
기본 사용법
- 로그인: ob login
- 원격 vault 목록 확인: ob sync-list-remote
- 로컬 vault 설정: ob sync-setup --vault "My Vault"
- 단발성 동기화: ob sync
- 지속적 동기화: ob sync --continuous
- 비대화형 환경에서는 OBSIDIAN_AUTH_TOKEN 환경 변수를 설정해 인증 자동화 가능
주요 명령어
-
ob sync-list-remote: 계정의 모든 원격 vault 목록 표시, 공유 vault 포함
-
ob sync-list-local: 로컬에 설정된 vault와 경로 표시
-
ob sync-create-remote: 새 원격 vault 생성
- 옵션: --name, --encryption(standard 또는 e2ee), --password, --region
-
ob sync-setup: 로컬과 원격 vault 연결 설정
- 옵션: --vault, --path, --password, --device-name, --config-dir
-
ob sync: 설정된 vault 동기화 실행
-
--continuous 옵션으로 변경 감시 및 지속 동기화 지원
-
ob sync-config: vault의 동기화 설정 조회 또는 변경
- 충돌 전략(merge/conflict), 파일 유형, 동기화할 설정 범주, 제외 폴더 등 지정 가능
-
ob sync-status: vault의 동기화 상태와 설정 표시
-
ob sync-unlink: vault를 동기화에서 분리하고 저장된 자격 증명 삭제
네이티브 모듈
- Windows와 macOS용으로 파일 생성 시각(birthtime) 을 설정하는 네이티브 애드온 포함
- 서버에서 파일을 다운로드할 때 원본 생성 시각을 유지
- N-API 버전 3을 대상으로 하며, Node.js 버전 간 ABI 호환 유지
- Linux에서는 birthtime이 지원되지 않아 애드온이 포함되지 않지만, 동기화는 정상 작동
- 사전 빌드된 바이너리 대상:
-
win32-x64, win32-arm64, win32-ia32, darwin-x64, darwin-arm64