New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

@yikeai/cli

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@yikeai/cli

Yike CLI for local media upload and generation workflows

npmnpm
Version
0.3.0
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

Yike CLI

Yike CLI 是 Yike 提供的命令行工具,可在终端或 AI Agent 中完成本地图片/视频上传、图片生成、视频生成、Yike AI 原子能力调用、媒资检查、异步任务管理,以及通过 STDIO 提供 MCP 代理。

功能

  • 文生图、图生图
  • 文生视频、图生视频、参考视频生成
  • 上传本地图片和视频,并在失败后继续上传或等待
  • 通过 yike ai 调用图片/视频编辑、脚本、提示词、声音与音频等原子能力
  • 查询生成任务状态并恢复本地记录的异步任务
  • 检查媒资地址、时长和分辨率
  • 提供适合脚本和 AI Agent 消费的 JSON 输出
  • 通过 yike mcp proxy 为 MCP Host 提供 STDIO 代理
  • 内置并自动尝试安装配套的 using-yike-cli Agent skill

环境要求

  • Node.js 20 或更高版本
  • npm
  • 可用的 Yike 账号

安装

使用 npm 全局安装:

npm install -g @yikeai/cli

确认安装成功:

yike --version
yike --help

如果当前 npm registry 无法找到该包,请显式使用 npm 官方源:

npm install -g @yikeai/cli --registry=https://registry.npmjs.org

登录

在终端中完成浏览器授权:

yike auth login

无法自动打开浏览器时,可以只输出登录地址:

yike auth login --no-open

检查登录状态和当前账号:

yike auth status
yike whoami

在无法完成浏览器回调的自动化环境中,也可以通过环境变量提供访问令牌:

export YIKE_API_TOKEN="<your-token>"

请勿把访问令牌写入脚本、日志或版本库。

配置工作区和项目

查看当前配置:

yike config get

设置默认工作区:

yike config set workspaceId <workspaceId>

交互式选择该工作区中的项目:

yike config set projectId

脚本或 AI Agent 应先获取项目列表,再显式设置项目 ID:

yike config list projectId --format json
yike config set projectId <projectId> --format json

也可以通过 --workspace-id--project-id 为单次生成覆盖默认配置。

生成图片

yike generate image "一张未来感咖啡品牌海报" \
  --aspect-ratio 16:9 \
  --resolution 1K \
  --wait

生成多张图片并输出 JSON:

yike generate image "暖色水彩风格的海边小镇" \
  --n 2 \
  --wait \
  --format json

查看当前支持的模型和完整参数:

yike generate image --help
# Agent / 脚本读取当前可见模型、默认值和能力
yike generate image --help --format json

生成视频

yike generate video "5 秒咖啡广告短片,镜头缓慢推进" \
  --duration 5 \
  --resolution 720P \
  --wait

查看当前支持的模型和完整参数:

yike generate video --help
# Agent / 脚本读取参考输入、时长、分辨率、比例和音频能力
yike generate video --help --format json

结构化 help 只读取内置模型目录与本地白名单缓存,不发起网络请求;模型条目按 model + taskType + mode 扁平导出 capability manifest,通过输入/输出模态、typed parameters、参考素材和条件约束描述能力。字段缺失表示当前上游能力未声明,目录之外的显式 --model 仍会透传给服务端。完整字段与兼容规则见 docs/model-help-json.md

提交生成任务前,CLI 会展示预计积分消耗并请求确认。自动化流程可以先使用 --dry-run 检查计费估算和请求参数;JSON 中只有 estimation.matched: true 才表示预估有效,matched: false 是价格未知而不是免费,此时 insufficientnull。仅在预估有效且已经获得用户授权时使用 --yes 跳过确认。

使用本地参考素材

本地图片或视频必须先上传为 Yike 媒资:

yike media upload "/absolute/path/to/reference.png" --format json

上传完成后,从 JSON 结果中取得非空的 mediaId,再传给生成命令:

yike generate video "让画面中的人物自然转身" \
  --reference-image <mediaId> \
  --wait \
  --format json

支持的本地格式:

  • 图片:pngjpgjpegbmpwebp
  • 视频:mp4mov

上传超时时,执行返回结果中的 resumeCommand 继续等待。上传或注册失败时,可以重新执行相同的 media upload 命令,CLI 会使用本地检查点继续处理。

