跳至正文
文档目录
工具接入

图片与视频 Skill

在 Claude Code 或 Codex 中安装 cr-media,用自然语言生成、编辑图片和视频。

cr-skills 提供 cr-media,让 Agent 按模型能力生成或编辑图片、生成视频、使用首尾帧或参考图,以及编辑视频。它包含调用脚本和模型参数说明,脚本负责提交任务、轮询与下载。

你可以直接把仓库链接发给自己的 Agent,让它按 README 安装。模型支持范围随 Skill 版本更新;实际可调用的模型仍取决于 API Key 权限,可在模型目录查看。

安装与升级

以下方式选一种即可。脚本运行需要 Bash、curl、jq、ffprobe(来自 FFmpeg)、file 和 base64;仓库提供的是 Bash 脚本,Windows 请在 WSL 中使用。

使用 npx skills

本机已安装 Node.js 和 npm 时,在项目目录运行:

npx skills add https://github.com/bmrlab/cr-skills --skill cr-media

按提示选择 Claude Code 或 Codex,也可添加 --agent claude-code 或 --agent codex 指定客户端。默认安装到当前项目;需要在所有项目中使用时添加 -g。

此方式安装独立 Skill,包含脚本和参考资料。它由 skills 管理,不登记到客户端的插件市场。更新当前项目中的 Skill:

npx skills update cr-media -p

全局安装使用 npx skills update cr-media -g。安装或更新后,在相应项目中打开新的 Agent 会话。

使用 Claude Code 插件

在终端运行:

claude plugin marketplace add bmrlab/cr-skills
claude plugin install cr-media@cr

之后用 claude plugin update cr-media@cr 更新,再重启 Claude Code。也可在 /plugin 的 Marketplaces 中为 cr 开启自动更新。

使用 Codex 插件

在支持插件命令的 Codex CLI 中运行:

codex plugin marketplace add bmrlab/cr-skills
codex plugin add cr-media@cr

之后按仓库 README 使用 codex plugin marketplace upgrade cr 刷新,并打开新的 Codex 会话。若客户端没有 codex plugin 命令,使用上面的 npx skills 方式。

配置 API Key

在 API Key 页面创建或复制完整 API Key,替换下面的 API_KEY。API Key ID、Key 前缀和 Management Token 不能用于模型调用。

mkdir -p ~/.config/cr
printf 'CR_API_KEY=%s\n' 'API_KEY' > ~/.config/cr/env
chmod 600 ~/.config/cr/env

命令会写入或覆盖该配置文件。脚本优先读取环境变量 CR_API_KEY,未设置时读取 ~/.config/cr/env,请求发往 https://api.creative-reasoning.com。Claude Code 的 ANTHROPIC_AUTH_TOKEN 和 Codex 文本模型配置中的其他变量不会自动作为此 Skill 的密钥。

生成与读取结果

在 Agent 的新会话中提出任务,例如:

使用 cr-media 生成一张白色背景上的蓝色陶瓷杯图片,保存到 ./cr-output,
文件名前缀为 cup。先核对模型支持的尺寸和参数,完成后给出文件路径、
实际尺寸、格式和任务 ID,并打开图片检查内容。

生成视频时,说明画面、时长、比例、是否需要声音,以及使用首帧还是参考图。Agent 应根据 Skill 随附的图片模型说明或视频模型说明选取参数。--dry-run 只打印请求,不提交生成;正式生成按模型实际用量计费。

脚本默认将结果保存到当前目录下的 ./cr-output,也可指定其他目录。完成后核对摘要与实际文件:

结果读取方式
图片files[].file 是本地文件路径,size 和 mime 是检测到的尺寸与格式;打开图片确认内容
视频file 是本地文件路径,duration_s、size、fps、audio 用于核对成片;播放或抽帧确认内容
任务记录<name>.json 保存请求与响应,name 是指定的文件名前缀;提交成功后可从 submit.id 取得任务 ID

若任务完成但文件下载或解码失败,保留任务 ID,从原任务结果重新下载。图片摘要的 size 为 unknown,或 mime 不是图片类型时,先检查文件内容,不能仅凭任务完成判断文件可用。

任务仍在处理、等待超时或会话中断时,让 Agent 从记录中读取原任务 ID,使用 cr-image --resume 或 cr-video --resume 继续查询。恢复时使用原 API Key;不要把重新运行生成命令当成继续等待。任务失败时读取记录中的 final.error;提交报错查看 submit。具体状态和恢复规则见异步任务说明。

先生成图片,再生成视频

先确认目标视频模型的图片输入格式。脚本会把本地图片转换成 data:image/...;base64,...,但只有接受 Data URI 的模型才能直接使用;脚本能转换文件不代表模型支持该格式。

  • 目标模型接受 Data URI 时,可以把刚生成的本地图片交给 Agent,作为首帧、尾帧或参考图。
  • 目标模型仅接受 HTTP(S) URL 时,提供它可直接读取的图片地址。如果生图响应已有可用的 data[].url,可在有效期内复用;如果只有本地文件或 b64_json,需要先将图片保存到自己管理的可访问存储。Skill 不提供图床或自动上传服务。
  • 出现 URL scheme must be HTTP(S) 时,检查输入格式;反复提交同一份 Base64 无法解决该错误。具体支持范围查看当前模型说明,不将某个模型的限制推广到所有图片或视频模型。

直接通过 HTTP 接入时,参见生成与编辑图片和生成视频。

维护:CR Platform