内容
# 非官方 GMI 云 CLI
[](https://github.com/yannan000/unofficial-gmi-cloud-cli/actions/workflows/ci.yml)
[](https://www.npmjs.com/package/unofficial-gmi-cloud-cli)
[](https://www.npmjs.com/package/unofficial-gmi-cloud-cli)
[](LICENSE)
> **你的终端现在是一个电影工作室。**
> 一条命令调用 GMI Studio 的 300 多个模型——图像、视频、音频和大型语言模型——并处理上传、格式转换、轮询、下载和成本检查。
> ⚠️ **非官方社区工具,适用于 GMI Studio**。不隶属于 GMI Cloud 或得到其认可。MIT 许可,携带自己的 API 密钥——该工具不会增加任何额外费用。
---
## 你不需要成为开发者
如果你使用 AI 助手——Claude、Cursor、Codex、Windsurf、Cline、Kilo、droid、Grok——**它可以为你设置并驱动它。** 复制这句话,粘贴到你的助手,完成后:
> **按照 https://github.com/yannan000/unofficial-gmi-cloud-cli 中的“For AI agents”步骤设置 GMI CLI,然后运行 `gmi doctor` 以确认一切正常。**
你的助手唯一需要你提供的信息是 GMI API 密钥。 [**在此注册 GMI Cloud**](https://console.gmicloud.ai/ref/ZB44WJST) *(推荐链接)*,然后在 **API Keys** 下创建密钥——它只显示一次,所以在它出现时复制它。
### 然后直接说出你想要的
你说话。你的助手运行工作室。一些创作者这样说:
- *"制作一个 9:16 的罗马士兵 POV 视频,自己拍摄自己在战斗前一天的自拍,带有自拍角度、对着镜头说话和手持抖动。"*
- *"大脚怪早晨日常视频博客,第 2 集。与上一集相同的大脚怪——使用昨天的关键帧,以便他看起来一模一样。"*
- *"玻璃水果切割 ASMR——刀切一个半透明的玻璃草莓放在木制板上,宏观拍摄,清晰的声音开启。"*
- *"这是我的产品照片——制作一个 UGC 风格的广告,一个女人拿着它,对着镜头说话,15 秒,垂直方向。"*
- *"这是我的一张照片——把我放在阿根廷球衣中,动画我进而打进世界杯进球,梅西助攻。"* (这可行——参见下面的配方。一个三幕电影的成本约为 12 美元。)
- *"为我的无脸频道视频生成 10 个 B 卷片段,关于古代埃及,以及脚本的语音。"*
- *"在夜间批量处理本周的 5 个短视频,并将它们放在我的内容文件夹中——在执行前告诉我成本。"*
你的助手会选择模型,检查价格 **在花费前**,上传你的文件(iPhone HEIC 照片可以),等待渲染结果,并下载结果。如果某些配置错误,它会花费 0 美元——每个作业在提交前都会验证。
### 这到底是什么,一段描述
GMI Studio 是一个网站,你可以在那里使用 300 多个 AI 模型(Kling、Veo、Sora、Gemini Image、MiniMax……)制作图像、视频和音频。它对于单个图像非常好——但是制作真正的批量内容(例如一批广告、一个多场景视频)意味着需要数十次上传、点击、标签页和下载。这个工具将所有这些变成 AI 助手(或你)可以运行的命令——因此工作发生在你做其他事情时。
---
## 与每个 AI 助手兼容
该软件包既是一个 **CLI(命令)** 又是一个 **MCP 服务器(原生工具集成)**。一条命令配置任何客户端:
```bash
gmi mcp-config # 列出所有支持的客户端及其配置文件
gmi mcp-config cursor --install # 编写配置文件(备份旧配置文件)
```
| 客户端 | 设置 |
|--------|-------|
| Claude Code / Cowork | `gmi mcp-config claude-code` → 打印 `claude mcp add` 一行命令(Cowork 共享它;Cowork 代理也可以直接在终端中驱动 `gmi` CLI) |
| Claude Desktop | `gmi mcp-config claude-desktop --install` |
| Cursor | `gmi mcp-config cursor --install` |
| Windsurf (Cognition) | `gmi mcp-config windsurf --install` |
| Cline (VS Code) | `gmi mcp-config cline --install` (或通过 Cline 的 MCP UI 粘贴) |
| Kilo Code (VS Code) | `gmi mcp-config kilo --install` |
| OpenAI Codex CLI | `gmi mcp-config codex` → `~/.codex/config.toml` 的 TOML |
| Grok CLI | `gmi mcp-config grok --install` |
| Factory (droid) | `gmi mcp-config factory --install` |
| 其他 | `gmi mcp-config generic` — 标准 `mcpServers` JSON |
在你的 IDE 配置中没有 API 密钥:服务器自动从 `~/.config/gmi/.env` 加载 `GMI_API_KEY`。 `gmi mcp` 启动相同的服务器——在自定义配置中很方便,npm 安装后它是 `npx -y unofficial-gmi-cloud-cli mcp`。
### ChatGPT 和 claude.ai(远程连接器)
浏览器聊天(ChatGPT,claude.ai)无法运行本地程序——它们只连接到 **远程** MCP 服务器通过 HTTPS。 `gmi mcp --http` 提供确切的功能:
```bash
# 强令牌是必需的——它保护一个连接到你的 GMI 密钥的端点
GMI_MCP_TOKEN=$(openssl rand -hex 24) gmi mcp --http --port 8787
```
这暴露了两个端点:`/mcp`(Streamable HTTP——Claude Code `--transport http`,现代客户端)和 `/sse`(适用于 ChatGPT 连接器)。将其放在你控制的隧道后面(例如 `cloudflared tunnel --url http://localhost:8787`),然后将公共 URL 添加为连接器:
- **ChatGPT** — 设置 → 连接器 → 添加你的 `https://…/sse` URL,认证头 `Authorization: Bearer <your token>`
- **claude.ai** — [claude.ai/customize/connectors](https://claude.ai/customize/connectors) → 添加 `https://…/mcp` 并使用相同的 bearer 头
- **Claude Code(远程)** — `claude mcp add --transport http gmi-studio https://…/mcp --header "Authorization: Bearer <token>"`
> ⚠️ **安全:** HTTP 端点花费你的 GMI 积分,任何拥有 URL + 令牌的人都可以访问。它需要一个 16 个字符的 `GMI_MCP_TOKEN`,并且如果没有令牌则拒绝启动。绑定到 localhost + 私有隧道;绝不能公开暴露它。聊天应用没有本地文件系统,因此 `generate` 返回媒体 **URL** 而不是下载文件——本地 CLI 仍然是保存资产的最佳体验。
## 它适用于谁
| 你是… | 你的痛点 | 你得到什么 |
|----------|-----------|--------------|
| **创作者** 每天发货(短视频、ASMR、UGC 广告、无脸频道) | 控制台吞吐量;格式墙;意外花费 | 分镜头静帧,批量渲染,下载到 `./clips` — 每张图片一个命令 |
| **开发者** 将生成媒体添加到产品或管道中 | API 包装器工作周;重试/幂等雷区 | 已经过测试的客户端 - 39 个测试固定实际 API 行为 |
| **代理用户** (Claude、Cursor、Codex、droid……) | 想要 AI **完成**整个工作 | 一个 MCP 服务器 = 你的助手看到所有 300 多个模型并运行整个渲染管道 |
## 没有额外费用
通过此工具完成的工作与在 GMI 控制台中生成的费用完全相同。你携带自己的 API 密钥;工具不会增加任何费用。实际上,由于每个作业在提交前都会估算和验证成本,因此往往 **更便宜** —— 本地失败的作业不会花费积分,`--dry-run` 预览任何作业而不花费一分钱。
---
## 开发者
### 为什么存在
使用 GMI Studio 按生产节奏意味着要克服四种摩擦:
- **控制台点击工作** — 每次生成都是一个浏览器会话。对于单个图像来说很好,但对于 12 张图片的故事板来说很残酷。
- **原始 API 管道** — 具有怪癖的异步作业队列(预签名上传会签署一个字面上的 `image/jpg` 内容类型,要轮询的作业,媒体 URL 嵌套在 JSON 中)。每个开发者都会重建相同的包装器。
- **格式墙** — 上传 API 接受六种文件类型;创作者生活在 HEIC、WebP、MOV 和 FLAC 中。
- **盲目花费** — 格式错误的负载和过度规范的作业会花费积分才能发现。
| | |
|---|---|
| ⚡ **每张图片一个命令** | `gmi generate -m kling-v3-image-to-video --image ./keyframe.heic -p "..." -o ./clips` — 一行命令上传、转换、提交、轮询和下载 |
| 📁 **任何文件输入** | HEIC、WebP、TIFF、MOV、FLAC — 上传前自动转换(通过 macOS `sips` 或 `ffmpeg`) |
| 💰 **永远不会支付错误费用** | 有效载荷针对模型模式验证并 **定价后提交**;失败的提交费用为 0 美元; `--dry-run` 预览所有内容 |
| 🔁 **异步,驯服** | 实时进度,时间流逝,`Ctrl+C` 打印恢复命令,重试永远不会重复提交付费作业 |
| 🤖 **代理原生** | 相同的软件包是一个具有 7 个类型工具的 MCP 服务器 |
| 🧠 **包含生产知识** | 哪些提供商接受人类相似度(Kling ✓,Seedance ✗ — 甚至 AI 渲染的) — 在实际生产中学习 |
它涵盖了 GMI 的两个界面,具有一个共享的客户端:
- **Studio / 生成媒体** — 通过 `console.gmicloud.ai/api/v1/ie/requestqueue/apikey` 的异步请求队列
- **推理引擎 LLM** — 与 OpenAI 兼容的聊天在 `api.gmi-serving.com/v1`(DeepSeek、Qwen、Llama、…)
> **范围(此版本):** `gmi` 仅驱动 **GMI Studio 生成** 侧面 — 运行模型以生成图像、视频和音频,以及 LLM 推理。已发布的 GMI Studio **工作流** 也是可运行的,因为它们出现在模型目录中(`gmi generate -m <workflow-id> …`)。**创建或编辑** 工作流 — 包括自然语言工作流创作 — 在 GMI Studio 视觉编辑器中完成,**不** 是此 CLI 的一部分(GMI 不公开提供创作 API)。如果发生变化,支持可以跟进。
### 设置
```bash
npm install && npm run build
```
将你的密钥(来自 **console.gmicloud.ai → API Keys** — [在此注册](https://console.gmicloud.ai/ref/ZB44WJST) 如果你没有帐户)放在以下任意位置:
```bash
gmi config set-key # 提示隐藏输入(密钥不记录在 shell 历史记录中)
gmi config set-key YOUR_KEY # 或直接传递;写入 ~/.config/gmi/.env,chmod 600
# 或将 GMI_API_KEY 放入 ./.env,或 <package>/.env
```
运行 `npm link` 一次,将 `gmi` 放入你的 PATH(或使用 `node dist/cli.js ...`)。
### CLI 参考
```bash
gmi models # Studio 媒体模型,以表格形式显示
gmi models --type video # 按类型/名称过滤
gmi models --llm # LLM 模型,$ / M-token 定价
gmi models --json # 原始 JSON(用于脚本)
gmi model seedream-5.0-lite # 参数模式 + 定价,可读
# 生成图像并本地保存(加载时显示实时状态 + 流逝时间)
gmi generate -m seedream-5.0-lite -p "San Francisco skyline at dusk, cinematic" -o ./out
# 图像到视频:本地文件自动上传(--image-key 选择有效载荷字段)
gmi generate -m kling-v3-image-to-video --image ./photo.heic -p "gentle camera push-in" -o ./out
# 预飞行:验证有效载荷对抗模型模式 + 估算成本,无提交
gmi generate -m Veo3 -p "..." --dry-run
# 发射并稍后轮询/获取(在等待过程中 Ctrl+C 打印恢复命令)
gmi generate -m Veo3 -p "..." --no-wait -q # -q 仅打印 request_id
gmi status <request-id> --wait -o ./out
gmi download <request-id> -o ./out -q # -q 仅打印保存的路径
gmi requests --status failed --limit 10 # 可过滤的作业历史
# 上传任何常见文件格式,获取公共 URL(如果需要自动转换)
gmi upload ./photo.heic
# 与 LLM 聊天(默认流式传输;--no-stream 用于脚本)
gmi chat -m deepseek-ai/DeepSeek-V3 "Write 5 punchy captions for a sunset lighthouse reel"
gmi doctor # 密钥、连接性、转换器 — 健康检查
gmi update # 原地更新(git checkout → pull+build;npm → 最新)
```
CLI 还会检查新版本,最多一天一次(静默地,在 npm 注册表中),并在存在更新时打印一行通知 — 永远不会在 MCP 服务期间,并且失败的检查永远不会中断命令。
请求在 429 速率限制(和读取的 5xx/网络错误)时自动重试。
### 选择视频模型(生产中学习)
| 模型 | 人类相似度 | 帧固定 | 音频 | 价格(720p-ish) |
|-------|-----------------|---------------|-------|------------------|
| **Kling V3 pro** | ✅ 接受真实面孔 | `image` + `image_tail` | ✅ | $0.168–0.252/s |
| **Seedance 2.0** | ❌ 拒绝任何逼真人物 — 真实照片 *或* AI 渲染 | `first_frame` + `last_frame` | ✅ | $0.152/s |
| **Veo 3.1** | ⚠️ 严格的人物过滤器 | first+last frame | ✅ 原生 | $0.40/s |
| **Sora 2 Pro** | ⚠️ 最严格的所有人 | — | ✅ | $0.50/s |
**有效生成角色的配方:** 使用 `gemini-3-pro-image` 生成身份静态图像(引用您的照片),从中构建场景关键帧(每个镜头开始 + 结束),然后使用 Kling V3 固定两个端点。 视频模型仅在已正确构建的合成帧之间插值。
### 作业生命周期
生成是异步的:`created → queued → dispatched → processing → success | failed | cancelled`
在 `success` 时,作业的 `outcome` 包含生成的资产 URL;客户端为您提取它们。
### 测试
39 个测试固定每个真实 API 行为 — 响应形状、上传合同、重试策略、成本数学、配置合并和下载路径遍历防御。 `npm test`. CI 在每次推送时在 ubuntu + macos × Node 22/24 上运行。
### 安全
参见 [SECURITY.md](SECURITY.md) 安全模型(密钥处理、公共上传 URL、MCP/代理接口、网络占用)以及如何报告漏洞。 简而言之:您的密钥存储 `0600` 并仅发送给 GMI;上传产生公共 URL;下载仅在您选择的输出目录内写入;无遥测除了每天一次的 npm 版本检查。
### 文档
- API 介绍:https://docs.gmicloud.ai/api-reference/introduction
- 视频 API:https://docs.gmicloud.ai/inference-engine/api-reference/video-api-reference
- LLM API:https://docs.gmicloud.ai/inference-engine/api-reference/llm-api-reference
- 完整文档索引:https://docs.gmicloud.ai/llms.txt
---
## FAQ
**为什么不使用 GMI 控制台?**
同时使用两者。 控制台非常适合探索一个模型。 `gmi` 是您有 12 张图片和截止日期的那一天 — 或您将工作交给 AI 代理使用的那一天。
**此工具与 GMI 云关联吗?
否 - 非官方、MIT 许可,携带自己的密钥。不会增加任何费用。
**另一个维护六个月后就会腐烂的包装吗?**
39 个测试固定每个真实 API 行为,CI 在每次推送时在两个操作系统和两个 Node 版本上运行。像基础设施一样维护,而不是一个 gist。
**它可以处理真实的人/我的脸吗?**
是的 - 使用合适的模型。Kling 接受人类相似度;Seedance 永远不会(它的过滤器拒绝任何逼真的角色,甚至是 AI 渲染的)。上面的模型矩阵为您节省了这一点。
**试用成本是多少?**
该工具免费。生成费用按照 GMI 的价格计费 - 测试图像约为 $0.035 美元,每项作业在提交前显示其估算成本。 `--dry-run` 完全免费。
## 故事
> 一个晚上,一个终端:一个三幕世界杯短片 - 一个真实人物的形象在拥挤的决赛中得分,梅西风格的 #10 助攻 - 大约 **12 美元** 模型花费。关键帧来自 Gemini,运动来自 Kling 搭配开始和结束帧固定,音频开启,由 ffmpeg 组装。失败的拍摄次数为 0,因为每项作业在提交前都定价和验证。然后 Erling Haaland 做了杰克·斯派罗走船动作,因为管道使其成为一个 10 分钟的工作。那条管道就是这个仓库。
---
## 适用于 AI 代理
*如果您是 AI 助手为用户设置此内容,请按照以下步骤:*
1. 克隆并构建:
```bash
git clone https://github.com/yannan000/unofficial-gmi-cloud-cli.git
cd unofficial-gmi-cloud-cli && npm install && npm run build && npm link
```
2. 向用户询问他们的 GMI API 密钥(他们在 **console.gmicloud.ai → API Keys** 处创建;它只显示一次 - 新用户可以 [在此注册](https://console.gmicloud.ai/ref/ZB44WJST))。使用以下命令存储它:
```bash
gmi config set-key THEIR_KEY
```
3. 验证:`gmi doctor` — 所有检查均应通过。(`ffmpeg` 是可选的;如果没有它,macOS 上的图像转换仍然可以使用 `sips` 进行。)
4. 可选地将自己注册为 MCP 客户端:`gmi mcp-config` 列出支持的客户端;`gmi mcp-config <your-client> --install` 写入配置文件。
5. 在为您提交任何付费生成之前:检查模型的参数,优先使用 `--dry-run`,并告诉用户估计的成本。使用 `-q`/`--json` 标志获取可解析的输出。
6. 模型选择指导在上面的“选择视频模型”部分。注意:Seedance 拒绝任何逼真人物;对于人类主题,请使用 Kling。
MCP 配置
以下是此 MCP Server 的配置信息,可直接复制到 Cursor 或其他 MCP 客户端中使用。
mcp.json
连接信息
猜你喜欢
暂无推荐服务器