mcpField
C
cli-anything-openscreen

cli-anything-openscreen

github.com/hkuds创意与媒体57.6k504 次安装5 周前更新
代码仓库

关于 cli-anything-openscreen

用于通过命令行编辑屏幕录制视频的工具,面向制作演示视频的用户和 Agent。它支持时间线区域调整、项目与会话管理,并可生成预览包和渲染成片。

主要功能

  1. 01缩放、变速与剪辑区域
  2. 02裁剪画面并添加文字标注
  3. 03管理项目设置与会话历史
  4. 04捕获预览包并渲染视频
  5. 05支持 JSON 输出

适用场景

  1. 01为产品演示录屏添加缩放和标注
  2. 02剪除录制中的片段并调整播放速度
  3. 03预览编辑结果后导出成片

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hkuds/cli-anything --skill cli-anything-openscreen

安装后在 Claude Code 中输入/cli-anything-openscreen确认已加载。

详细介绍

cli-anything-openscreen

一个用于编辑屏幕录制的有状态命令行界面。通过缩放效果、速度调整、裁剪、注释和精美背景,将原始录制内容转化为精致的演示视频。

安装

pip install cli-anything-openscreen

前置要求:

  • Python 3.10+
  • 系统中必须安装 ffmpeg

用法

基本命令
cli-anything-openscreen --help
cli-anything-openscreen                     # REPL mode
cli-anything-openscreen project new -v recording.mp4 -o project.openscreen
cli-anything-openscreen --json project info
REPL 模式

不带参数运行 cli-anything-openscreen 即可进入交互模式。 输入 help 查看可用命令,输入 quit 退出。

命令组

project

创建、打开、保存和配置项目。

命令描述
project new [-v VIDEO] [-o PATH]创建新项目,可选视频
project open <path>打开现有的 .openscreen 项目
project save [-o PATH]将项目保存到文件
project info显示项目元数据和区域数量
project set-video <path>设置源视频文件
project set <key> <value>设置编辑器设置(padding、wallpaper 等)
zoom

管理缩放区域——对特定时间线区域应用平滑缩放效果。

命令描述
zoom list列出所有缩放区域
zoom add --start MS --end MS [--depth 1-6] [--focus-x 0-1] [--focus-y 0-1]添加缩放
zoom remove <id>移除缩放区域

缩放深度:1=1.25x,2=1.5x,3=1.8x,4=2.2x,5=3.5x,6=5.0x

speed

管理速度区域——加快空闲时间,减慢重要时刻。

命令描述
speed list列出所有速度区域
speed add --start MS --end MS [--speed 0.25-2.0]添加速度变化
speed remove <id>移除速度区域

有效速度:0.25、0.5、0.75、1.25、1.5、1.75、2.0

trim

管理裁剪区域——剪掉录制中的部分片段。

命令描述
trim list列出所有裁剪区域
trim add --start MS --end MS剪掉一个片段
trim remove <id>移除裁剪区域
crop

设置录制的可见区域。

命令描述
crop get显示当前裁剪区域
crop set --x 0-1 --y 0-1 --width 0-1 --height 0-1设置裁剪(归一化)
annotation

向录制中添加文字叠加层。

命令描述
annotation list列出所有注释
annotation add-text --start MS --end MS --text "..." [--x 0-1] [--y 0-1]添加文字
annotation remove <id>移除注释
media

检查并验证媒体文件。

命令描述
media probe <path>显示视频元数据(分辨率、时长、编解码器)
media check <path>验证视频文件
media thumbnail <input> <output> [-t TIME]提取一帧
export

渲染最终的精美视频。

命令描述
export presets列出可用的导出预设
export render <output_path>将项目渲染为视频文件
preview

从当前 Openscreen 项目捕获可信的审阅包。

命令描述
preview recipes列出可用的预览配方
preview capture --recipe quick渲染低分辨率预览包
preview latest [--recipe quick]返回最新的现有预览包

当前预览支持是静态的,而非实时的。一个 quick 预览包通常包含:

  • 一段低分辨率预览片段
  • 采样帧
  • 一张用于快速检查的 hero 帧
  • 包含裁剪/缩放/速度事实的 summary.json

预览包捕获还会在预览根目录旁写入或更新一个稳定的配方级 trajectory.json,以便 Agent 能够随时间重建预览历史。

查看器命令:

cli-hub previews inspect /path/to/bundle
cli-hub previews html /path/to/bundle -o page.html
cli-hub previews open /path/to/bundle
session

使用撤销/重做管理会话状态。

命令描述
session status显示会话信息
session undo撤销上次操作
session redo重做上次撤销的操作
session save将会话状态保存到磁盘
session list列出所有已保存的会话

状态管理

  • 撤销/重做:最多 50 级撤销历史
  • 项目持久化:JSON .openscreen 文件
  • 会话跟踪:自动跟踪修改

输出格式

  • 人类可读(默认):格式化的键值对
  • 机器可读(--json):结构化 JSON 输出

编辑器设置

设置类型默认值描述
aspectRatiostring"16:9"16:9, 9:16, 1:1, 4:3, 4:5
wallpaperstring"gradient_dark"背景预设
paddingint500-100,视频周围的填充
borderRadiusint12圆角半径(像素)
shadowIntensityfloat00-1,投影强度
motionBlurAmountfloat00-1,缩放时的运动模糊
exportQualitystring"good"medium, good, source
exportFormatstring"mp4"mp4, gif

面向 AI Agent

  1. 始终使用 --json 以获得可解析的输出
  2. 检查返回码 — 0 = 成功,非零 = 错误
  3. 在非 JSON 模式下从 stderr 解析错误消息
  4. 使用绝对文件路径
  5. 在 export render 之后,验证输出是否存在并探测它
  6. 所有区域命令中的时间均以毫秒为单位
  7. 坐标(focus、crop、position)为归一化 0-1
  8. 使用 preview capture --json 以可视化方式验证缩放、裁剪、注释和时序
  9. 从 JSON 负载中读取返回的 bundle 产物路径;图像和片段位于磁盘上
  10. 仅使用 cli-hub previews ... 来检查/打开现有 bundle

版本

1.0.0

评论

支持 Markdown