[[Introducción a Obsidian Sync|Obsidian Sync]] ofrece un cliente sin interfaz gráfica para sincronizar bóvedas sin usar la aplicación de escritorio. Útil para pipelines de CI, agentes y flujos de trabajo automatizados. Sincroniza los últimos cambios o mantén los archivos continuamente actualizados. Instala [[Obsidian Headless]] **(beta abierta)** para interactuar con [[Introducción a Obsidian Sync|Obsidian Sync]] desde la línea de comandos sin la aplicación de escritorio de Obsidian. Sync sin interfaz gráfica usa las mismas [[Seguridad y privacidad|protecciones de cifrado y privacidad]] que la aplicación de escritorio, incluyendo cifrado de extremo a extremo. ## Inicio rápido > [!error] Respalda tus datos antes de comenzar > 1. Siempre respalda tus datos antes de comenzar en caso de que ocurra algo inesperado. > 2. No uses *ambos* Sync de la aplicación de escritorio y Sync sin interfaz gráfica en el mismo dispositivo, ya que puede causar conflictos de datos. Usa solo un método de sincronización por dispositivo. Instala [[Obsidian Headless|Obsidian Headless]] **(beta abierta)**: ```shell npm install -g obsidian-headless ``` Debes tener una [[Planes y límites de almacenamiento|suscripción activa a Obsidian Sync]]. ```shell # Iniciar sesión ob login # Listar tus bóvedas remotas ob sync-list-remote # Configurar una bóveda para sincronización cd ~/vaults/my-vault ob sync-setup --vault "My Vault" # Ejecutar una sincronización única ob sync # Ejecutar sincronización continua (observa cambios) ob sync --continuous ``` ## Comandos ### `ob sync-list-remote` Lista todas las bóvedas remotas disponibles para tu cuenta, incluyendo bóvedas compartidas. ### `ob sync-list-local` Lista las bóvedas configuradas localmente y sus rutas. ### `ob sync-create-remote` Crea una nueva bóveda remota. ``` ob sync-create-remote --name "Vault Name" [--encryption <standard|e2ee>] [--password <password>] [--region <region>] ``` | Opción | Descripción | | --- | --- | | `--name` | Nombre de la bóveda (requerido) | | `--encryption` | `standard` para cifrado administrado, `e2ee` para cifrado de extremo a extremo | | `--password` | Contraseña de cifrado de extremo a extremo (se solicita si se omite) | | `--region` | [[Regiones de Sync\|Región]] del servidor (automático si se omite) | ### `ob sync-setup` Configura la sincronización entre una bóveda local y una bóveda remota. ``` ob sync-setup --vault <id-or-name> [--path <local-path>] [--password <password>] [--device-name <name>] [--config-dir <name>] ``` | Opción | Descripción | | --- | --- | | `--vault` | ID o nombre de la bóveda remota (requerido) | | `--path` | Directorio local (predeterminado: directorio actual) | | `--password` | Contraseña de cifrado E2E (se solicita si se omite) | | `--device-name` | Nombre del dispositivo mostrado en el [[Historial de versiones\|historial de versiones de sync]] | | `--config-dir` | Nombre del [[Carpeta de configuración\|directorio de configuración]] (predeterminado: `.obsidian`) | ### `ob sync` Ejecuta la sincronización para una bóveda configurada. ``` ob sync [--path <local-path>] [--continuous] ``` | Opción | Descripción | | --- | --- | | `--path` | Ruta de la bóveda local (predeterminado: directorio actual) | | `--continuous` | Ejecutar continuamente, observando cambios | ### `ob sync-config` Visualiza o cambia los [[Ajustes de Sync y sincronización selectiva|ajustes de sincronización]] de una bóveda. Ejecuta sin opciones para mostrar la configuración actual. ``` ob sync-config [--path <local-path>] [options] ``` | Opción | Descripción | | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `--path` | Ruta de la bóveda local (predeterminado: directorio actual) | | `--mode` | Modo de sincronización: `bidirectional` (predeterminado), `pull-only` (solo descargar, ignorar cambios locales), o `mirror-remote` (solo descargar, revertir cambios locales) | | `--conflict-strategy` | `merge` o `conflict` | | `--file-types` | Tipos de adjuntos a sincronizar: `image`, `audio`, `video`, `pdf`, `unsupported` (separados por comas, vacío para limpiar) | | `--configs` | Categorías de configuración a sincronizar: `app`, `appearance`, `appearance-data`, `hotkey`, `core-plugin`, `core-plugin-data`, `community-plugin`, `community-plugin-data` (separados por comas, vacío para desactivar la sincronización de configuración) | | `--excluded-folders` | Carpetas a excluir (separadas por comas, vacío para limpiar) | | `--device-name` | Nombre del dispositivo para identificar este cliente en el historial de versiones de sincronización | | `--config-dir` | Nombre del directorio de configuración (predeterminado: `.obsidian`) | ### `ob sync-status` Muestra el estado de sincronización y la configuración de una bóveda. ``` ob sync-status [--path <local-path>] ``` ### `ob sync-unlink` Desconecta una bóveda de la sincronización y elimina las credenciales almacenadas. ``` ob sync-unlink [--path <local-path>] ``` ## Módulos nativos Obsidian Headless incluye un complemento nativo precompilado para establecer la hora de creación de archivos (birthtime) en Windows y macOS. Esto preserva las marcas de tiempo de creación originales al descargar archivos del servidor. El complemento apunta a la versión 3 de N-API, por lo que los binarios compilados son estables en ABI y funcionan en distintas versiones de Node.js sin recompilación. En Linux, birthtime no es compatible — el complemento no se incluye y la sincronización opera normalmente sin él. Los binarios precompilados están incluidos para: - `win32-x64` - `win32-arm64` - `win32-ia32` - `darwin-x64` - `darwin-arm64`