外部工具已取得 CreateUploadMedia 响应时,可通过进程 stdin 传入 JSON,运行 yike media upload "<path>" --upload-info-stdin --format json,无需登录或凭证文件。该模式仅上传 OSS 对象,返回 Uploaded,不代表媒资已就绪。协议与 Agent 调用示例见 直接凭证上传

HTTP(S) 素材地址和已有的 mediaId 可以直接传给相应的 --reference-image--reference-video 参数,不需要重复上传。

异步任务

不使用 --wait 时,生成命令会返回异步任务信息。可以使用任务 ID 继续查询:

yike job watch <jobId> --wait --format json

恢复本机记录的任务:

yike job recover <jobId> --format json

如果命令返回 resumeCommandnextAction.command,建议直接执行该命令,以保留原任务的工作区、项目、轮询和输出格式参数。

Yike AI 原子能力

Yike AI 的公开目录由 yike ai list --format json 返回,当前固定包含 15 项 core 和 5 项 supporting,共 20 项。命令只使用 yike ai 下的语义化路径与类型化参数,完整参数表、示例、结果门槛和不支持项见 skills/using-yike-cli/references/wonder-api.md

先查看目录:

yike ai list --format json

提交示例:

yike ai image upscale image_123 --resolution 2K --dry-run --format json
yike ai video subtitle-generate video_123 --start 0 --dry-run --format json
yike ai audio music --prompt '轻快的夏日木吉他配乐' --dry-run --format json
yike ai voice-design submit --name 旁白 --bio '沉稳、清晰的成年声音' --dry-run --format json
yike ai job watch job_123 --format json

15 项 core 提交命令为:yike ai image free-viewyike ai image upscaleyike ai image relightyike ai image inpaintyike ai video trimyike ai video upscaleyike ai video subtitle-removeyike ai video subtitle-translateyike ai video voice-translateyike ai video understandyike ai script to-shotlistyike ai prompt reverseyike ai video audio-extractyike ai video audio-demixyike ai audio music。5 项 supporting 提交命令为:yike ai video subtitle-generateyike ai voice-design submityike ai prompt generateyike ai audio-resynth submityike ai audio tts;智能字幕使用 subtitle-get,声音设计和提示词生成使用各自的 get,音频重合成使用 get/batch-get,TTS 使用 audio get,另有 ai job get/watch/list,详见完整参考。提示词生成和智能字幕不提供批量查询。

本地图片/视频必须先执行 yike media upload "<path>" --format json,只解析 stdout;只有返回非空 mediaIdstatusNormal 才能提交。提交先用完整参数执行 --dry-run,展示最终参数并等待用户确认,再以相同业务参数改用 --yes--dry-run 不消耗额度,真实提交可能消耗额度。需要结果时追加 --wait,提交返回的 jobIdstatus: SubmittedresumeCommand 都不代表完成。只有终态成功且 result.mediaresult.textresult.subtitlesresult.voicesresult.shots 等领域结果存在,才可报告完成;超时原样执行 resumeCommand,失败不要静默重提。

不得传入或转发 URL、path、method、header、token、Authorization 或原始请求体。JSON 只解析 stdout,错误或 text 输出不提取结构化结果。yike smart-job 不是公开命令或产品概念,不得公开或使用。

MCP 代理

mcp proxy 仅在安装包预配置了对应 server alias 时可用。当前公网生产包 @yikeai/cli 未配置 yike-aigc;以下配置只适用于已启用该 alias 的预发或定制构建,否则命令会在联网和鉴权前返回未配置错误:

command: yike
args: ["mcp", "proxy", "--server", "yike-aigc"]

mcp proxy 是长期协议进程和长期登录态委托层。Host 不传 --token--header--url--resource,也不在 Host 内做 OAuth;代理只使用保存在 Yike CLI 中的 OAuth access/refresh pair,并把当前有效 access token 发送到构建期固定的获准 MCP HTTPS Origin。环境 PAT 和保存 PAT-only 会被明确拒绝,并提示执行 yike auth login

该进程的 stdout 只承载 JSON-RPC,stderr 只用于诊断;不要追加 --format 或解析普通结果。当前构建可用的 server alias 与参数边界见 yike mcp proxy --help

检查生成结果

查询一个或多个媒资:

yike media info <mediaId> --format json

