Obsidian Sync가 이제 헤드리스 클라이언트를 지원

3 weeks ago 10

  • 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

Read Entire Article