Communitygithub.com

0xsline/openchatcut

OpenChatCut のツールコールが失敗した場合や、予期しない形式の結果が返された場合に使用します。

openchatcut とは?

このスキルは、OpenChatCut エディタとの連携時に発生する既知のエラーとその対処法をまとめたトラブルシューティングガイドです。`edit_item` ツールの正しいリクエスト形状(raw shape)を提示し、間違った形式によるエラーを防ぎます。また、タイムライン上のアイテム重複エラー、ワークスペースのパス制限、ブラウザでの動画変換失敗、モーショングラフィックのアップロード要件など、具体的なエラーシナリオごとに推奨される修正手順を提供します。主に OpenChatCut の MCP サーバー上で動作し、開発者や AI エージェントがツールコールを正しく実行できるように支援します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/0xsline/openchatcut/tree/HEAD/src/agent/skills/known-errors

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

既知のエラー

edit_item の raw shape 更新

  • 間違い: { "id": "abc", "fromFrame": 30 }
  • 正しい: { "json": "{\"updates\":[{\"id\":\"abc\",\"fromFrame\":30}]}" }
  • 一般的な移動、トリム、トラック変更にもこの同じ updates 形状を使用してください。

edit_item の raw shape 追加

  • 新しいアイテムは json トランザクションの adds 配列内に配置します: { "json": "{\"adds\":[{...}]}" }
  • 単純な動画配置には edit_item を使用します。例: { "json": "{\"adds\":[{\"type\":\"video\",\"assetId\":\"...\",\"fromFrame\":0}]}" }

タイムラインの重複

  • エラーテキスト: Overlap: updated item at ... would overlap existing item at ... on this track.
  • 書き込みを強制したり、競合するアイテムを黙って削除したりしないでください。
  • 利用可能な trackId を明示的に指定して edit_item トランザクションを再試行します。例えば、"trackId":"V2" を含む更新を行うか、どのレイヤーを優先するかユーザーに尋ねてください。

ワークスペースパスの制限

  • 外部 MCP の push_asset は filePath として公開 http(s) URL のみを受け入れます。ローカルパス、ワークスペースパス、チャット添付ファイルパスは拒否されます。
  • モーショングラフィックアセットの場合は、create_motion_graphic_from_code({ code:"...", name, width, height, durationInFrames }) を介して JSX ソースを渡してください。push_asset はインラインの code 引数を受け入れなくなりました。
  • ローカルメディアをワークスペースにコピーすることは、動画/オーディオ/画像/GIF のインポートの修正方法ではありません。代わりに asset-import と import_media を使用してください。
  • import_media action=create_session を使用し、その後、クライアント側のファイルに対して返されたトークンを使用して OpenChatCut メディアインポートヘルパーを一度実行してください。

ブラウザでの動画変換失敗

  • エラーテキストにはよく Unable to convert video without dropping audio/video tracks や unknown_source_codec が含まれます。
  • OpenChatCut メディアインポートヘルパーを再実行してください。このヘルパーはフロントエンド側の変換を担当し、変換が不可能な場合はユーザーが対処可能なエラーを表示します。
  • 回避策として、同じファイルをエディタ UI から再インポートするようユーザーに依頼しないでください。変換パスは同じであり、エラーは繰り返されます。ソースを修正するか(ffmpeg でローカル再エンコード)、別のファイルを選択してください。
  • 置き換えアセットがアップロード/トランスコードされたら、使用されていない元の失敗アセットを削除してください。最終的なクリーンなメディアプールは、失敗したインポートとその置き換えのように見えるのではなく、成功したインポートのように見えるべきです。

モーショングラフィックの要件

  • push_asset(type:"motion-graphic") には width、height、および duration または durationInFrames が必要です。
  • MG コードは OpenChatCut バリデータを通過する必要があります。
  • 生成された MG コードではルートの AbsoluteFill は有効ではありません。代わりにスケーリング可能なルート div を使用してください。
  • MG コード内でトップレベルの scale という名前のローカル変数を宣言しないでください。バリデータ/ランタイムがその識別子を既に予約している可能性があります。uiScale などの具体的な名前を使用してください。

