bottari
Tu configuración de Claude Code y Codex CLI vive en más de una máquina: Windows, un viejo portátil con Linux, un Mac. bottari las mantiene sincronizadas: empaqueta tus habilidades, ajustes, historial de sesiones y carpetas de proyecto en un paquete cifrado en tu propio Google Drive, y cada máquina se sincroniza con él. Solo los datos cifrados salen de tu ordenador.
Fusión por unión, nada se elimina. Lo que existe en un lado siempre se conserva. Solo se te pregunta cuando el mismo archivo ha cambiado en dos máquinas.
Historial de versiones. Cada sincronización es una generación;
bottari restorerecupera cualquier estado anterior.Cifrado de extremo a extremo. La nube contiene un único archivo en texto plano (parámetros de cifrado y una clave envuelta). Si olvidas tu contraseña, no hay forma de entrar: no hay puerta trasera.
Cero dependencias. Node.js 20+ y nada más.
Estado: 0.1.0. En uso diario en Windows, Linux y macOS. Versión temprana: espera asperezas, y lee SECURITY.md antes de confiarle algo que no puedas permitirte perder.
Instalación
Necesitas Node.js 20 o superior y una cuenta de Google. Comprueba Node con
node -v; si falta o es más antiguo, instálalo primero (según el sistema operativo, abajo).
Windows
# 1) Node — skip if `node -v` already prints v20+
winget install OpenJS.NodeJS.LTS
# 2) get bottari (pick one)
git clone https://github.com/dostevskii/bottari.git
# or: download the ZIP from the green "Code" button and unzip it
cd bottari
npm link # makes `bottari` available everywhere (optional)macOS
# 1) Node — skip if `node -v` already prints v20+
# with Homebrew:
brew install node
# or download the LTS .pkg from https://nodejs.org
# 2) get bottari
git clone https://github.com/dostevskii/bottari.git
cd bottari
npm link # optional; or run `node bin/bottari.mjs` directlyLinux
# 1) Node 20+ — use your distro (examples)
# Arch: sudo pacman -S nodejs npm
# Debian/Ubuntu: sudo apt install nodejs npm (check: node -v ≥ v20)
# Fedora: sudo dnf install nodejs
# 2) get bottari
git clone https://github.com/dostevskii/bottari.git
cd bottari
# A desktop keyring (gnome-keyring + libsecret) is recommended so the
# sign-in is stored securely; without one, bottari falls back to a 0600
# file and warns.Related MCP server: Ultimate Google Docs & Drive MCP Server
Primera ejecución
En la máquina que tenga más datos (normalmente la principal), ejecuta:
bottari init --remember-keyTe hace iniciar sesión en Google en el navegador y te pide que establezcas una contraseña.
Recuerda esta contraseña. Bloquea todo el paquete y no se puede recuperar.
--remember-keyguarda la clave en el almacén de credenciales de tu sistema operativo para que no se te vuelva a pedir, y para que la extensión de Claude Desktop pueda funcionar sin ella.
En el resto de máquinas, ejecuta el mismo comando: bottari descarga el paquete, lo fusiona con esa máquina (conservando todo lo exclusivo de cada una) y sube el resultado.
A partir de ahí, en el día a día, solo es:
bottari syncComandos
| sincronizar ( |
| muestra qué subiría o bajaría, sin cambiar nada |
| recupera archivos a una versión anterior |
| lista las versiones en la nube |
| diagnostica el entorno y el almacén |
| libera espacio de generaciones antiguas |
| añade una carpeta de proyecto a la sincronización |
| registra y compara las herramientas instaladas |
| rellena un secreto que se extrajo de una configuración |
| incluye también los tokens de MCP en el paquete (desactivado por defecto; consulta SECURITY.md) |
| iniciar / cerrar sesión en Google Drive |
Claude Desktop (MCP)
bottari incluye un servidor MCP para que Claude pueda manejarlo desde la aplicación de escritorio.
Compila el paquete:
node scripts/build-mcpb.mjs→dist/bottari.mcpbClaude Desktop → Ajustes → Extensiones → arrastra
bottari.mcpb.
Una vez que hayas ejecutado bottari sync --remember-key una vez en una terminal (para que la clave
quede almacenada), solo tienes que pedirle a Claude: "check my bottari status" o "sync bottari".
Los conflictos vuelven como una lista; tú eliges, y la siguiente sincronización lo aplica.
Qué se sincroniza
ejemplo | cómo | |
recursos | skills, CLAUDE.md, AGENTS.md, hooks | tal cual |
ajustes | settings.json, config.toml, servidores MCP | solo en forma neutra para la máquina; las rutas se convierten en marcadores de posición, los secretos pasan a tu almacén de credenciales del sistema operativo |
historial de sesiones | conversaciones | fragmentos de 8 MB, las adiciones se fusionan automáticamente |
proyectos | carpetas que registres | compartidos por nombre, ruta por máquina |
Los archivos de credenciales (.credentials.json, auth.json, …) nunca salen de tu
máquina, y un análisis de bloqueo ante fallos impide subir cualquier contenido con aspecto de credencial
antes de la subida. Las carpetas regenerables (node_modules, dist, …) y las cachés quedan excluidas.
Cuenta de Google
La compilación incluye un cliente OAuth con ámbito drive.file: solo ve
archivos creados por esta aplicación, nunca el resto de tu Drive. Cualquier cuenta de Google puede
iniciar sesión. Como la aplicación no ha pasado la verificación de Google (que
drive.file no requiere), el navegador muestra un aviso de "aplicación no verificada" una
vez; Avanzado → continuar permite seguir.
Como en cualquier aplicación instalada, el cliente integrado no es un secreto (RFC 8252
§8.5): identifica a bottari, no a ti. Si haces un fork y redistribuyes,
registra tu propio cliente y establece BOTTARI_CLIENT_ID / BOTTARI_CLIENT_SECRET.
Seguridad
Diseño y modelo de amenazas: SECURITY.md. El propio modelo de sincronización se define en docs/SYNC-MODEL.md.
Licencia
GPL-3.0-only · Copyright (C) 2026 JUNG HWANGBO <dostevskii@gmail.com>
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceConnects Claude Desktop to Google Drive, allowing Claude to access and interact with your Drive files and folders securely through OAuth authentication.1
- AlicenseNot gradedqualityDmaintenanceConnects Claude Desktop to Google Docs and Google Drive, enabling comprehensive document reading, writing, formatting, structuring, and complete Drive file management including shared drives support through OAuth 2.0 authentication.112MIT
- AlicenseNot gradedqualityDmaintenanceSyncs Claude Code sessions between machines with end-to-end encryption using a recovery phrase.2MIT
- FlicenseNot gradedqualityCmaintenanceEnables Claude to search, list, and download files from any Google Drive folder shared with a service account, without OAuth or browser login.
Related MCP Connectors
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Edit your Overleaf LaTeX projects from Claude and ChatGPT; every change is a real Git commit.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dostevskii/bottari'
If you have feedback or need assistance with the MCP directory API, please join our Discord server