Install
openclaw skills install batcheditsAutonomously edit videos, add captions, and remove silences via BatchEdits.
openclaw skills install batcheditsTurn your OpenClaw into an autonomous video editor using BatchEdits. Use when you need to add captions, remove silences, or apply custom styles to videos. Covers creating styles, uploading local videos, processing, and checking video status directly from WhatsApp, Telegram, or the CLI.
openclaw config set env.BATCHEDITS_API_KEY batchedits_xxxxx
(Alternatively, you can export BATCHEDITS_API_KEY=... in your shell, or add it to the .env file in the folder where you run OpenClaw)
openclaw config set mcp.servers.batchedits '{"type": "sse", "url": "https://batchedits.com/api/mcp"}'
The MCP server uses your .env key automatically. Under the hood, any direct HTTP uploads authenticate using:
x-api-key: <BATCHEDITS_API_KEY>
Use the list_actions tool.
Returns an array of action templates (e.g., remove_silence, add_captions) with their id, name, and description. You need the id to build a style.
Use the create_style tool to build a reusable video editing preset.
Arguments:
name: e.g. "Silence Remover"actions: JSON string of templates (e.g., [{"id": "action_123"}])Returns the new styleId.
Use the upload_videos tool.
Arguments:
filePaths: Array of absolute paths (e.g., ["/path/to/local/video.mp4"])Because video files are large binaries, this tool returns a ready-to-run curl command. You must execute the returned curl command in your terminal to upload the local file to the server. Parse the JSON output of the curl command to get the new videoId.
Use the process_video tool to start the edit.
Arguments:
videoId: The ID from step 3styleId: The ID from step 2Use the list_videos tool.
Returns a list of your videos with their current status: pending, processing, completed, or failed.
get_styles to see if a matching style already exists. If not, use list_actions and create_style to make one.upload_videos to get the upload command.curl upload command and extract the videoId.process_video to start the job on the remote server.list_videos to check when the video reaches completed status.get_styles first. Reusing existing styles is faster than creating a new one every time!curl because OpenClaw needs to stream large local binaries to the remote server efficiently.