检查视频时长和最低分辨率:

yike media doctor <mediaId> \
  --expect-duration 5 \
  --min-width 1280 \
  --min-height 720 \
  --format json

AI Agent 集成

全局安装或升级 CLI 时,会自动尝试将内置的 using-yike-cli skill 同步到常见 Agent skill 目录。需要手动安装或修复时执行:

yike self skill install --format json

安装到指定的 skill 根目录:

yike self skill install --target <skill-root> --format json

mcp proxy 外,Agent 调用 CLI 时建议统一使用 --format json,并根据返回的 jobIdmediaIdresumeCommandnextAction.command 继续后续操作。mcp proxy 按专用协议规则运行,不能追加 --format

匿名使用统计

Yike CLI 默认通过 HTTPS 向 https://gm.mmstat.com/yikecom.cli.use 发送一条 A+ Click(CLK)类型的命令终态事件,用于统计命令使用量、成功率、版本分布和执行耗时。内网包 @ali/yike-cli 与公网包 @yikeai/cli 均默认启用;--help-hhelp--version-V 不发送事件。

单条事件只包含以下白名单字段:

  • 归一化命令名,例如 generate imagemedia uploadyike ai 各子命令与 mcp proxy 同样按完整命令路径记录,例如 ai image free-viewai job getmcp proxy。命令路径之后的位置参数(素材 ID、prompt、配置键)以及 --server--model 等选项和取值一律不上报;无法识别的命令固定记录为 unknown
  • successfailurepending 执行结果、退出码和执行耗时
  • CLI 包名、CLI 版本、操作系统、Node.js 版本和遥测协议版本
  • 仅用于单次事件排查和去重的随机 run_id

CLI 不会上报原始命令行参数、选项值、prompt、文件路径、素材或任务 ID、URL、token、Cookie、配置内容、错误消息或堆栈、trace 内容、Git 用户名、邮箱及 Yike 账号信息。CLI 只把白名单事件交给一个 detached 后台 reporter 进程并立即继续退出,不等待 DNS、TLS 或服务端响应;reporter 自身的网络请求最长运行 1 秒,上报失败不会改变原命令的耗时、输出和退出码。

可以持久化关闭匿名使用统计:

yike config set telemetryDisabled true

也可以只对当前环境关闭:

export YIKE_TELEMETRY_DISABLED=1

trueyes(不区分大小写)也会关闭上报,0falseno 会显式启用;空值或其他非法值不覆盖已保存的 telemetryDisabled。旧变量名 YIKE_DISABLE_TELEMETRY 仍兼容,但新配置应使用 YIKE_TELEMETRY_DISABLED。排查 reporter 无法启动时,可临时设置 YIKE_TELEMETRY_DEBUG=1;它只向 stderr 输出脱敏的 spawn 错误码。

环境变量

环境变量会覆盖本地保存的默认配置:

变量用途
YIKE_API_TOKENYike API 访问令牌
YIKE_WORKSPACE_ID默认工作区 ID
YIKE_PROJECT_ID默认项目 ID
YIKE_PRODUCTION_ID项目 ID 的兼容变量
YIKE_MODEL默认生成模型
YIKE_TELEMETRY_DISABLED设为 1trueyes 时关闭匿名使用统计
YIKE_DISABLE_TELEMETRY匿名使用统计关闭开关的兼容旧变量名
YIKE_TELEMETRY_DEBUG设为 1trueyes 时输出脱敏的 reporter spawn 错误码

更新与卸载

检查是否有新版本:

yike update --check

升级到最新版本:

yike update

使用 npm 卸载:

npm uninstall -g @yikeai/cli

常见问题

yike: command not found

检查 npm 全局可执行目录是否位于 PATH

npm prefix -g

安装时报 Node.js 版本不兼容

升级到 Node.js 20 或更高版本后重新安装。

npm 返回 404

确认使用的是 npm 官方 registry:

npm install -g @yikeai/cli --registry=https://registry.npmjs.org

登录或鉴权失败

重新执行:

yike auth login

项目无权限或项目配置错误

重新获取当前账号可用的项目并设置正确的 projectId

yike config list projectId --format json
yike config set projectId <projectId> --format json

许可证

本项目采用 MIT 许可证。

FAQs

Package last updated on 09 Sep 2026

Related posts