xusijie
Clean branch for HF push
06ba7ea

OpenStoryline 使用教程


0. 环境安装

参见README部分

1. 基础使用教程

1.1. 开始

你可以用两种方式开始创作:

  1. 有素材

    • 点击对话框左侧文件上传按钮,选择你的图片/视频素材
    • 然后在输入框写下剪辑目标,例如:用我的素材剪一条新年全家欢 vlog,节奏轻快
  2. 没素材

    • 直接描述主题/氛围即可
    • 例如:帮我剪一个夏日海滩旅行 vlog,阳光、清爽、欢快

自动素材检索来自 Pexels,请在网页侧边栏填写 Pexels API Key。

免责声明:我们只提供工具,所有通过本工具下载和使用的素材(如 Pexels 图像)都由用户自行通过 API 获取,我们不对用户生成的视频内容、素材的合法性或因使用本工具导致的任何版权/肖像权纠纷承担责任。使用时请遵循 Pexels 的许可协议:https://www.pexels.com/zh-cn/license
https://www.pexels.com/terms-of-service

如果你只是想先了解它,也可以当作普通对话模型使用,例如:

  • “介绍一下你自己” demo

1.2. 编辑

OpenStoryline 支持在任意阶段进行意图干预与局部重做:当某一步骤完成后,你可以直接用一句话提出修改要求,Agent会定位到需要重跑的步骤,而无需从流程起点重新开始。例如

  • 帮我去掉那个拍摄天空的片段。
  • 换一个欢快一点的背景音乐。
  • 字幕换成更符合夕阳主题的颜色 demo

1.3. 仿写

依靠仿写Skill复刻任意文风生成文案。例如:

  • 用文言文为我进行古风混剪。
  • 模仿鲁迅风格生成文案。
  • 模仿我发朋友圈的语气。 demo

1.4. 中断

在 Agent 执行的任意时刻,如果行为不符合预期,你可以随时:

  • 点击输入框右侧的中止按钮:停止大模型回复与工具调用
  • 或者直接按 Enter 发送新 prompt:系统会自动打断并执行你的新指令

中断不会清空当前进度,已生成的回复与已执行的工具结果都会保留,你可以基于现有结果继续提出指令。

1.5. 切换语言

在网页右上角点击语言按钮可切换中/英文:

  • 侧边栏与工具调用卡片的展示语言会同步切换
  • 工具内部使用的 prompt 语言也会切换
  • 已经发生的历史对话不会自动翻译

1.6. 保存

当你打磨出一条满意的视频后,可以一键让 Agent 总结其中的剪辑逻辑(节奏、色调、转场习惯),并保存为你的专属 "Editing Skill"。
下次剪辑类似内容时,只需告诉Agent调用这个 Skill,即可实现风格复刻。
demo

1.7 移动端使用

注意:下列命令会将你的服务暴露到局域网/公网,请仅在可信网络使用,不要在公用网络执行以下命令!!!
如果你的素材在手机上,不方便传输,可以使用下面的步骤,在手机上使用剪辑Agent。

  1. 在 config.toml 中填写LLM/VLM/Pexels/TTS 配置

  2. 将网页启动命令改为:

    # 再次提醒: --host 0.0.0.0 命令会将服务暴露到局域网/公网。请仅在可信网络使用。
    uvicorn agent_fastapi:app --host 0.0.0.0 --port 7860
    
  3. 查看本机ip地址:

    • Windows: 在命令提示符(cmd)中输入 ipconfig,找到 IPv4 地址
    • Mac: 按住 option,点击 WI-FI 图标
    • Linux: 在终端中输入 ifconfig 命令
  4. 在手机浏览器中输入以下地址即可访问。

    {本机ip地址}:7860
    

2. 高级使用教程

受限于版权和分发协议,开源的资源不足以满足广大用户的剪辑需求,因此我们提供私有元素库的添加和构建方法。

2.1. 自定义音乐库

将私有音乐文件放到目录:./resource/bgms下,然后给音乐打标签写入./resouce/bgms/meta.json,重启mcp服务即可。

【标签维度】

  • scene(场景):Vlog, Travel, Relaxing, Emotion, Transition, Outdoor, Cafe, Evening, Scenery, Food, Date, Club
  • genre(曲风):Pop, BGM, Electronic, R&B/Soul, Hip Hop/Rap, Rock, Jazz, Folk, Classical, Chinese Style
  • mood(情绪):Dynamic, Chill, Happy, Sorrow, Romantic, Calm, Excited, Healing, Inspirational
  • lang(语言):bgm, en, zh, ko, ja

【打标方式】

  • 手动打标:模仿meta.json中的其他item添加对应标签即可。注意:description字段是必须的;
  • 自动打标:使用qwen3-omni-flash进行自动打标,需要依赖qwen大模型的API-KEY qwen3-omni打标脚本:
export QWEN_API_KEY="you_api_key"
python -m scripts.omni_bgm_label

自动打标签不一定完全准确,如果需要强推荐的场景,建议人工再check一遍。

2.2. 自定义字体库

将私有字体文件放到目录:./resource/fonts下,然后给字体打标签写入./resource/fonts/font_info.json,重启mcp服务即可。

【标签维度】

  • class(分类):Creative, Handwriting, Calligraphy, Basic
  • lang(语言):zh, en

【打标方式】 目前仅支持手动打标,直接编辑./resource/fonts/font_info.json

2.3. 自定义文案模板库

将私有文案模板放到目录:./resource/script_templates下,然后给字体打标签写入./resource/fonts/meta.json,重启mcp服务即可。 【标签维度】

  • tags:Life, Food, Beauty, Entertainment, Travel, Tech, Business, Vehicle, Health, Family, Pets, Knowledge

【打标方式】

  • 手动打标:模仿meta.json中的其他item添加对应标签即可。注意:description字段是必须的;
  • 自动打标:使用deepseek进行自动打标,需要依赖qwen大模型的API-KEY deepseek打标脚本:
export DEEPSEEK_API_KEY="you_api_key"
python -m scripts.llm_script_template_label

自动打标签不一定完全准确,如果需要强推荐的场景,建议人工再check一遍。

2.4. 自定义技能库

仓库自带两款Skills,一个用于文风仿写,另一个用于保存剪辑流程。如果用户有更多自定义的skill可以按照以下方法添加:

.storyline/skills下创建一个新的文件夹,文件夹内新建SKILL.md文件; SKILL内必须以: ```markdown

name: yous_skill_folder_name description: your_skill_function_description

的形式开头,其中name和文件夹名字保持一致。
接着文件内写技能的具体内容,比如它的工作设定,需要调用哪些工具,输出格式等等。
完成后重启mcp服务即可