关于 otakit
otakit 是面向 Capacitor 应用的开源 OTA 更新框架,可在不经应用商店审核的情况下推送 Web 资源更新。它提供控制台、CLI 和 Capacitor 插件,可选择托管服务或自行部署。适合需要快速发布 Capacitor 应用更新的移动开发者。
主要功能
- 01向 Capacitor 应用推送 OTA 更新
- 02命令行上传并发布版本
- 03发布前检查更新是否可安全下发
- 04失败时自动回滚到上一版本
- 05支持可自托管部署
- 06提供 MCP 服务与 Agent Skill
适用场景
- 01在不经应用商店审核的情况下修复 Capacitor 应用的 Web 层问题
- 02通过 staging 渠道先向部分版本发布更新
- 03借助 Claude Code 或 Codex 在获得批准后发布更新
MCP 相关
该项目提供 MCP 服务与 OtaKit Agent Skill,可在 Claude Code、Codex 或 VS Code 中读取 Capacitor 项目、上传构建并在发布前等待用户批准。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://console.otakit.app/mcpclaude mcp add --transport http otakit-otakit https://console.otakit.app/mcp{"mcpServers":{"otakit-otakit":{"type":"http","url":"https://console.otakit.app/mcp"}}}在 Cursor 中打开{"servers":{"otakit-otakit":{"type":"http","url":"https://console.otakit.app/mcp"}}}在 VS Code 中打开{"mcpServers":{"otakit-otakit":{"type":"http","url":"https://console.otakit.app/mcp"}}}{"mcpServers":{"otakit-otakit":{"serverUrl":"https://console.otakit.app/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
OtaKit
完全开源、可自托管的 Capacitor 应用无线更新框架。无需经过应用商店审核,即可直接向 Capacitor 应用发布更新。
免费试用:OtaKit.app
自托管
OtaKit 以托管服务为先——otakit.app 上的托管服务会为你处理所有事务——但整个平台都在此代码库中,也可以在你自己的基础设施上运行。最小化部署需要控制台(标准 Next.js 应用)、Postgres,以及 CDN 后方的 S3 兼容存储桶。
完整的分步指南:otakit.app/docs/self-host
工作原理
- 在控制台中创建应用。
- 将其
appId复制到capacitor.config.*。 - 构建应用的 Web 资源。
- 运行
otakit upload --release,上传捆绑包并发布版本。 - 服务端将捆绑包和清单写入 CDN 后方的对象存储。
- 应用下次启动或恢复运行时,插件会从 CDN 获取清单,将其与当前捆绑包进行比较,并在有新版本可用时下载该版本。
- 如果在超时时间内调用了
notifyAppReady(),新捆绑包就会得到确认;否则,插件会自动回滚到之前的捆绑包。
MCP 和 Agent Skills
让 Claude Code、Codex 或 VS Code 发布更新,它就会读取你的 Capacitor 项目,检查此次更改是否适合通过无线方式发布,上传构建产物,并在任何内容到达设备之前停下来等待你批准。
在项目目录中运行一条命令:
npx -y @otakit/cli@latest connect
它会检测你的客户端,并在需要时为你登录;随后会打印解析出的控制台、组织、项目和应用,以及将要写入的确切文件,然后才会写入任何内容。--dry-run 会显示计划,但不会写入任何内容。
Claude Code 提供了一个插件,可同时部署服务端和 OtaKit Agent Skill:
npx -y @otakit/cli@latest login
claude plugin marketplace add OtaKit/otakit
claude plugin install otakit@otakit
Codex、Claude Code、远程 OAuth、权限、工作流和自托管相关内容,请参阅 MCP 和 Agent Skills 指南。
核心概念
- 应用 — 由其
appId标识的 Capacitor 应用 - 捆绑包 — 一个已上传的 Web 构建 ZIP 文件,包含版本号、哈希值和大小
- 版本 — 将捆绑包发布到某个渠道,并向 CDN 发布清单
- 渠道 — 可选的发布轨道,例如
staging - 运行时版本 — 在插件中配置的可选原生兼容版本通道
软件包
packages/capacitor-plugin— 运行于移动应用内的运行时packages/cli— 用于上传捆绑包和创建版本的 CLIpackages/mcp-core— 共享的 MCP 契约、工具目录和服务注册packages/site— 公共网站、文档、联系页面和法律页面packages/console— 控制台、API、身份验证、计费和 Prisma 架构packages/ingest— 用于采集设备事件的 Cloudflare Workertinybird/— 用于事件分析的 Tinybird 数据源和管道
packages/
capacitor-plugin/ Capacitor OTA plugin
cli/ Upload + release CLI
mcp-core/ Shared MCP contracts and tool catalog
ingest/ Cloudflare Worker event ingest service
site/ Next.js public site + docs
console/ Next.js dashboard + API + auth + billing
tinybird/ Tinybird event analytics project
examples/
demo-app/ Demo Capacitor app wired to the local plugin
软件包文档
packages/capacitor-plugin/README.mdpackages/cli/README.mdpackages/ingest/README.mdpackages/site/README.mdpackages/console/README.mdtinybird/README.md
本地开发
- Node.js 20.9+、pnpm 9+
- 控制台应用(
packages/console)需要 Postgres 和兼容 R2 的存储。请参阅packages/console/.env.example。 - 设备事件分析可选依赖采集服务(
packages/ingest)和 Tinybird 工作区。 - 设置详情请参阅各软件包的 README。
pnpm install
pnpm dev # starts the console app in dev mode
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。