ローカル開発時の Zero に関する注意点

  • バックエンドがデフォルト以外のポートで実行されている場合は、一致する Zero view-syncer 設定を使用してください。
  • この POC では、バックエンド 3010、エディタ 5177、view-syncer 4850 は、以前の 3000/5173/4848 スタックから意図的に分離されています。

タイムラインフレームレンダラに関する注意点

  • view_timeline_frames が 1 フレームで失敗しても、プロジェクト書き込みパスは正常である可能性があります。何かを結論付ける前に、より少ないフレーム数または異なる時間で再試行してください。
  • まだ blob: プレースホルダーにあるアセット(アップロード中)は空としてレンダリングされます。空白フレームをバグとして扱う前に、track_progress target=upload を待ってください。
  • ツールが対象フレームを視覚的に確認できる画像コンテンツを返さない限り、視覚的な証明成功を報告しないでください。

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

0xsline/openchatcut

Connect an MCP-capable coding agent to OpenChatCut and edit local video projects. Use when the user asks to install, connect, or set up OpenChatCut; inspect or edit an OpenChatCut project; work with its timeline, transcript, captions, media, generation, motion graphics, audio, color, or export tools; or recover from an OpenChatCut MCP error.

0xsline/openchatcut

Use when acquiring or importing media into a OpenChatCut project asset library for video editing or creation, including local/attached videos, user-provided paths, public media URLs, web video/audio/image assets, upload fallback decisions, and deciding between import_media, download_media, or manual user action.

0xsline/openchatcut

Use when a OpenChatCut video editing or creation workflow needs export, render, download, share, final delivery, subtitle-file export, render choice, local-only asset handling, or export fallback explanation.

0xsline/openchatcut

AI image generation via Fal.ai, gpt-image-2, nano-banana, MiniMax image-01, and xAI Grok Imagine. Use when the user wants to generate or create an image / picture / still.

0xsline/openchatcut

Music generation via Mureka, MiniMax, Atlas Cloud, and Sonilo. Use for instrumentals, songs, soundtracks, track/stem generation, covers, or video-conditioned scoring of the finished cut through `submit_music`.

0xsline/openchatcut

OpenChatCut product knowledge — UI layout, editor features, and how generation providers are configured. Use when the user asks about the product interface, how to use a feature, where to find something, or needs GUI guidance for something the agent cannot do directly. Also use as fallback when a task fails and the user needs to complete it manually in the UI. NOT for live project-state queries ("where are my folders?", "what's on my timeline?", "where is clip X?") — those are answered by `read_project`, not by this skill.

0xsline/openchatcut

AI shader generator for WebGL video effects, transitions, masks, and color grading (LUT / 调色 / 电影感 / film look). Use when the user wants a video effect (滤镜 / 特效), a transition (转场 / crossfade / wipe / cube / 3d), a mask (蒙版 / 遮罩 / reveal), a zoom / push-in (推近 / 推镜头), or a color grade — try the built-in effects (zoom, builtin LUTs) before generating a new shader.

0xsline/openchatcut

Use when checking whether agent edits are reflected in the OpenChatCut project and editor.

0xsline/openchatcut

AI video generation via Fal.ai, Seedance 2.0, Kling, MiniMax Hailuo, xAI Grok Imagine, and OFox. Use when the user wants to generate a video clip — text-to-video, image-to-video, first/last-frame transitions, reference-guided generation, multi-shot, or generatively editing / extending an existing clip.

0xsline/openchatcut

Text-to-Speech (TTS), voiceover, narration placement/sync, and custom sound effects (SFX) generator. Use when the user wants generated speech from text, wants to add/replace/align narration or voiceover for an existing video/timeline, wants to keep existing voiceover synced after visual retiming edits, needs voice audition/selection, or explicitly wants a newly generated/custom sound effect that is not available in the Sound Effects library.

0xsline/openchatcut

Use when the agent should ask the user for structured input with an in-chat form, including single-select, multi-select, text fields, style pickers, or voice audition choices.

関連スキル