- Obsidian Sync, masaüstü uygulaması olmadan da komut satırı ortamında senkronizasyon yapabilen bir headless istemci sunuyor
- CI pipeline'ları, sunucular, otomasyon script'leri gibi etkileşimsiz ortamlarda vault senkronizasyonu gerçekleştirilebiliyor
ob sync komutuyla tek seferlik veya sürekli senkronizasyon çalıştırılabiliyor ve OBSIDIAN_AUTH_TOKEN ortam değişkeniyle otomatik kimlik doğrulama destekleniyor
- Uzak vault oluşturma, yerel bağlantı ayarlama, durum kontrolü, yapılandırma değiştirme gibi ayrıntılı komut seti içeriyor
- Windows ve macOS'ta dosya oluşturma zamanı (birthtime) değerini koruyan bir yerel modül sunarak veri bütünlüğünü güçlendiriyor
Genel bakış
- Obsidian Sync'in Headless Client aracı, masaüstü uygulaması olmadan vault senkronize etmeyi sağlar
- CI, otomasyon ajanları ve sunucu ortamlarında kullanışlıdır
- En güncel değişiklikleri çekebilir veya dosyaları sürekli güncel tutabilir
- Tek bir cihazda Desktop Sync ve Headless Sync aynı anda kullanılmamalıdır; veri çakışması riski vardır
- Kurulum
npm install -g obsidian-headless komutuyla yapılır
Temel kullanım
- Giriş:
ob login
- Uzak vault listesini görüntüleme:
ob sync-list-remote
- Yerel vault ayarlama:
ob sync-setup --vault "My Vault"
- Tek seferlik senkronizasyon:
ob sync
- Sürekli senkronizasyon:
ob sync --continuous
- Etkileşimsiz ortamlarda kimlik doğrulamayı otomatikleştirmek için
OBSIDIAN_AUTH_TOKEN ortam değişkeni ayarlanabilir
Başlıca komutlar
ob sync-list-remote: Hesaptaki tüm uzak vault'ların listesini gösterir; paylaşılan vault'lar da dahildir
ob sync-list-local: Yerelde ayarlanmış vault'ları ve yollarını gösterir
ob sync-create-remote: Yeni bir uzak vault oluşturur
- Seçenekler:
--name, --encryption(standard veya e2ee), --password, --region
ob sync-setup: Yerel ve uzak vault arasında bağlantı ayarlar
- Seçenekler:
--vault, --path, --password, --device-name, --config-dir
ob sync: Ayarlanmış vault için senkronizasyonu çalıştırır
--continuous seçeneğiyle değişiklik izleme ve sürekli senkronizasyon desteklenir
ob sync-config: Vault'un senkronizasyon ayarlarını görüntüler veya değiştirir
- Çakışma stratejisi (
merge/conflict), dosya türleri, senkronize edilecek ayar kategorileri ve hariç tutulacak klasörler belirtilebilir
ob sync-status: Vault'un senkronizasyon durumunu ve ayarlarını gösterir
ob sync-unlink: Vault'u senkronizasyondan ayırır ve kaydedilmiş kimlik bilgilerini siler
Yerel modül
- Windows ve macOS için dosya oluşturma zamanını (birthtime) ayarlayan bir yerel eklenti içerir
- Sunucudan dosya indirilirken özgün oluşturma zamanı korunur
- N-API sürüm 3'ü hedefler ve Node.js sürümleri arasında ABI uyumluluğunu korur
- Linux'ta birthtime desteklenmediği için eklenti dahil edilmez, ancak senkronizasyon normal şekilde çalışır
- Önceden derlenmiş ikili hedefler:
win32-x64, win32-arm64, win32-ia32, darwin-x64, darwin-arm64
1 yorum
Hacker News yorumları
resmi dokümanlara bakılabilir.
Son zamanlarda Obsidian’ı yapay zeka CLI’larıyla birlikte kullanmak gerçekten çok eğlenceli. Eklenti olmadan da, sadece bir Markdown dizin yapısı olduğu için hemen kullanılabiliyor.
Herkes ücretli Obsidian Sync mi kullanıyor, yoksa SyncThing gibi alternatiflere mi yöneliyor merak ediyorum.
Ayrıca obsidian-headless kurulunca CLI’nin de birlikte gelip gelmediğini, yoksa bunun sadece senkronizasyon için mi olduğunu merak ediyor.
Artık resmi Obsidian Sync’i değerlendirmeyi düşünüyorum.
Örneğin aynı anda düzenleme yapıldığında bir taraf diğerinin üstüne yazarsa, benim değişikliklerime ne olacağını bilmek istiyorum.
Durum değişiklikleri veya cron job aracılığıyla belirli notları otomatik güncellemek istiyor ama tüm vault erişiminden kaçınmak istiyor.
Ürünü beğendiği için VIP Catalyst de satın almış.
Örneğin projede sadece bir
readme.mdvarsa, onu açmak için ayrı bir vault ve ayar dosyaları oluşturmak istemiyorum.Ancak Obsidian’ın birçok özelliği vault düzeyindeki ayarlara bağlı olduğu için bu basit değil.
Örneğin hangi temanın kullanılacağı, hangi eklentilerin etkin olacağı,
[[link]]otomatik tamamlamasının nasıl ele alınacağı gibi düşünülmesi gereken pek çok şey var.Sunucu tarafı otomasyon ya da RAG tabanlı işler için gerçekten çok faydalı görünüyor.
Bununla ilgili yazdığım deneysel bir blog yazısı da var → utf9k.net/blog/obsidian-headless
Bu iş akışı kusursuz değil ama yazı yazıp hemen yayımlamaya kadar olan sürtünmeyi azalttığını hissettiriyor.
Eskiden Git ya da çeşitli Obsidian eklentilerini bir araya getiriyordum ama bu hep karmaşık oluyordu.
Görünüşe göre tamamen yanlış kullanıyormuşum.
ChatGPT gibi belgeyle konuşarak düzenleme yapmak istiyorum ama henüz uygun bir şey bulamadım.
Belgenin tamamını yeniden yazmadan, kısmi düzenleme yapan tool calling mümkün mü ondan da emin değilim.
Bu özellik sayesinde telefonda senkronize edip masaüstünde belgeleri Neovim ile açabilirim gibi görünüyor.
Sadece Markdown dosyalarıysa CLI neden gerekli, ayrıca yapay zeka CLI üzerinden vault’u nasıl kullanıyor merak ediyorum.
Zaten özel bir skill ile oldukça iyi çalışıyordu ama bu özellik iş akışını daha da pürüzsüz hâle getirecek gibi görünüyor.
Ayrıca LanceDB embedding indeksleme ve anlamsal aramayı gerçekleştirmek için obsidian-semantic-search adlı bir CLI aracı da geliştirdim.
Bu sayede notlar arasında daha iyi iç bağlantılar kurulabiliyor.