用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/volcengine/ark-cli --skill arkcli-gen命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | arkcli-gen |
| version | 2.1.0 |
| description | 火山方舟 Ark 图片/视频生成入口:支持 profile 默认资源与临时 API Key/Base URL/Endpoint;显式 Endpoint 不受当前 plan profile 误导。图片同步返回,视频异步轮询。 |
| metadata | {"requires":{"bins":["arkcli"]},"cliHelp":"arkcli +gen --help"} |
CRITICAL — 开始前 MUST 先用 Read 工具读取 ../arkcli-shared/SKILL.md(认证闸门、模型查找回退、共享安全规则)。
CRITICAL — 这是一段三步工作流,不是单条命令。生成图/视频 MUST 按 Step 1 → Step 2 → Step 3 顺序执行。禁止跳过 Step 1/2 直接 +gen:会因模型名形态不对(404)或传了模型不支持的参数而失败。执行前务必读 references/arkcli-gen.md。
CRITICAL — 用户显式给出 API Key / Base URL / Endpoint 时,MUST 先读 ../arkcli-shared/references/execution-context.md。显式 Endpoint 的权威元数据优先于当前 profile。
火山额外约束:不要因为 active profile 是 Agent/Coding Plan 就把用户给出的 Endpoint 当套餐模型调用。
用户说"生成一个视频/一张图",本质是三件独立的事,必须按序:
① 本次资源从哪里来 ── 用户显式 Endpoint 优先;否则看当前 profile
② 该模型支持哪些参数 ── 不查就传参 = 瞎猜 = 被校验拒/被后端拒
③ 按可用参数真去生成
把这三步压成"直接 +gen 猜一条命令",正是失败之源:模型名形态不对会 404,参数模型不支持会被拒。
+gen 的生产调用按以下固定优先级解析能力:
explicit --modality > output_modalities > task types > unknown
output_modalities;缺失时再读取 FoundationModel 的 task_types / filter_task_types。ep-* 时,先读取 Endpoint 的 ModelReference.FoundationModel(name, version),再精确匹配同版本模型的上述结构化元数据。seedream、seedance 或任何国内/海外品牌前缀推断 image/video。unknown,提示用户显式传 --modality image|video;禁止静默猜测。+gen --dry-run 是纯本地 Client Preview:不读取 Endpoint/模型元数据、不调用
生成 API,也不下载或打开文件。显式 --modality 最可靠;已知
seedream/seedance 模型名可本地判断,其他模型或 Endpoint 必须显式传
--modality image|video。在线才能补齐的执行上下文会以 unresolved 和
fidelity=partial 明示。用户意图: "生成 X"
│
▼ Step 1【强制】解析本次资源
│ 用户给 Endpoint → arkcli resources resolve <ep-id>
│ 未给 Endpoint → arkcli resources list --modality image|video
│
│ 当前 profile 可用资源:
│ platform → 列 EP (ep-xxx) ┐
│ agent-plan → 列视觉模型名 ├─ 选一个,记为 $MODEL
│ coding-plan → 列 EP (借道 platform) ┘
│
▼ Step 2【强制·EP 除外】查 $MODEL 可用参数 ──► arkcli models get $MODEL --transform supported_params
│ 模型名 + 有 sp → **只能**用列出的参数,取值落 min/max/enum 内
│ 模型名 + sp 空(未配置或当前不可解析) → +gen 自动套 modality 兜底默认(video 720p/5s, image 2048)
│ EP(ep-xxx) → 跳过, 不强填(背后能力未知), 服务端裁决
│
▼ Step 3 据可用参数生成 ──► arkcli +gen --model $MODEL [Step2 允许的参数] "prompt"
│
▼ Step 4【结果处理】
视频 = 异步:返回 task_id + status=queued(**不是失败!**) → arkcli gen get <task_id> 轮询;轮到 succeeded 自动下载到本地(local_path);要同步阻塞加 --wait
图片 = 同步:直接返回 output_url + local_path
用户已经显式给出 Endpoint 时,不要先用 active profile 的模型池覆盖它:
arkcli resources resolve "$ENDPOINT" --format json
generation_modality 决定 image/video;image_or_video 或 unknown 时再结合
用户意图,必要时显式补 --modality。resource_region;Endpoint + 显式 API Key 且未给 Base URL 时,CLI 用该
region 派生 platform Base URL。seedream / seedance 子串猜模态。用户未给显式 Endpoint 时,再按 profile 列资源:
# 按目标模态列;输出 items[].id 就是可作 --model 的候选
arkcli resources list --modality video # 或 image
platform profile → items 是推理接入点 EP(ep-xxx),每个 EP 内部绑定一个模型agent-plan profile → items 是视觉模型名(如 doubao-seedance-2.0-fast)coding-plan profile → 自身不含视觉模型,+gen image/video 会自动借道 platform 数据面,--model 必须显式传一个 platform 上的 EPis_default: true 标记的是该模态当前默认;用户没指定时优先用它$MODEL,贯穿 Step 2/3resources list 核对它在当前 profile 可用;若与默认不同,按 ../arkcli-shared/references/profile-defaults.md "Default 漂移检测与 promote nudge" 处理arkcli models get "$MODEL" --transform supported_params
$MODEL 是模型名:拿到该模型的 supported_params 清单(每项含 name / type / support / min / max / enum / required)。
MUST:Step 3 只能使用这里
support=true的参数,且取值必须落在min/max/enum范围内。 不在清单里的参数(或support=false)传了会被+gen拒绝。
doubao-seedance-2.0-fast 都行):models get 会自动按 DisplayName 归一化到规范连字符 name,无需手动转。极个别仍报 not found 才用 arkcli models search <族名> 核对名字。supported_params 为空 / null → 该版本未配置参数目录,或上游目录当前不可解析;若 stderr 有 warn: model supported_params enrichment failed: ...,保留该告警用于排障。不要手动猜参数:+gen 会自动用内置 modality 兜底默认(video: resolution=720p / duration=5 / ratio=adaptive;image: size=2048x2048)填充你没指定的参数。直接进 Step 3。$MODEL 是 EP(ep-xxx):跳过本步。EP 查不到 supported_params 是正常的;且 +gen 不会对 EP 套兜底默认(EP 背后模型可能支持更高能力,强填会误降级),直接 degrade-open 由服务端裁决。
+gen 仍会沿 Endpoint → ModelReference → FoundationModel 元数据 自动解析 image/video。--modality。# 文生图 / 文生视频
arkcli +gen --model "$MODEL" "<prompt>"
# 带 Step 2 确认过的参数(示例:视频 1080p + 优先级 9,前提是 supported_params 列了它们)
arkcli +gen --model "$MODEL" --resolution 1080p --priority 9 "<prompt>"
# 图生图 / 图生视频 / 参考素材:--input 可重复
arkcli +gen --model "$MODEL" --input @ref.jpg "<prompt>"
--input 规则、新增 --n/--priority/--wait 见 references/arkcli-gen.mdunknown /
image_or_video 且用户意图仍不足时要求显式 --modality。--save-to <dir>);JSON 里的 local_path 是持久产物,预签名 output_url 24h 失效,优先引用 local_path。--save-to="" 关闭local_path。--open 强制打开、--no-open 强制不打开。仅对已落地本地文件生效(异步视频未 --wait 时无本地文件、不打开);多产物只打开前若干个--open:你(AI agent)调用 arkcli 时 stdout 被你接管 = 非 TTY,默认 auto 不会弹窗,用户只能看到文件路径、看不到成品。为了让用户直接看到生成的图/视频,凡是给真人出图/出视频的 +gen 与轮询到 succeeded 的 gen get,默认都加 --open(--open 无视 TTY 强制在用户桌面打开)。例外只在:用户明确说"别打开/在脚本里/批量/不要弹窗",或一次出图 >4 张批量场景 → 这时省略 --open 或显式 --no-open。| 模态 | 默认行为 | 你该怎么读结果 |
|---|---|---|
| 视频 | 异步:立即返回 task_id + status: queued | queued 不是失败。用 arkcli gen get <task_id> --open 轮询到 succeeded——这次 gen get 会顺手把产物下载到本地并回带 local_path(默认 CWD,<task-id>.mp4),--open 让成品直接在用户桌面弹出(你是 agent,非 TTY,不加就只有路径);不必再手动 curl output_url;不要因为没拿到视频就重提 +gen(会建新任务) |
视频 + --wait | 同步:阻塞到完成再返回 | arkcli +gen ... --wait --open,直接拿 output_url / local_path 并弹出成品 |
| 图片 | 同步:直接返回 output_url + local_path | arkcli +gen ... --open 让图片直接弹给用户看 |
⚠️ 行为变更(2.0):视频任务默认已从"自动等待完成"改为"提交即返回 task_id"。需要旧的同步阻塞行为,显式加
--wait。
resources list 列当前 profile 候选;模型族不确定 → 转 ../arkcli-models/SKILL.md--input @<file>(可重复)queued,用 arkcli gen get <task_id> --open 轮询;轮到 succeeded 那次会自动下载到本地(看返回的 local_path)并弹出成品,别重提--open → 你是 agent(非 TTY),不加用户只能看到路径、看不到成品;只有"别打开/脚本里/批量 >4 张"才省略或 --no-open| 用户怎么说 | 对应 flag / 命令 |
|---|---|
| "生成完直接打开/帮我打开看看/出来就弹给我" | arkcli +gen --open(强制用系统默认程序打开;默认在交互终端已自动打开) |
| "别自动打开/不要弹窗/我在脚本里跑别开" | arkcli +gen --no-open(强制不打开) |
| "预览/别真发/只看参数/dry run/试跑/先看一下" | arkcli +gen ... --dry-run --format json;核对 steps、unresolved 和 fidelity,不要把 partial 预览当作服务端校验 |
| "不要下载/只要 URL/不要保存到本地/关闭自动下载" | 命令显式加 --save-to="";即使同时是 --dry-run 也要保留,以便预览能核对真实执行时的关闭下载意图 |
| "草稿/快速预览/越快越便宜/省钱先看" | 视频命令显式加 --draft(草稿模式:更快、更便宜、质量更低);不能只缩短 duration 代替草稿语义 |
| "固定镜头/镜头不动/锁定相机/只拍光影变化" | 视频命令显式加 --camera-fixed;不能只把固定镜头要求写进 prompt |
| "不带水印/不要水印/关闭水印" | 省略 --watermark(默认 false);禁止使用裸 --watermark,它表示开启水印 |
| "强制执行/跳过校验/我知道不支持但想试一下" | arkcli +gen --force |
| "连贯多张/按顺序/统一风格/4格漫画/连续图片" | arkcli +gen --sequential |
| "我之前的任务/生成历史/任务列表/任务状态" | arkcli gen list(列出所有异步生成任务) |
| "那个任务跑完没/查进度/查状态" | arkcli gen get <task_id> |
| 命令 | 角色 |
|---|---|
arkcli resources list --modality image|video | Step 1 — 当前 profile 可用模型/EP |
arkcli resources resolve <endpoint-id> | Step 1(显式 EP) — 权威解析模态、工作流与 region |
arkcli models get <model> --transform supported_params | Step 2 — 查模型可用参数 |
arkcli +gen | Step 3 — 按可用参数生成 |
arkcli +gen --stream | 图片任务流式 NDJSON 输出 |
arkcli gen get <task-id> | Step 4 — 轮询/查询异步视频任务 |
arkcli gen list | 列出/过滤异步生成任务 |
arkcli gen delete <task-id> | 删除异步生成任务 |
not found → models get 已自动归一化点号/display 形态,仍报多半是名字真写错了,用 arkcli models search <族名> 核对param_not_supported)→ 回到 Step 2 看 supported_params,只用列出的;确需强制可加 +gen --force 跳过校验(服务端仍有最终裁决)ContentRiskBlocked / *SensitiveContentDetected / 命中敏感 / 版权)→ 不是参数问题、--force 也绕不过;调整 prompt / 输入素材里的敏感内容后重试。要结构化的拦截原因 + 修复指引,转 ../arkcli-doctor/SKILL.md 的 arkcli doctor error <code>(生视频拦截 5 个 subtype 全覆盖)../arkcli-auth/SKILL.mdsupported_params 详解+gen 全参数 + 多模态 + 异步语义使用 ArkCLI 创建、校验、查询、更新、删除、版本化和下载 Dataset。用户提到 Dataset、数据集、ds-*、dsv-*、训练集/验证集复用、数据格式校验或把 Dataset 接入精调任务时使用。
使用 ArkCLI 创建、查询和管理模型精调训练任务,并从训练指标选择最佳 step、导出训练产物为 custom model、衔接模型仓库与推理部署。任何包含精调任务 ID(`mcj-*`)的查询、查不到原因诊断、日志、trajectory、状态或生命周期操作都应使用本 skill;也适用于选择训练方法、查询精调价格和超参数、创建任务及导出部署。本 skill 不负责数据集管理。
arkcli helper:为 Claude Code / Codex / OpenCode / OpenClaw / Hermes 配置火山方舟 Plan 或 Platform Endpoint 的 model/provider,或给支持的 Agent(含 MCP-only Trae)配置 Harness 工具。真人 TTY 运行 `arkcli helper` 可选择模型和 Harness 能力;`helper mcp` 默认保持整组 Agent Plan MCP 行为,传 `--capability datapro|web-search|agent-memory` 只配单项,传 `--capability cua` 只给目标 Agent 安装云电脑 Skill;连 model/provider 一起配置用 `helper configure`,查状态用 `helper list`,移除用 `helper reset`。Agent Plan / Team 还支持专业数据集、豆包搜索、Agent 记忆、AI Native 应用开发底座、Agent 进化与 routing.v1 强制检索路由;上下文出现 ARKCLI ROUTING ENFORCEMENT / routing.v1,或用户要求在豆包搜索、DataPro、OpenViking、Supabase 之间强制分流时也使用本 Skill:调用这四类受管 Provider 前先提交 Route Plan,再调用唯一授权 Provider;原生 WebSearch/WebFetch/WebExtract 位于路由管理范围之外。Platform 只允许本人创建、Running、已验证为文本输出的 Endpoint,不配置 MCP、Supabase 或强制路由。豆包搜索配置成功后默认关闭目标客户端原生 WebSearch;传 `--keep-native-websearch` 可保留,并可用 `helper reset` 完整恢复 ArkCLI 配置。
基于 SOC 职业分类