mcpField
O
otakit

otakit

远程服务
github.com/OtaKit开发工具466 天前更新
代码仓库

关于 otakit

otakit 是面向 Capacitor 应用的开源 OTA 更新框架,可在不经应用商店审核的情况下推送 Web 资源更新。它提供控制台、CLI 和 Capacitor 插件,可选择托管服务或自行部署。适合需要快速发布 Capacitor 应用更新的移动开发者。

主要功能

  1. 01向 Capacitor 应用推送 OTA 更新
  2. 02命令行上传并发布版本
  3. 03发布前检查更新是否可安全下发
  4. 04失败时自动回滚到上一版本
  5. 05支持可自托管部署
  6. 06提供 MCP 服务与 Agent Skill

适用场景

  1. 01在不经应用商店审核的情况下修复 Capacitor 应用的 Web 层问题
  2. 02通过 staging 渠道先向部分版本发布更新
  3. 03借助 Claude Code 或 Codex 在获得批准后发布更新

MCP 相关

该项目提供 MCP 服务与 OtaKit Agent Skill,可在 Claude Code、Codex 或 VS Code 中读取 Capacitor 项目、上传构建并在发布前等待用户批准。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://console.otakit.app/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npm@otakit/cli1.10.0

工具

详细介绍

OtaKit

完全开源、可自托管的 Capacitor 应用无线更新框架。无需经过应用商店审核,即可直接向 Capacitor 应用发布更新。

免费试用:OtaKit.app

自托管

OtaKit 以托管服务为先——otakit.app 上的托管服务会为你处理所有事务——但整个平台都在此代码库中,也可以在你自己的基础设施上运行。最小化部署需要控制台(标准 Next.js 应用)、Postgres,以及 CDN 后方的 S3 兼容存储桶。

完整的分步指南:otakit.app/docs/self-host

工作原理

  1. 在控制台中创建应用。
  2. 将其 appId 复制到 capacitor.config.*。
  3. 构建应用的 Web 资源。
  4. 运行 otakit upload --release,上传捆绑包并发布版本。
  5. 服务端将捆绑包和清单写入 CDN 后方的对象存储。
  6. 应用下次启动或恢复运行时,插件会从 CDN 获取清单,将其与当前捆绑包进行比较,并在有新版本可用时下载该版本。
  7. 如果在超时时间内调用了 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 — 用于上传捆绑包和创建版本的 CLI
  • packages/mcp-core — 共享的 MCP 契约、工具目录和服务注册
  • packages/site — 公共网站、文档、联系页面和法律页面
  • packages/console — 控制台、API、身份验证、计费和 Prisma 架构
  • packages/ingest — 用于采集设备事件的 Cloudflare Worker
  • tinybird/ — 用于事件分析的 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

软件包文档

本地开发

  • 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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。