- Obsidian Sync ahora ofrece un cliente headless que permite sincronizar desde la línea de comandos sin la app de escritorio
- Es posible realizar la sincronización de vaults en entornos no interactivos como pipelines de CI, servidores y scripts de automatización
- Con el comando
ob sync se puede ejecutar una sincronización puntual o continua, y se admite autenticación automática mediante la variable de entorno OBSIDIAN_AUTH_TOKEN
- Incluye un conjunto detallado de comandos para crear vaults remotos, configurar enlaces locales, consultar el estado y cambiar la configuración
- En Windows y macOS ofrece un módulo nativo que conserva la fecha de creación del archivo (birthtime) al crear archivos, reforzando la integridad de los datos
Descripción general
- El cliente Headless de Obsidian Sync es una herramienta para sincronizar vaults sin la app de escritorio
- Es útil en entornos de CI, agentes de automatización y servidores
- Permite traer los cambios más recientes o mantener los archivos actualizados de forma continua
- En un mismo dispositivo no se debe usar al mismo tiempo Sync de escritorio y Headless Sync, ya que existe riesgo de conflictos de datos
- La instalación se realiza con el comando
npm install -g obsidian-headless
Uso básico
- Iniciar sesión:
ob login
- Ver la lista de vaults remotos:
ob sync-list-remote
- Configurar un vault local:
ob sync-setup --vault "My Vault"
- Sincronización puntual:
ob sync
- Sincronización continua:
ob sync --continuous
- En entornos no interactivos, se puede automatizar la autenticación configurando la variable de entorno
OBSIDIAN_AUTH_TOKEN
Comandos principales
ob sync-list-remote: muestra la lista de todos los vaults remotos de la cuenta, incluidos los vaults compartidos
ob sync-list-local: muestra los vaults configurados localmente y sus rutas
ob sync-create-remote: crea un nuevo vault remoto
- Opciones:
--name, --encryption(standard o e2ee), --password, --region
ob sync-setup: configura el enlace entre un vault local y uno remoto
- Opciones:
--vault, --path, --password, --device-name, --config-dir
ob sync: ejecuta la sincronización del vault configurado
- La opción
--continuous permite vigilar cambios y mantener una sincronización continua
ob sync-config: consulta o cambia la configuración de sincronización del vault
- Permite definir la estrategia de conflictos (
merge/conflict), los tipos de archivo, las categorías de configuración a sincronizar y las carpetas excluidas, entre otros
ob sync-status: muestra el estado de sincronización y la configuración del vault
ob sync-unlink: desvincula el vault de la sincronización y elimina las credenciales guardadas
Módulo nativo
- Incluye un addon nativo para Windows y macOS que establece la fecha de creación del archivo (birthtime)
- Conserva la fecha de creación original al descargar archivos desde el servidor
- Está dirigido a N-API versión 3 y mantiene compatibilidad ABI entre versiones de Node.js
- En Linux no se admite birthtime, por lo que el addon no está incluido, pero la sincronización funciona normalmente
- Objetivos de los binarios precompilados:
win32-x64, win32-arm64, win32-ia32, darwin-x64, darwin-arm64
1 comentarios
Comentarios en Hacker News
Consulta la documentación oficial
Últimamente ha sido muy divertido usar Obsidian junto con una AI CLI. Como al final solo es una estructura de directorios Markdown, se puede aprovechar de inmediato sin plugins
Me pregunto si la mayoría usa el Obsidian Sync de pago o alternativas como SyncThing
También tienen curiosidad por saber si al instalar obsidian-headless viene incluida la CLI, o si es solo para sincronización
Ahora sí voy a considerar el Obsidian Sync oficial
Por ejemplo, si dos partes editan al mismo tiempo y una sobrescribe a la otra, quiero saber qué pasa con mis cambios
Quieren actualizar automáticamente notas específicas con cambios de estado o cronjobs, pero prefieren evitar acceso a todo el vault
El producto les gustó tanto que incluso compraron VIP Catalyst
Por ejemplo, si en un proyecto solo hay un readme.md, no quisiera tener que crear un vault aparte y archivos de configuración solo para abrirlo
Pero no es algo simple, porque muchas funciones de Obsidian dependen de la configuración a nivel de vault
Por ejemplo, qué tema usar, qué plugins activar, cómo manejar el autocompletado de [[enlaces]], etc.
Parece que será realmente útil para automatización del lado del servidor o trabajos basados en RAG
Sobre eso, tengo una entrada de blog experimental → utf9k.net/blog/obsidian-headless
Este flujo de trabajo no es perfecto, pero se siente que reduce la fricción entre escribir y publicar de inmediato
Antes combinaba Git o varios plugins de Obsidian, pero siempre terminaba siendo complicado
Parece que lo estaba usando completamente mal
Quiero conversar con el documento y editarlo como con ChatGPT, pero todavía no encuentro algo adecuado
También me pregunto si existe tool calling para hacer modificaciones parciales sin reescribir todo el documento
Con esta función podría sincronizar desde el teléfono y abrir los documentos con Neovim en el escritorio
Si al final solo son archivos Markdown, me pregunto por qué hace falta una CLI y cómo manejaría la AI el vault a través de ella
Ya funciona bastante bien con habilidades personalizadas, pero esta nueva función parece que hará el flujo de trabajo más fluido
Además, creé una herramienta CLI llamada obsidian-semantic-search para implementar indexación de embeddings en LanceDB y búsqueda semántica
Con eso se pueden crear mejor las conexiones internas entre notas