openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > IMA Nano Banana Pro, Nano Banana 2

Image generation with IMA Open API using only Nano Banana series: Nano Banana, Nano Banana Pro, Nano Banana 2. Budget (Nano Banana2 512px), balanced (Nano Ba...

媒体与内容

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.5

统计:⭐ 0 · 233 · 2 current installs · 2 all-time installs

0

安装量(当前) 2

🛡 VirusTotal :可疑 · OpenClaw :良性

Package:allenfancy-gan/ai-nano-banana-ima

安全扫描(ClawHub)

  • VirusTotal :可疑
  • OpenClaw :良性

OpenClaw 评估

The skill's code, instructions, and required environment variable (IMA_API_KEY) are consistent with its stated purpose (image generation via IMA Open API); nothing in the package suggests it is doing something unrelated or covert, though there are a few small inconsistencies worth noting before installing.

目的

The skill claims to call IMA Open API for text_to_image and image_to_image using Nano Banana series and the code and SKILL.md implement that. Required env var IMA_API_KEY is appropriate for the described API usage. No unrelated cloud credentials or unrelated binaries are requested.

说明范围

SKILL.md and the bundled scripts limit model IDs and describe the end-to-end flow (task create, poll, optional local-file upload). The scripts will send IMA_API_KEY to api.imastudio.com and, for local file uploads, to imapi.liveme.com — this behavior is documented in SECURITY.md and the SKILL.md. The skill persists prefs and logs under ~/.openclaw/* which matches the manifest. Minor concern: SKILL.md and other docs claim an explicit consent fl…

安装机制

No install spec; packaged as code + instructions only. requirements.txt contains only 'requests'. There are no downloads from external or shortener URLs and no archive extraction. This is a low-risk install footprint.

证书

Only IMA_API_KEY is declared as required (plus optional IMA_IM_BASE_URL). That is proportional to the stated functionality. The code contains public APP_ID/APP_KEY constants (marked in comments as non-secret) and a note about APP_UID/APP_TOKEN being optionally configured; those additional tokens are NOT declared as required in the manifest, which could confuse users. The main secret requested (IMA_API_KEY) is necessary for the API calls and fo…

持久

always=false and autonomous invocation allowed (platform default). The skill reads/writes only its own preference and log paths under ~/.openclaw, as declared in SKILL.md/clawhub.json; retention policy for logs is described. The skill does not request system-wide config changes or other skills' credentials.

综合结论

This skill appears to do what it says: generate images via IMA's Open API using the Nano Banana family and it needs your IMA_API_KEY to operate. Before installing: - Confirm you are comfortable with the skill sending your IMA_API_KEY to api.imastudio.com (generation) and to imapi.liveme.com if you upload local images; the package documents this and requires explicit consent for secondary-domain uploads in its docs, but I couldn't confirm the e…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「IMA Nano Banana Pro, Nano Banana 2」。简介:Image generation with IMA Open API using only Nano Banana series: Nano Banana, …。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/allenfancy-gan/ai-nano-banana-ima/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: IMA Nano Banana
version: 1.1.0
category: file-generation
author: IMA Studio (imastudio.com)
keywords: imastudio, nano banana, gemini image, text to image, image to image
argument-hint: "[text prompt or image URL]"
description: >
  Image generation with IMA Open API using only Nano Banana series: Nano Banana,
  Nano Banana Pro, Nano Banana 2. Budget (Nano Banana2 512px), balanced (Nano Banana2/Pro),
  premium (Nano Banana Pro 4K). Native aspect_ratio (1:1, 16:9, 9:16, 4:3, 3:4).
  Requires ima_* API key. Bundled script: scripts/ima_image_create.py.
requires:
  env:
    - IMA_API_KEY
  envOptional:
    - IMA_IM_BASE_URL
  primaryCredential: IMA_API_KEY
  credentialNote: >
    IMA_API_KEY is sent to api.imastudio.com for generation APIs and to
    imapi.liveme.com only when image_to_image uses local file upload.
persistence:
  readWrite:
    - ~/.openclaw/memory/ima_prefs.json
    - ~/.openclaw/logs/ima_skills/
  retention: Logs are auto-cleaned after 7 days; preferences remain until user deletes them.
---

# IMA Nano Banana (Image Generation)

## Overview

This skill calls the IMA Open API for **image generation** using **only the Nano Banana series**: **Nano Banana**, **Nano Banana Pro**, **Nano Banana 2**. No other models (e.g. SeeDream, Midjourney) are used or documented here.

**Supported task types:** `text_to_image`, `image_to_image`.

---

## 📥 User Input Parsing (Model & Parameter Recognition)

Normalize user wording (case-insensitive), then map to **task_type**, **model_id**, and **parameters**.

### 1. User phrasing → task_type

| User intent / phrasing | task_type | Notes |
|------------------------|-----------|--------|
| Only text, no input image | `text_to_image` | "画一张…" / "生成图片" / "text to image" |
| One input image + edit/transform | `image_to_image` | "把这张图…" / "参考这张图生成" / "图生图" / "风格迁移" |

If the user attaches or links one image and asks to change it or generate something "like this", use `image_to_image` with that image as input.

### 2. Model name / alias → model_id (Nano Banana only)

| User says (examples) | model_id | Notes |
|----------------------|----------|--------|
| Nano Banana / 香蕉 / Banana2 / NB2 / 最便宜 / budget | `gemini-3.1-flash-image` | Nano Banana2, 4–13 pts |
| Nano Banana Pro / Banana Pro / NB Pro / 最好 / premium | `gemini-3-pro-image` | 10–18 pts |
| 默认 / 不指定 | `gemini-3.1-flash-image` | Default: balanced, fast |

### 3. User phrasing → size / aspect_ratio

| User says (examples) | Parameter | Normalized value | Notes |
|----------------------|-----------|------------------|-------|
| 16:9 / 横图 / 9:16 / 竖图 / 4:3 / 3:4 / 1:1 | aspect_ratio | 16:9, 9:16, 4:3, 3:4, 1:1 | Native support |
| 4K / 2K / 1K / 512 | size | 4K, 2K, 1K, 512px | Via attribute_id |

Nano Banana 系列均**原生支持** aspect_ratio。**8K** 不支持,最高 4K;若用户要求 8K,告知并改用 4K。

---

## 💬 User Experience Protocol (IM / Feishu / Discord)

This skill runs inside IM platforms (Feishu, Discord via OpenClaw).  
**Never let users wait in silence.** Always follow all 6 steps below, every single time.

### 🗣️ User-Friendly First, Transparent on Request

Default to plain-language status updates (model name, ETA, credits, result).
If users ask technical details, provide them transparently (script path, endpoints, and parameter names).

---

### Estimated Generation Time per Model

| Model | Estimated Time | Poll Every | Send Progress Every |
|-------|----------------|------------|---------------------|
| **Nano Banana2** 💚 | 20~40s | 5s | 15s |
| **Nano Banana Pro** | 60~120s | 5s | 30s |

`estimated_max_seconds` = the upper bound (e.g. 40 for Nano Banana2, 120 for Nano Banana Pro).

---

### Step 0 — Initial Acknowledgment Reply (Normal Reply)

**Before doing anything else**, reply to the user with a friendly acknowledgment using your **normal reply** (not `message` tool). This reply will appear FIRST in the conversation.

**Example acknowledgment messages:**
```
好的!来帮你画一只萌萌的猫咪 🐱
```
```
收到!马上为你生成一张 16:9 的风景照 🏔️
```
```
OK! Starting image generation with Nano Banana2 🎨
```

**Rules:** Short and warm (< 15 words), match user language (Chinese/English), include relevant emoji. This is your ONLY normal reply — all subsequent updates use `message` tool.

---

### Step 1 — Pre-Generation Notification (Push via message tool)

**After Step 0 reply**, use the `message` tool to push a notification:

**User-facing message template:**
```
🎨 开始生成图片,请稍候…
• 模型:[Model Name]
• 预计耗时:[X ~ Y 秒]
• 消耗积分:[N pts]
```

**Cost transparency examples (Nano Banana only):**
- Balanced/default: "使用 Nano Banana2(4–13 积分,可选 512px/1K/2K/4K)"
- Premium: "使用 Nano Banana Pro(10–18 积分,最高质量,1K/2K/4K)"
- Budget: "使用 Nano Banana2 512px(4 积分,最便宜最快)"

---

### Step 2 — Progress Updates (Push via message tool)

1. Start the generation script in background or use polling loop  
2. Track elapsed time since start  
3. Every `[Send Progress Every]` seconds (see table above), push a progress update via `message` tool  
4. Stop when task completes (success/failure)

**Progress message template:**
```
⏳ 正在生成中… [P]%
已等待 [elapsed]s,预计最长 [max]s
```

**Progress formula:** `P = min(95, floor(elapsed_seconds / estimated_max_seconds * 100))`. Cap at 95% until API returns `success`. If `elapsed > estimated_max`: keep P at 95% and append `「稍等,即将完成…」`.

**When to send progress:** Short tasks (<20s) skip Step 2; medium (20–60s) send 1–2 updates; long (>60s) every 20–30s.

---

### Step 3 — Success Notification (Push image via message tool)

When task status = `success`, use the `message` tool to **send the generated image** (not plain text URL):

**Caption template:**
```
✅ 图片生成成功!
• 模型:[Model Name]
• 耗时:预计 [X~Y]s,实际 [actual]s
• 消耗积分:[N pts]

🔗 原始链接:{image_url}
```

**Platform:** Feishu/Discord — `message(action=send, media=url, caption="...")`. Do NOT send only a text URL; users expect to see the image rendered.

---

### Step 4 — Failure Notification (Push via message tool)

When task status = `failed` or any API/network error, push a failure message with alternative suggestions (Nano Banana only):

**Message template:**
```
❌ 图片生成失败
• 原因:[natural_language_error_message]
• 建议改用:
  - [Alt Model 1]([特点],[N pts])
  - [Alt Model 2]([特点],[N pts])

需要我帮你用其他模型重试吗?
```

**Error Message Translation (user-facing only)**

Default to user-friendly explanations. If users explicitly ask for technical details, provide them transparently.

| Technical Error | Internal Literal (reference) | User-Friendly (Chinese) | User-Friendly (English) |
|-----------------|-------------------------------|--------------------------|-------------------------|
| `401 Unauthorized` | Invalid API key / 401 | API密钥无效或未授权<br>💡 **生成新密钥**: https://www.imaclaw.ai/imaclaw/apikey | API key is invalid or unauthorized<br>💡 **Generate API Key**: https://www.imaclaw.ai/imaclaw/apikey |
| `4008 Insufficient points` | Insufficient points / 4008 | 积分不足,无法创建任务<br>💡 **购买积分**: https://www.imaclaw.ai/imaclaw/subscription | Insufficient points to create this task<br>💡 **Buy Credits**: https://www.imaclaw.ai/imaclaw/subscription |
| `"Invalid product attribute"` / `"Insufficient points"` | Invalid product attribute | 生成参数配置异常,请稍后重试 | Configuration error, please try again later |
| Error 6006 (credit mismatch) | Error 6006 | 积分计算异常,系统正在修复 | Points calculation error, system is fixing |
| Error 6010 (attribute_id mismatch) | Attribute ID does not match | 模型参数不匹配,请尝试其他模型 | Model parameters incompatible, try another model |
| error 400 (bad request) | error 400 / Bad request | 图片参数设置有误,请调整尺寸或比例 | Image parameter error, adjust size or aspect ratio |
| `resource_status == 2` | Resource status 2 | 图片生成遇到问题,建议换个模型试试 | Image generation failed, try another model |
| `status == "failed"` | Task failed | 这次生成没成功,要不换个模型试试? | Generation unsuccessful, try a different model? |
| timeout | Task timed out | 生成时间过长已超时,建议用更快的模型 | Generation took too long, try a faster model |
| Network error | Connection refused / Network error | 网络连接不稳定,请检查网络后重试 | Network connection unstable, check network and retry |
| Rate limit exceeded | 429 / Rate limit | 请求过于频繁,请稍等片刻再试 | Too many requests, please wait a moment |
| Unsupported aspect ratio | Parameter not supported | 请使用支持的比例:1:1、16:9、9:16、4:3、3:4 | Use supported ratios: 1:1, 16:9, 9:16, 4:3, 3:4 |

**Generic fallback:** Chinese: `图片生成遇到问题,请稍后重试或换个模型试试` / English: `Image generation encountered an issue, please try again or use another model`

**Failure fallback (Nano Banana only):**

| Failed Model | First Alt | Second Alt |
|--------------|-----------|------------|
| **Nano Banana2** | **Nano Banana Pro**(高质量,10–18 pts) | 同款换 size/attribute_id |
| **Nano Banana Pro** | **Nano Banana2**(更快更省,4 pts 起) | 同款换 size |

---

### Step 5 — Done (No Further Action)

After Steps 0–4: no further reply or `NO_REPLY`. Do not send duplicate confirmations or the same content twice via `message` tool.

**Flow summary:** Step 0 normal reply (first) → Step 1 start notification → Step 2 progress (if >20s) → Step 3 success image + caption → Step 5 done.

---

## ⚙️ How This Skill Works

This skill uses a bundled Python script (`scripts/ima_image_create.py`) to call the IMA Open API. The script:

- Sends your prompt to IMA's servers (two domains, see below)
- Uses `--user-id` **only locally** as a key for storing model preferences
- Returns an image URL when generation is complete

### 🌐 Network Endpoints Used

| Domain | Purpose | What's Sent | Authentication |
|--------|---------|-------------|-----------------|
| `api.imastudio.com` | Main API (task create, status poll) | Prompts, model params, task IDs | Bearer token (IMA API key) |
| `imapi.liveme.com` | Image upload (OSS token) | Image files (i2i only), IMA API key | IMA API key + APP_KEY signature |

Both domains are owned and operated by IMA Studio. For text_to_image, only `api.imastudio.com` is contacted.

### ⚠️ Credential Security Notice

Your IMA API key is sent to **both** domains when using image_to_image. Best practices: use a test/scoped key first; do not share or commit the key. Get key at https://imastudio.com.

**What gets sent:** prompt, model selection, image params, image files (i2i), IMA API key. **Not sent:** user_id (local prefs only).

**Stored locally:** `~/.openclaw/memory/ima_prefs.json` (preferences), `~/.openclaw/logs/ima_skills/` (logs, auto-deleted after 7 days).

### Agent Execution (Bundled Script)

Use the script in **this skill** to ensure correct parameter construction:

```bash
# List available models (Nano Banana series in product list)
python3 {baseDir}/scripts/ima_image_create.py 
  --api-key $IMA_API_KEY --task-type text_to_image --list-models

# text_to_image — default Nano Banana2
python3 {baseDir}/scripts/ima_image_create.py 
  --api-key $IMA_API_KEY --task-type text_to_image 
  --model-id gemini-3.1-flash-image --prompt "a cute puppy on grass" 
  --user-id {user_id} --output-json

# text_to_image — Nano Banana Pro 4K
python3 {baseDir}/scripts/ima_image_create.py 
  --api-key $IMA_API_KEY --task-type text_to_image 
  --model-id gemini-3-pro-image --prompt "sunset landscape" 
  --size 4K --user-id {user_id} --output-json

# image_to_image
python3 {baseDir}/scripts/ima_image_create.py 
  --api-key $IMA_API_KEY --task-type image_to_image 
  --model-id gemini-3.1-flash-image --prompt "turn into oil painting" 
  --input-images https://example.com/photo.jpg --user-id {user_id} --output-json

# image_to_image with local file (requires explicit secondary-domain acknowledgment)
python3 {baseDir}/scripts/ima_image_create.py 
  --api-key $IMA_API_KEY --task-type image_to_image 
  --model-id gemini-3.1-flash-image --prompt "turn into oil painting" 
  --input-images ./local-photo.jpg --allow-secondary-upload-domain 
  --user-id {user_id} --output-json
```

The script outputs JSON; parse it for the result URL and pass to the user via the UX protocol above.

---

## 🔒 Security & Transparency Policy

- **Review source:** `scripts/ima_image_create.py`, `ima_logger.py`
- **Verify endpoints:** `api.imastudio.com`, `imapi.liveme.com` (see script)
- **Set API key:** `export IMA_API_KEY=ima_...` or in agent env
- **Data control:** Delete `~/.openclaw/memory/ima_prefs.json` to reset prefs; logs auto-cleanup in 7 days

**Avoid:** Sharing API keys, modifying endpoints to unknown servers, disabling SSL, logging sensitive data.

---

## 🧠 User Preference Memory

**Storage:** `~/.openclaw/memory/ima_prefs.json`

**Model selection:** 1) If user preference exists → use it. 2) Else → use recommended default (Nano Banana2 for balanced, Nano Banana Pro for premium).

**Save preference when:** User says "用XXX" / "以后都用XXX" / "默认用XXX" / "我喜欢XXX".

**Clear preference when:** User says "用最好的" / "推荐一个" / "用默认的" / "试试别的" (no specific model).

---

## ⭐ Model Selection Priority & Recommended Defaults

**Priority:** 1) User preference (if saved). 2) Fallback below (Nano Banana only).

| Task | Default Model | model_id | Cost | Why |
|------|---------------|----------|------|-----|
| text_to_image | **Nano Banana2** 💚 | `gemini-3.1-flash-image` | 4–13 pts | Balanced, fast, 512px/1K/2K/4K |
| text_to_image (budget) | **Nano Banana2** 512px | `gemini-3.1-flash-image` | 4 pts | Cheapest, fastest |
| text_to_image (premium) | **Nano Banana Pro** | `gemini-3-pro-image` | 10/10/18 pts | Best quality, 1K/2K/4K |
| image_to_image | **Nano Banana2** 💚 | `gemini-3.1-flash-image` | 4–13 pts | Same as text_to_image |
| image_to_image (premium) | **Nano Banana Pro** | `gemini-3-pro-image` | 10 pts | Best i2i quality |

---

## Supported Models (Nano Banana Only)

### text_to_image

| Name | model_id | version_id | Cost | attribute_id (参考) | Size |
|------|----------|------------|------|---------------------|------|
| **Nano Banana2** 💚 | `gemini-3.1-flash-image` | `gemini-3.1-flash-image-preview` | 4/6/10/13 pts | 4400/4401/4402/4403 | 512px / 1K / 2K / 4K |
| **Nano Banana Pro** | `gemini-3-pro-image` | `gemini-3-pro-image-preview` | 10/10/18 pts | 2399/2400/2401 | 1K / 2K / 4K |

### image_to_image

| Name | model_id | Cost | attribute_id (参考) |
|------|----------|------|---------------------|
| **Nano Banana2** 💚 | `gemini-3.1-flash-image` | 4/6/10/13 pts | 4404/4405/4406/4407 |
| **Nano Banana Pro** | `gemini-3-pro-image` | 10 pts | 2402/2403/2404 |

⚠️ **attribute_id** must be obtained at runtime from `GET /open/v1/product/list?category=text_to_image` or `image_to_image` (type=3 nodes, credit_rules[0]).

### Model Capabilities

| Model | aspect_ratio | Max Resolution | Size Options |
|-------|--------------|---------------|--------------|
| **Nano Banana2** | ✅ 1:1, 16:9, 9:16, 4:3, 3:4 | 4K | 512px(4) / 1K(6) / 2K(10) / 4K(13) pts |
| **Nano Banana Pro** | ✅ 1:1, 16:9, 9:16, 4:3, 3:4 | 4K | 1K(10) / 2K(10) / 4K(18) pts |

**8K:** Not supported. Max 4K. Inform user and use 4K if they ask for 8K.

---

## Environment

**Base URL:** `https://api.imastudio.com`

| Header | Required | Value |
|--------|----------|-------|
| `Authorization` | ✅ | `Bearer ima_your_api_key_here` |
| `x-app-source` | ✅ | `ima_skills` |
| `x_app_language` | recommended | `en` / `zh` |

---

## ⚠️ MANDATORY: Always Query Product List First

You **MUST** call `GET /open/v1/product/list?app=ima&platform=web&category=text_to_image` (or `image_to_image`) **before** creating any task. The `attribute_id` is required in the create request. If it is 0 or missing → "Invalid product attribute" / "Insufficient points" → task fails.

**How to get attribute_id:** Traverse response `data` → find `type=3` leaf where `model_id` matches target → use `credit_rules[0].attribute_id`, `credit_rules[0].points`, `id` (model_version), `name`, and `form_config` for defaults.

---

## Core Flow

1. **GET /open/v1/product/list** → get attribute_id, credit, model_version, form_config  
2. **[image_to_image only]** Upload input image → get public HTTPS URL (see Image Upload below)  
3. **POST /open/v1/tasks/create** → include attribute_id, model_name, model_version, credit, cast, prompt (nested in parameters.parameters)  
4. **POST /open/v1/tasks/detail** {task_id} → poll every 2–5s until medias[].resource_status == 1 → extract url

### Common Mistakes

| Mistake | Fix |
|---------|-----|
| attribute_id 0 or missing | Always fetch product list first; use credit_rules[0] |
| prompt at outer level | prompt must be inside parameters[].parameters |
| Wrong credit | Must match credit_rules[].points (Error 6006) |
| image_to_image: missing src_img_url or input_images | Both required |
| Using non–Nano Banana model_id | This skill only uses gemini-3.1-flash-image, gemini-3-pro-image |

---

## Image Upload (Required for image_to_image)

The API does **not** accept raw bytes or base64. Input images must be public HTTPS URLs.

**Two-step flow:** 1) GET `/api/rest/oss/getuploadtoken` → { ful, fdl }. 2) PUT {ful} with raw image bytes → use **fdl** (CDN URL) as `input_images` value. The bundled script implements this; use script or same logic when calling API directly.

---

## Supported Task Types

| category | Capability | Input |
|----------|------------|-------|
| `text_to_image` | Text → Image | prompt |
| `image_to_image` | Image → Image | prompt + input image URL(s) |

---

## Detail API Status Values

| resource_status | status | Action |
|----------------|--------|--------|
| 0 or null | pending / processing | Keep polling |
| 1 | success | Stop; read url from medias |
| 1 | failed | Stop; handle error |
| 2 / 3 | any | Stop; handle error |

Treat `resource_status: null` as 0. Stop only when **all** medias have resource_status == 1.

---

## API 1: Product List

```
GET /open/v1/product/list?app=ima&platform=web&category=text_to_image
```

Returns a V2 tree: type=2 = groups, type=3 = version leaves. Only type=3 has `credit_rules` and `form_config`. For this skill, use only nodes where model_id is `gemini-3.1-flash-image` or `gemini-3-pro-image`.

---

## API 2: Create Task

```
POST /open/v1/tasks/create
```

**text_to_image (Nano Banana2 example):** `task_type: "text_to_image"`, `src_img_url: []`, `parameters[]` with attribute_id, model_id, model_name, model_version, app, platform, category, credit, and nested `parameters`: prompt, n, input_images[], cast {points, attribute_id}, size/aspect_ratio from form_config.

**image_to_image:** Same structure; top-level `src_img_url` and `parameters[].parameters.input_images` must both contain the input image URL(s).

**Key:** parameters[].parameters.prompt required; parameters[].parameters.cast required; credit must equal credit_rules[].points.

---

## API 3: Task Detail (Poll)

```
POST /open/v1/tasks/detail
{"task_id": "<id from create>"}
```

Poll every 2–5s. On completion, medias[].url, width, height, format (jpg/png).

---

## Common Mistakes (Summary)

| Mistake | Fix |
|---------|-----|
| Using SeeDream / Midjourney | This skill uses only Nano Banana series |
| attribute_id from table only | Always call product list at runtime |
| prompt at top level | prompt inside parameters[].parameters |
| 8K request | Max 4K; inform user and use 4K |

---

## Quick Reference

| Item | Value |
|------|--------|
| 模型范围 | Nano Banana, Nano Banana Pro, Nano Banana 2 |
| 默认推荐 | Nano Banana2(平衡)/ Nano Banana Pro(高质量) |
| 最便宜 | Nano Banana2 512px,4 pts |
| aspect_ratio | 1:1, 16:9, 9:16, 4:3, 3:4(原生) |
| 脚本 | 本技能内 `scripts/ima_image_create.py` |
| Base URL | https://api.imastudio.com |
| 生成密钥 | https://www.imaclaw.ai/imaclaw/apikey |
| 购买积分 | https://www.imaclaw.ai/imaclaw/subscription |