Jimeng Video — 即梦 CLI 视频/图片生成
概述
即梦 CLI(jimeng-cli)是字节跳动官方提供的 Agent 工具包,让 AI Agent 通过命令行调用即梦(Dreamina)/CapCut 的图像和视频生成能力。
- npm 包:
jimeng-cli@0.3.9 - 作者: Jimeng CLI Team (ByteDance)
- 许可证: GPL-3.0
- 发布时间: 2026-05-01
- 官方文档: https://bytedance.larkoffice.com/wiki/FVTwwm0bGiishxkKOoScdHR2nsg
当前环境状态
| 项目 | 值 |
|---|---|
| 安装状态 | ✅ 已安装 |
| Token | ✅ 已配置 (cn, credits: 2,238) |
| 图片生成 | ✅ 已验证 (jimeng-4.5, 2560×1440) |
| 视频 3.0-fast | ✅ 可用 |
| 视频 3.0-pro | ✅ 可用 |
| 视频 3.5-pro | ✅ 可用 (原报 1006 已恢复) |
| Seedance 2.0 | ❌ 账户不可用 — models list 中无此模型,omni_reference 模式不可用 |
| 默认视频模型 | ❌ jimeng-video-3.0 已下线 (错误码 2061) |
安装
npm install -g jimeng-cli
三个可执行文件:
jimeng-cli— CLI 入口jimeng— 别名(推荐使用)jimeng-mcp— MCP 服务器入口
环境要求:
- Node.js
- Python 3(浏览器自动登录需要)
- Chrome/Chromium(浏览器自动登录需要)
认证(登录)
方式一:sessionid 注入(推荐,免浏览器)
# 1. 从浏览器获取 sessionid
# 打开 https://jimeng.jianying.com/ai-tool/home/ → 登录
# F12 → Application → Cookies → jimeng.jianying.com → sessionid
# 2. 注入 token
jimeng login --sessionid <your_sessionid> --region cn
方式二:浏览器自动登录
jimeng login --region cn
# 自动打开 Chrome,扫码登录
# WSL 环境需确保 Chrome 在 PATH 中
方式三:官方一键安装脚本
curl -s https://jimeng.jianying.com/cli | bash
Token 管理
jimeng token list # 列出所有 token
jimeng token check # 验证 token
jimeng token points # 查询积分
jimeng token pool # 查看 token 池状态
jimeng token add ... # 添加 token
jimeng token remove ... # 移除 token
配置目录:~/.dreamina_cli/
日志目录:~/.dreamina_cli/logs/
核心命令
模型查询
jimeng models list # 列出可用模型
jimeng models refresh # 刷新模型列表
图片生成
# 文生图
jimeng image generate \
--prompt "贵州万峰林日出,云雾缭绕,航拍视角" \
--model jimeng-4.5 \
--ratio 16:9 \
--resolution 2k
# 图编辑
jimeng image edit --prompt "..." --image-file ./input.png
# 超分
jimeng image upscale --image-file ./input.png
默认模型: jimeng-4.5,默认分辨率 2k,默认比例 1:1
每 prompt 产出 4 张变体:
jimeng-4.5一次生成返回 4 个不同结果的 URL。--no-wait模式下task get会列出全部 4 个 URL。批量生成用--no-wait+ 轮询 + curl 下载,详见references/batch-image-generation.md。
视频生成(4种模式)
| 模式 | 命令 flag | 输入要求 | 默认模型 | 可用? |
|---|---|---|---|---|
| 文生视频 | --mode text_to_video |
仅 prompt | jimeng-video-3.0 | ✅ |
| 图生视频 | --mode image_to_video |
1张图 + prompt | jimeng-video-3.0 | ✅ |
| 首尾帧 | --mode first_last_frames |
1-2张图 + prompt | jimeng-video-3.0 | ✅ |
| 全能参考 | --mode omni_reference |
1-9张图 + 0-3视频 + prompt | seedance-2.0-fast | ❌ 账户无此模型 |
⚠️ omni_reference 不可用时的替代方案:使用
image_to_video模式,所有镜头共用同一张参考图(建议选最具代表性的基地全景图),通过 prompt 分别描述每个镜头的独特内容。一致性靠共享的参考图锚定,细节靠 prompt 引导。详见references/multi-shot-without-seedance.md。
⚠️ omni_reference 不可用:该模式强制要求
jimeng-video-seedance-2.0或jimeng-video-seedance-2.0-fast,这两个模型不在当前账户的models list中。尝试使用会报错:region 已匹配,但无 token 支持模型 jimeng-video-seedance-2.0-fast。多镜头一致性降级方案:用
image_to_video替代,选一张最能代表整体场景的参考图(如基地航拍全景),所有镜头共用同一张图作为视觉锚定。每个镜头用不同的 prompt 描述具体画面、运镜和动作。一致性不如 omni_reference,但在无 seedance 的条件下是最佳方案。
# 文生视频
jimeng video generate \
--mode text_to_video \
--prompt "万峰林日落延时,云雾从山谷升起,金色光线穿过山峰" \
--ratio 16:9 \
--duration 5 \
--resolution 720p
# 图生视频(从静态图生成动态视频)
jimeng video generate \
--mode image_to_video \
--prompt "Camera slowly pushes in, mist flowing" \
--image-file ./wanfenglin.png \
--duration 5
# 首尾帧过渡
jimeng video generate \
--mode first_last_frames \
--prompt "Day to night transition over karst mountains" \
--image-file ./day.png \
--image-file ./night.png
# 全能参考(多素材混合)— 注意:omni_reference 使用编号参数!
jimeng video generate \
--mode omni_reference \
--model jimeng-video-seedance-2.0-fast \
--prompt "Use @image_file_1 as character reference, @image_file_2 as location, @video_file_1 for motion style" \
--image-file-1 ./char_ref.png \
--image-file-2 ./bg.png \
--image-file-3 ./style.png \
--video-file-1 ./motion_ref.mp4 \
--duration 5 \
--ratio 16:9
默认参数: 分辨率 720p,时长 5s,比例 1:1
任务管理
jimeng task get <task_id> # 查询任务状态
jimeng task wait <task_id> # 等待任务完成
jimeng task list # 查看历史任务
异步模式:加 --no-wait 立即返回 task_id,后续用 task wait 轮询。
AI Native Workflow 集成点
1. 行程视频预览(trip-landing 增强)
用户行程方案 → trip-landing 提取景点 → mmx search query 搜索景点参考图
→ mmx vision describe 分析参考图 → jimeng text_to_video 生成预览视频
→ 嵌入落地页 → OSS 部署
2. 营销素材自动生成
travel-monitor 采集竞品 → mmx vision describe 分析竞品视觉
→ 提取差异化卖点 → jimeng image generate 海报图
→ jimeng video generate 短视频 → 归档至文案素材
3. 客户方案视频化
feishu-doc 行程方案 → 提取关键帧描述 → mmx vision describe 分析目的地参考图
→ jimeng first_last_frames / omni_reference 生成过渡视频
→ 嵌入方案文档
4. 定时批量生成
cron: 每周一 9:00 → 读取文案素材库最新行程
→ jimeng image generate --prompt 批量生成宣传图
→ 输出至 OSS → 更新素材库
与现有技能的关系
| 技能 | 集成方式 |
|---|---|
trip-landing |
落地页嵌入 AI 生成视频 |
travel-monitor |
竞品分析 → 自动生成对比视频 |
feishu-doc |
方案文档嵌入视频素材 |
huashu-design |
设计原型嵌入 AI 图片 |
多镜头视频生成
需要按分镜脚本生成多个镜头后拼接成片?见 references/seedance-multi-shot-workflow.md。核心要点:各镜头共用同一组 --image-file-N 参考图维持一致性,用 ffmpeg 拼接。
Seedance 不可用时 → 见 references/multi-shot-without-seedance.md:用 image_to_video + 单张锚定图替代,所有镜头共用同一参考图。
完整生产线(含配音+配乐+ffmpeg组装) → 见 references/video-production-pipeline.md。
需要将完整宣传片脚本(10+ 分镜)分解为 6-8 个 Seedance 生成任务?见 references/script-to-seedance-decomposition.md。方法论:分类→合并同类镜→标注不可生成→写 prompt→汇编。
ffmpeg 精剪拼接模板(trim/slow/montage/logo)见 references/ffmpeg-assembly-pattern.md。
⚠️ 铁律(违反即返工)
铁律 1:单次视频生成 ≤ 15 秒
即梦长视频(>15s)质量急剧下降,画面崩坏、抖动、形变。任何视频生成任务,单次 --duration 不得超过 15 秒。
如需更长成片,拆分为多个 ≤15s 镜头分别生成后 ffmpeg 拼接。
铁律 2:每个镜头必须有参考主体图(推荐 image_to_video)
所有视频镜头必须有至少一张参考图控制视觉方向,禁止纯 text_to_video(无图控制、结果随机)。
推荐模式(按优先级):
image_to_video(首选,生产最常用):一张高质量参考图 + 详细 prompt。单图足够锚定场景色调、构图和主体。first_last_frames(需要精确过渡时使用):首帧图 + 尾帧图,控制起始和结束画面。仅当需要精确的场景转换时使用。
video-production-pipeline.md使用image_to_video作为生产工作流,已验证效果可靠。
首尾帧图来源:
- 用户提供的参考图(优先)
- 即梦图片生成先产出关键帧(
jimeng image generate) - 从现有视频截取代表性帧(
ffmpeg -i input.mp4 -ss 2 -vframes 1 frame.png)
铁律 3:多镜头任务先拆后拼
多镜头视频 → 逐镜头独立生成(每镜 ≤15s、带首尾帧)→ ffmpeg concat 拼接。
🎬 Prompt 工程核心:情绪导演方法论
完整方法论见
references/emotion-director-prompt-engineering.md。本方法论吸收自 Seedance 2.0 情绪导演 SKILL v2.1,已适配所有 jimeng 视频模型。
核心铁律(prompt 书写层面)
- 禁止文学化修辞:无比喻、拟人、象征、夸张 → 全部替换为物理世界直接描述
- 物理优先:光线/动作/表情/声音/空间全部用 AI 可理解的相对化描述(光源位置、身体参照、明暗对比、色温倾向)
- 时间轴精确到秒:逐秒拆分,景别+动作+神态+台词
- 字数 ≤ 1900 字:含标点,超限按优先级压缩
数值替换对照(强制)
| 禁止 ❌ | 替换 ✅ |
|---|---|
| X厘米/秒、X米、X毫米 | 身体参照(一臂距离/一拳之隔)或画面比例(人物占画面一半) |
| X度、X:X 受光比 | 低/高角度、面部半明半暗/几乎无阴影 |
| X次/秒 | 频繁/间隔变长/几乎不 |
情绪→生理转化表(最常用)
| 情绪 | 可拍摄的生理表现 |
|---|---|
| 恐惧 | 瞳孔扩大,胸口快速起伏,手指轻颤,身体后缩 |
| 愤怒 | 下颌肌肉隆起,颈部青筋可见,拳头紧握指节发白 |
| 悲伤 | 眼睑下垂,嘴角下拉,肩膀内收,头部低垂 |
| 喜悦 | 嘴角上扬,眼角出现皱纹,身体舒展 |
| 绝望 | 瞳孔涣散失焦,头部无力下垂,双手垂落 |
六段式 Prompt 结构
所有视频 prompt 严格按此结构输出:
一、视听限制 —— 无BGM/纯环境音/禁止字幕水印
二、语言台词 —— 语种、语速、音量、音质标注
三、运镜手法 —— 方式、运动轨迹、镜头是否移动、与角色关系
四、风格色调与光景 —— 视觉风格、色彩调性、光源位置+色温
五、角色与场景设定 —— 外貌(相对描述)、服装、地点、时间、环境要素
六、时间轴详细叙事 —— 按秒拆分:[0-5s] 景别/动作(起点→过程→终点)/神态(肌肉运动)/台词(音量标注)/声音设计
动作四层次(防止 AI 木偶化)
| 层次 | 定义 | 示例 |
|---|---|---|
| 微动作 | 无意识小动作 | 指尖轻颤、脚尖点地 |
| 惯性动作 | 情绪驱动习惯 | 紧张摸耳垂、焦虑搓手指 |
| 神经反应 | 突发本能反应 | 瞳孔震动、吞咽、重心失衡 |
| 失控反应 | 情绪峰值失控 | 肩膀剧烈抖动、膝盖发软 |
降级适配说明(Seedance 不可用时)
本方法论原为 Seedance 2.0 设计,当前环境 Seedance 不可用。适配 jimeng-video-3.5-pro 时:
- 六段式结构和物理优先原则完全适用,保持不变
- 单镜头 ≤ 5s(3.5-pro 的实际输出上限),多镜头拼接
- 多镜头一致性靠共享参考图锚定(
image_to_video+ 同一张--image-file),详见references/multi-shot-without-seedance.md omni_reference的多素材融合能力不可用,所有视觉控制靠单图 + prompt
宣传片制作:脚本优先工作流
用户要求制作宣传视频时,先交付可执行的制作脚本,不要直接消耗积分生成。用户偏好自己审查脚本后决定是否执行。
流程:
- 设计分镜脚本(时间轴 + 钩子文案)
- 写出完整 bash 脚本(图片→视频→ffmpeg拼接→文字叠加→BGM)
- 先交付脚本,确认后再执行
脚本模板见 templates/promo-video.sh。
常见问题
WSL 环境登录
自动浏览器登录在 WSL 中可能失败(Chrome 路径问题)。
→ 使用 sessionid 注入方式:手动从浏览器复制 sessionid → jimeng login --sessionid <值>
Token 过期
jimeng token check # 检查所有 token 状态
jimeng login ... # 重新登录添加新 token
任务超时
生成任务默认等待,可能超时(尤其是视频)。
→ 使用 --no-wait + task wait <id> --wait-timeout-seconds 600
实测陷阱(2026-05-28 全流程验证)
详见 references/verification-20260528.md — 完整安装/登录/图片/视频/3.5-pro 批量生成记录。
- npm 全局安装后 bin 可能不在 PATH:使用
node $(npm root -g)/jimeng-cli/dist/cli/index.js直接调用 jimeng-cli命令可能不可用:bin 链接在 WSL 中未正确创建,使用node直接执行- WSL 浏览器登录失败:CLI 的 Python 自动化登录脚本在 WSL 中可能无法找到 Chrome。使用
--sessionid手动注入 - sessionid 来源:即梦域名
jimeng.jianying.com,用jimeng login --sessionid <值> --region cn注入 - region 默认 cn:国内用户无需指定,国外需
--region us/hk/jp/sg - 视频生成耗时:5s 视频通常 2-5 分钟,建议
--no-wait+task wait - 默认视频模型不可用:
jimeng-video-3.0已下线(错误码 2061),必须指定--model jimeng-video-3.0-fast或jimeng-video-3.0-pro --duration实际输出上限 5s:jimeng-video-3.5-pro的--duration 8/--duration 7均输出 5s。--duration参数被静默忽略,实际按 5s 生成。需要更长的片段用setpts慢放(setpts=1.6*PTS+atempo=0.625可拉伸 5s→8s),或生成多个 5s 片段拼接--no-wait不下载文件:--no-wait模式下文件不会保存到--output-dir。必须用task get --task-id <id>获取云端 URL,然后 curl 手动下载task get输出不是纯 JSON:输出是带格式的人类可读文本(含 Status/Data/URL),用 grep 提取 URL,不要用 python json.load — 会抛 JSONDecodeError- 任务状态码:20=PROCESSING, 45=UNKNOWN(仍在处理中,可能卡住需重试), 50=COMPLETED。45 并非错误,多数 2-3 分钟后转 50。若长时间 45 且无 URL,直接 resubmit — 重试通常立即完成
- 每 prompt 4 变体:
jimeng-4.5图片生成每次返回 4 个不同结果的 URL,非 1 个 - 批量生成模式:并行
--no-wait提交 → shell 轮询task get→curl下载。详见references/batch-image-generation.md
图片理解(MiniMax CLI mmx-cli)
用于分析参考图 → 提取视觉描述 → 嵌入 jimeng prompt 的工作流。这是 mmx-cli 在此项目中的核心用途。
ℹ️
mmx-cli还支持视频/图片/音乐/语音生成、网络搜索、文本对话等能力。完整命令参考见references/minimax-cli-reference.md。
安装与配置
npm install -g mmx-cli
# WSL 环境 bin 不可用,使用 node 直接执行
MMX="node $(npm root -g)/mmx-cli/dist/mmx.mjs"
$MMX auth login --api-key <minimax-api-key> # 自动检测 region cn
$MMX quota # 查看配额
图片描述
$MMX vision describe --image ./ref.jpg --prompt "详细描述人物外观、服饰、场景色调"
# 输出 JSON:{"content": "...", "base_resp": {"status_code": 0}}
- 消耗
coding-plan-vlm配额 - 支持本地路径和 URL
- 默认 prompt "Describe the image.",建议自定义中文 prompt 获得更精准描述
与 jimeng 集成
参考图 → mmx vision describe → 文字描述 → 嵌入 jimeng video generate --prompt
(无需切换视觉模型,无需人工描述)
- 积分限制:
jimeng-video-3.5-pro需要更高额度,确认积分 > 2000 后可用 - --wait 模式可能挂起:图片生成使用
--wait时,CLI 的轮询机制在完成后可能不退出,建议使用--no-wait+ 手动task get - 输出文件: 图片 PNG、视频 MP4,默认输出到
--output-dir指定的目录 - --task-id 参数名:
task get需要--task-id(不是位置参数)