bottari
你的 Claude Code 和 Codex CLI 配置分布在多台机器上——Windows、一台旧 Linux 笔记本、一台 Mac。bottari 让它们保持同步:它将你的技能、设置、会话历史和项目文件夹打包成加密捆绑包,存放在你自己的 Google Drive 上,每台机器都与之同步。只有加密数据才会离开你的电脑。
并集合并,不删除任何内容。 任何一侧已有的内容始终保留。只有当同一文件在两台机器上都有修改时,才会询问你。
版本历史。 每次同步都是一个世代;
bottari restore可以恢复任何较早的状态。端到端加密。 云端只保存一个明文文件(加密参数和一个包装密钥)。忘记密码就无法进入——没有后门。
零依赖。 只需要 Node.js 20+,没有其他要求。
状态:0.1.0。 已在 Windows、Linux 和 macOS 上日常使用。早期版本——可能会有粗糙之处,在用它保存任何你无法丢失的内容之前,请阅读 SECURITY.md。
安装
你需要 Node.js 20 或更高版本 和一个 Google 账户。用 node -v 检查 Node;如果缺失或版本过旧,请先安装(各操作系统说明见下文)。
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
首次运行
在数据最多的机器上(通常是你的主力机),运行:
bottari init --remember-key它会在浏览器中让你登录 Google,并要求你设置一个密码。
记住这个密码。 它锁定了整个捆绑包,无法找回。
--remember-key将密钥存储在操作系统的凭据库中,这样就不会再询问你——Claude Desktop 扩展也因此无需密码即可工作。
在其他每台机器上,运行相同的命令:bottari 下载捆绑包,与那台机器合并(保留每台机器独有的内容),然后上传结果。
之后,日常使用只需:
bottari sync命令
| 同步( |
| 显示将要上传或下载的内容,不做任何更改 |
| 将文件恢复到较早的版本 |
| 列出云端中的版本 |
| 诊断环境和存储 |
| 回收旧世代占用的空间 |
| 将项目文件夹添加到同步中 |
| 记录并比较已安装的工具 |
| 填写从配置中拆分出的机密 |
| 也在捆绑包中携带 MCP 令牌(默认关闭——见 SECURITY.md) |
| 登录 / 退出 Google Drive |
Claude Desktop (MCP)
bottari 附带一个 MCP 服务器,让 Claude 可以从桌面应用中驱动它。
构建捆绑包:
node scripts/build-mcpb.mjs→dist/bottari.mcpbClaude Desktop → 设置 → 扩展 → 将
bottari.mcpb拖入。
一旦你在终端中运行过一次 bottari sync --remember-key(这样密钥就会被存储),只需告诉 Claude:"检查我的 bottari 状态" 或 "同步 bottari"。冲突会以列表形式返回;由你选择,下一次同步就会应用。
同步内容
示例 | 方式 | |
资产 | skills、CLAUDE.md、AGENTS.md、hooks | 原样 |
设置 | settings.json、config.toml、MCP 服务器 | 仅机器中立形式;路径变为占位符,机密移至操作系统凭据库 |
会话历史 | 对话 | 8 MB 分块,追加自动合并 |
项目 | 你注册的文件夹 | 按名称共享,每台机器路径不同 |
凭据文件(.credentials.json、auth.json 等)永远不会离开你的机器,并且在上传前会进行故障安全扫描,阻止任何看似凭据的内容。可重新生成的文件夹(node_modules、dist 等)和缓存会被排除。
Google 账户
构建中嵌入了一个作用域为 drive.file 的 OAuth 客户端——它只能看到此应用创建的文件,永远不会看到你 Drive 中的其他内容。任何 Google 账户都可以登录。由于该应用未通过 Google 的验证(drive.file 不需要验证),浏览器会显示一次"未验证应用"提示;高级 → 继续 即可继续。
与任何已安装的应用一样,嵌入的客户端并非机密(RFC 8252 §8.5)——它标识的是 bottari,而不是你。如果你分叉并重新分发,请注册自己的客户端并设置 BOTTARI_CLIENT_ID / BOTTARI_CLIENT_SECRET。
安全
设计与威胁模型:SECURITY.md。同步模型本身定义在 docs/SYNC-MODEL.md 中。
许可证
GPL-3.0-only · 版权所有 (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