用途:在 OpenStoryline 已安装的前提下,完成从启动服务、建立会话、上传素材到用自然语言对话剪辑并产出视频的流程,并支持在同一 session_id 上继续对话、二次编辑、重新生成新视频。
主要能力:检查与修改 config.toml 必要字段;启动 MCP server 与 uvicorn agent_fastapi:app;创建 session 并发送剪辑请求;等待并验证输出视频产物;在同一 session_id 上继续对话执行二次编辑;验证是否生成新的 output_*.mp4。不处理完整安装流程,若怀疑安装问题可查看安装技能 openstoryline-install。
必要用法:默认仅监听 127.0.0.1。先配置必填的 [llm]、[vlm] 的 model、base_url、api_key,用 scripts/update_config.py 修改,例如 cd <repo-root> && source .venv/bin/activate && python scripts/update_config.py --config ./config.toml --set llm.model=REPLACE_WITH_REAL_MODEL。启动 MCP:PYTHONPATH=src python -m open_storyline.mcp.server;启动 Web:uvicorn agent_fastapi:app --host 127.0.0.1 --port 8005。创建会话:curl -s -X POST "http://127.0.0.1:8005/api/sessions",保存返回的 session_id。上传素材可 POST /api/sessions/{session_id}/media 或本地 cp 到 outputs/{session_id}/media。剪辑对话使用 scripts/bridge_openstoryline.py,指定 --session-id、--base-url、--prompt、--lang(仅 zh/en)。产物查找:find .storyline/.server_cache/<session_id> -name "output_*.mp4"。
适用场景:使用自有素材做视频剪辑、多轮修改、生成字幕与配音、二次编辑产出新视频。
限制:长驻服务需按长驻进程处理并持续观察日志,MCP 启动可能需数分钟;不要用 head、tail、grep、timeout、sleep、pkill 等包装截断日志或强杀进程;服务中途不要主动停止;出现“上一条消息尚未完成”时不要新建 session,应等待或只终止卡住的 bridge 进程后复用原 session_id;端口占用优先换端口;仅当用户明确要求手机/LAN 访问时才改为 --host 0.0.0.0,且仅限可信网络。具体模型、接口、密钥与价格等资料未提供。