Wonda CLI
Wonda CLI 是一个面向终端代理的内容创作工具包。您可以使用它生成图像、视频、音乐和音频;编辑和合成媒体;发布到社交平台;以及在 LinkedIn、Reddit 和 X/Twitter 上执行调研和自动化操作。
安装
如果在 PATH 中未找到 wonda,请先安装:
# npm
npm i -g @degausai/wonda
# Homebrew
brew tap degausai/tap && brew install wonda
设置
- 认证:
wonda auth login(打开浏览器,推荐)或设置WONDA_API_KEY环境变量 - 验证:
wonda auth check
OAuth 连接器认证
Claude web 和 Cowork 连接器使用 Wonda 的 OAuth 2.1 流程,而不是 CLI API 密钥字段。连接器通过 Wonda 在浏览器中登录,授予请求的账户访问权限,并接收绑定到 Wonda API 资源的 OAuth 令牌。服务器仅在 Wonda 内部将这些令牌转换为账户的内部 API 密钥,因此代理和连接器主机永远不会看到 sk_... 密钥。对于 CLI 和本地 stdio MCP 路径,继续使用 wonda auth login 或 WONDA_API_KEY。
Claude Cowork 本地中继
Claude Cowork(桌面应用程序)在主机上运行本地 MCP 服务器,因此可以加载 .mcpb 包或本地 stdio wonda-mcp 配置,包括 WAB 写入(已验证于 2026-07-07)。Claude web 则不能。Wonda 本地中继是另一种路径:它允许远程连接器(web 或 Cowork)在用户自己的 Mac 和住宅 IP 上执行操作,而无需任何本地 MCP 配置:
- 登录后打开
https://wonda.sh/download,安装经过公证的 Mac 包。 - 使用
wonda relay pair或首次运行的浏览器交接来配对中继。这使用现有的cli-auth流程,并使用存储在 macOS 钥匙串中的中继作用域凭据wrelay_...。不要让用户粘贴 API 密钥或设备代码。 - 打开
https://wonda.sh/setup,通过有头部的本地 WAB 连接 LinkedIn、X 和 Reddit,然后在 Claude 中批准 Wonda 连接器。
引擎策略为 auto | my_machine | cloud。auto 在中继在线时使用本地中继,否则使用云端。my_machine 不能静默回退:如果中继离线,询问是否切换到云端。
组织与消费上下文
Wondercat 组织是共享钱包,拥有自己的席位和计费。成员可以通过切换上下文从组织钱包消费(而不是个人积分):
wonda organizations list(别名:wonda orgs list、wonda org list)——查看您所属的所有组织,包括角色和席位计划。wonda use --org <slug>——此机器上的粘性组织上下文。在每个请求上设置X-Wonda-Org;持有、扣费和wonda balance都通过组织钱包路由。wonda use --personal——回到个人。wonda usage——仅消费使用摘要(按总计 + 按模型 + 按项目细分)针对一个时期(--month 2026-05,或--from/--to;默认为当前月份,UTC)。--project <name>将报告限制为一个项目。在组织上下文中,它报告组织范围的使用情况,包括按成员细分——需要管理员/所有者角色。管理员还可以从网页上的组织页面下载完整的 Excel 报告。
项目(消费标记)
项目将消费归因于命名的工作流以进行监控。代理应在任务开始时检查活动项目(wonda use 打印它),并在操作员按项目监控消费时为每个任务设置一个:
wonda use --project <name>——粘性:每个后续扣费都携带项目(在wonda usage、API 和组织 Excel 报告中)。wonda use --no-project停止标记;切换组织/个人上下文会自动清除项目(项目按作用域)。- 任何命令上的
--project <name>——该调用的单次覆盖。 wonda project list|create|delete——管理活动作用域中的注册表。组织项目仅由组织管理员/所有者创建;个人项目是自助服务。针对不存在的名称进行标记会失败并返回unknown_project(没有静默创建新桶,因此拼写错误不会拆分监控数据)。
wonda topup 始终为您的个人钱包充值,无论上下文如何。充值组织钱包(以及配置自动充值)仅限管理员操作,在 /organizations/<slug> 网页上进行。如果成员的组织积分用完,错误信息会告诉他们要求管理员或切换回个人——他们不能从 CLI 充值组织钱包。
组织内的角色独立于席位计划:
- 所有者:原始创建者。不能被降级或移除。可以从组织页面将所有权转让给另一个成员(很少见)。
- 管理员:可以邀请(单个或通过粘贴批量)、移除、更改角色、更改席位、充值、配置自动充值、更改月度限制。
- 用户:只能在组织钱包内消费(如果管理员设置了每成员月度限制,则受其约束)。
付费组织席位(WONDA / WONDA_PREMIUM)授予与个人付费计划相同的付费功能访问权限(技能等),但仅在组织上下文中有效。wonda use --personal 回退到用户的个人账户计划。
访问层级
Wonda 是纯付费服务:每个产品面(生成、媒体、发布、抓取、分析、技能、云端孪生)都需要付费计划。新账户没有积分,在订阅之前也没有产品访问权限。
| 层级 | 访问权限 |
|---|---|
| 匿名(临时账户,未登录) | 无产品访问权限。CLI 在首次运行时创建一个临时账户,但只能访问以下本地命令以及认证/计费端点。运行 wonda auth login,然后订阅。 |
| 免费(已登录,无付费计划) | 无产品访问权限。在 https://wonda.sh/account 订阅以使用产品。 |
| WONDA($19.99/月,“Pro”) | 除云端孪生外的一切:生成(image/generate、video/generate...)、媒体上传/下载、发布、抓取、分析、视频分析、技能(wonda skill install/list/get)、转场、剪辑、邮件、reddit/linkedin 账户创建、样式、品牌。 |
| WONDA_PREMIUM($49.99/月,“Premium”) | WONDA 中的所有内容,外加云端孪生(wonda twin:配置、定时运行、流式登录),具有反检测/影子禁令保护、无上限和 US 账户创建。 |
| 标记(按账户的 PostHog 开关) | 包含在付费计划中,但仍可通过按账户标志控制:wonda reddit signup(redditAccountCreationEnabled)、wonda email(emailServerApiEnabled)、公开 LinkedIn 个人资料丰富(linkedinProfileEnrichmentEnabled)。 |
| 本地(无 API 调用、无积分、无计划) | 完全在您的机器上运行,因此无需计划即可工作:wonda brand extract <url>(无 --save)、wonda compose motion/wonda compose text、wonda wab record <url>、wonda edit ... 对本地文件的 ffmpeg 原始转换,以及 wonda doctor。基于 Chromium 的操作需要一次性 wonda wab install。 |
如果命令返回 403(paid_plan_required),请在 https://wonda.sh/account 订阅。
声音克隆
从 10 秒以上的音频片段克隆声音,并在 TTS 中使用。硬限制:每个账户 20 个克隆声音。费用:每个克隆 $1.50。
# 从本地文件克隆(自动先上传到媒体库)
wonda voice create "Andu" --file ./sample.mp3 --description "My voice"
# 从现有 wonda 媒体克隆
wonda voice create "Brand" --media-id <uuid>
# 可选源音频预处理
wonda voice create "Clean" --file ./raw.wav --noise-reduction --normalize-volume
# 列出克隆的声音(每行报告 isExpired 和 expiresInDays)
wonda voice list
# 单个声音
wonda voice get <voice-id>
# 重命名/重新描述(本地操作,无提供商调用)
wonda voice update <voice-id> --name "New Name" --description "..."
# 删除
wonda voice delete <voice-id>
在 TTS 中使用克隆的声音:将 voice get 返回的 providerVoiceId 作为 voiceId 传递给 /audio/speech:
wonda audio speech "Hello world" \
--model minimax-speech-2-8-hd \
--params '{"voiceId":"<providerVoiceId>"}'
7 天过期:未在 TTS 中使用的克隆声音在 7 天后会自动过期。使用克隆声音运行 TTS 会自动刷新其过期时间。闲置的声音过期后必须重新克隆(再次 $1.50)。
凭证保险库
持久化在外部平台(Instagram、TikTok、Twitter 等)上创建的登录信息,以便在下次运行时重用。密码使用服务器端密钥进行 AES-256-GCM 加密,仅在 get 时解密。
# 创建
wonda credentials create --website instagram.com --username myhandle \
--email [email protected] --password-stdin <<< "hunter2" \
--metadata '{"signup_source":"wonda-email"}'
# 列出(省略密码)
wonda credentials list --website instagram.com
# 获取完整记录,包括解密后的密码
wonda credentials get <id>
# 更新任何字段(使用 --password-stdin 轮换密码;--username "" 清除)
wonda credentials update <id> --username newhandle
# 删除
wonda credentials delete <id>
# 在一次调用中获取并记录您为什么使用它——POST,而不是 GET,因为
# 它会写入一个包含原因的 'used' 事件。每当您可以说明原因时,优先使用此命令而不是 `get`。
wonda credentials use <id> --reason "instagram signup flow"
# 查看用于审计的近期事件(创建/使用/轮换/更新)
wonda credentials events <id>
字段:website(必需——像 insta 这样的输入会被规范化为 instagram.com)、username、email、password(必需)、metadata(任意 JSON)。username/email 至少有一个必须存在。允许每个 (website, username) 有多条记录——如果需要,请在您这边去重。
事件日志:每次 credentials get/use、create、密码轮换和其他更新都会记录为凭证上的事件(操作者:cli | web | system)。使用 credentials events <id> 或网页 UI 的历史图标进行审计。事件日志是仅追加的,并在删除凭证时级联删除。
全局输出标志
所有命令都支持以下输出控制标志:
--json——强制 JSON 输出(当 stdout 被管道传输时自动启用)--quiet——仅输出主要标识符(作业 ID、媒体 ID 等)——非常适合脚本编写-o <path>——将输出下载到文件(意味着--wait)--fields status,outputs——选择特定的 JSON 字段--jq '.outputs[0].media.url'——使用 jq 表达式过滤 JSON 输出
CLI 公告与弃用警告
在每个命令上,CLI 都会轮询 GET /api/v1/updates(匿名,在 ~/.wonda/state.json 中缓存 1 小时)以获取活动公告:弃用通知、事件提醒、升级提示。消息仅打印到 stderr,因此 stdout/JSON 保持干净,便于管道传输。
每个请求的弃用提示作为标准的 Warning: 299 - "<message>" HTTP 标头到达,并由 CLI 的 HTTP 客户端在 stderr 上输出为 [deprecated METHOD /path] <message>。
使用 WONDA_QUIET=1(环境变量)或 --quiet(标志)静默这两个通道。仅禁用网络检查使用 WONDA_NO_UPDATE_CHECK=1。
WAB / Wonda 自动化浏览器(wonda wab)
Wonda 自动化浏览器(WAB)是一个高级隐身反检测浏览器,经过加固,使平台无法将其识别为自动化。wonda wab 是反检测 Chromium 栈(一个未检测到的 Playwright 分支)的唯一命令。它有两个方面:
- 认证会话。每个身份一个持久的有头部 Chromium,持有 LinkedIn、X、Reddit 等的登录会话。CLI 按需生成它,让其空闲超时,并在命令通过
--via wab运行时,通过它路由平台读取/写入。Cookie 存在于身份的 Chromium 配置文件中,而不是~/.wonda/config.json中。 - 匿名捕获。
wonda wab record <url>(以及wonda brand extract)驱动一个短暂的 Chromium,带有全新的指纹、无身份、无 Cookie。请参阅下面的record块。
心理模型:您拥有账户(每个平台一个身份)。每个平台命令通过扁平 JSON 存储(--via cookies,快速,无 Chromium)或账户的身份(--via wab,实时反检测 Chromium)路由到该账户的 Cookie。身份是可以容纳多个账户的 Chromium 信封,具有一个指纹。在几乎所有情况下,身份在首次使用 --via wab 时自动创建,并以账户命名,因此您永远不需要输入身份名称。
本地的 wonda.mcpb 桌面扩展从 Claude Desktop 或 Claude Code 使用相同的本地 WAB 路径:平台 Cookie 保留在设备上,读取使用本地 Cookie,写入使用本地 WAB。Claude web 和 Cowork 需要远程 MCP 连接器。
本机登录
...[截断以进行翻译]