用途:通过 ChatCut 的托管 Claude 插件,把本地或已下载的媒体导入项目,或在媒体缺失时将文件重新链接到已有资产,从而保留原有时间线引用。导入前可先用 browse_assets 检查文件是否已导入。
同机编辑器导入(首选):用 browserHandoff.url 或 editorUrl 打开目标项目,保持该项目恰好一个编辑器标签页,且与 shell 处于同一机器/网络命名空间。用 PATH 中的 Node 启动内置服务器:node <this-skill-dir>/scripts/serve-local-media.mjs --origin <editor-origin> /path/to/source.mp4。进程需在后台保活,它打印一行 JSON,并在 900 秒后自动退出,仅通过带令牌的 loopback URL 提供所列文件。
多文件导入:在单次 import_media 调用中使用 {"action":"from_editor","files":[...]},把每个文件的 assetId、url、filename、sizeBytes 填入 files,省略每文件的 action。每次 1–16 个文件,更多则分批;最多 8 个并发。结果按输入顺序返回,成功为 ok:true 与 status:"locally_imported",失败带 error。只重试失败文件,成功后停止 helper,并保持编辑器打开以进行同步、后台上传和转写。
时间线:使用返回的 assetId。转写/字幕前等待 track_progress 的 target:"transcription"。需要云端字节时使用编辑器 Upload 操作并保留同一 assetId。超时先查 browse_assets,再用同一 assetId 重试,重试会续传。
重新链接:对缺失本地媒体,从 browse_assets 取得已有 assetId,用同一 loopback helper 提供对应原始源文件,调用 import_media 并将 action 设为 "relink_from_editor"、替换为已有 assetId。成功为 status:"locally_relinked"。媒体类型必须匹配,须用对应原始文件而非替换片段。失败的 relink 不得回退为新建资产。
回退上传:远程沙盒、编辑器不可用或浏览器连接被阻止时,先 {"action":"create_session"},再用返回的 token 和 endpoint 前台运行:node <this-skill-dir>/scripts/upload-media.mjs --token <token> --endpoint <endpoint> /path/to/source.mp4。每次最多四个路径,更大批次需新会话。
限制:远程沙盒的 localhost 不是用户本机 localhost;主机策略拒绝时不得绕行,应让用户通过编辑器上传或授予权限。公共 URL 可先下载到本地再按相应路径导入。不要安装 Node 或自行改写上传/转码命令。其他细节资料未提供。