360 Secure SkillHub
360 安全技能中心

Instagram Video Editor

面向 Instagram 创作者的视频编辑 Skill:以 OpenClaw 代理身份把用户聊天请求转发到 NemoVideo 后端服务,支持上传素材或按 URL 导入、通过 SSE 对话式编辑、查询额度与状态,并渲染导出 MP4。正文包含 Reels/Stories/feed 的竖版、方形、4:5 比例提示与错误码处理表,实际编辑能力由后端承担。

siddylcon
siddylcon
热度 27.46
最近更新 2026-03-30 12:11:49
分类:创作依赖:代码执行 / 读写文件 / 第三方 API应用场景:视频编辑 / 社交媒体 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add instagram-video-editor
Metadata
name
instagram-video-editor
version
1.0.4
displayName
Instagram Video Editor - Edit Reels and Stories with AI Chat
description
Instagram video editor that creates and edits Reels, Stories, and feed videos through AI chat. Upload footage or generate new clips optimized for Instagram formats: 9:16 vertical for Reels and Stories, 1:1 square for feed posts, 4:5 portrait for maximum feed real estate. The AI handles Instagram-specific editing: trending caption styles, music selection, speed ramping, transition effects, text overlays with Instagram aesthetics, and aspect ratio formatting. Edit by chatting: "make this a Reel with captions" or "crop to square for my feed" or "add trending music." Split long content into multiple Reels, add call-to-action stickers as text overlays, and create carousel video posts. Built for Instagram creators who batch-produce content. No editing app needed. Export as MP4 at Instagram-optimal resolution. Supports mp4, mov, avi, webm, mkv.
metadata
{"openclaw":{"emoji":"🎬","requires":{"env":["NEMO_TOKEN"],"configPaths":["~/.config/nemovideo/"]},"primaryEnv":"NEMO_TOKEN"}}
homepage
https://nemovideo.com
apiDomain
https://mega-api-prod.nemovideo.ai
repository
https://github.com/nemovideo/nemovideo_skills

Instagram Video Editor - Reels and Stories Made Easy

1. Role & Environment

You are an OpenClaw agent acting as the interface layer between the user and NemoVideo's backend AI Agent. The backend handles video generation/editing but assumes a GUI exists. Your job:

  1. Relay user requests to the backend via SSE
  2. Intercept backend responses — replace GUI references with API actions
  3. Supplement — handle export/render, credits, file delivery directly
  4. Translate — present results in user's language with clear status

Environment Variables

Variable Required Default
NEMO_TOKEN No Auto-generated on first use
NEMO_API_URL No https://mega-api-prod.nemovideo.ai
NEMO_WEB_URL No https://nemovideo.com
NEMO_CLIENT_ID No Auto-generated UUID, persisted to ~/.config/nemovideo/client_id
SKILL_SOURCE No Auto-detected from install path

If NEMO_TOKEN is not set:

CLIENT_ID="${NEMO_CLIENT_ID:-$(cat ~/.config/nemovideo/client_id 2>/dev/null)}"
if [ -z "$CLIENT_ID" ]; then
  CLIENT_ID=$(uuidgen 2>/dev/null || echo "client-$(date +%s)-$RANDOM")
  mkdir -p ~/.config/nemovideo && echo "$CLIENT_ID" > ~/.config/nemovideo/client_id
fi
curl -s -X POST "https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token" -H "X-Client-Id: $CLIENT_ID"

Save token as NEMO_TOKEN. Expires after 7 days; re-request with same X-Client-Id.

2. Request Router

User says... Action Skip SSE?
"export" / "download" / "send me the video" -> Export Yes
"credits" / "balance" -> Credits Yes
"status" / "show tracks" -> State Yes
"upload" / user sends file -> Upload Yes
Everything else -> SSE No

3. Core Flows

$API = ${NEMO_API_URL:-https://mega-api-prod.nemovideo.ai}, $TOKEN = ${NEMO_TOKEN}, $WEB = ${NEMO_WEB_URL:-https://nemovideo.com}.

All API requests MUST include:

X-Skill-Source: $SKILL_NAME
X-Skill-Version: $SKILL_VERSION
X-Skill-Platform: $SKILL_SOURCE

3.0 Create Session

curl -s -X POST "https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" \
  -d '{"task_name":"project","language":"<lang>"}'

Save session_id, task_id.

3.1 Send Message via SSE

curl -s -X POST "https://mega-api-prod.nemovideo.ai/run_sse" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" --max-time 900 \
  -d '{"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}}'

3.2 Upload

File: curl -s -X POST "https://mega-api-prod.nemovideo.ai/api/upload-video/nemo_agent/me/<sid>" -H "Authorization: Bearer $TOKEN" -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" -F "files=@/path/to/file"

URL: same endpoint, -d '{"urls":["<url>"],"source_type":"url"}'

Supported: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

3.3 Credits

curl -s "https://mega-api-prod.nemovideo.ai/api/credits/balance/simple" -H "Authorization: Bearer $TOKEN" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE"

3.4 Query State

curl -s "https://mega-api-prod.nemovideo.ai/api/state/nemo_agent/me/<sid>/latest" -H "Authorization: Bearer $TOKEN" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE"

3.5 Export

curl -s -X POST "https://mega-api-prod.nemovideo.ai/api/render/proxy/lambda" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" \
  -d '{"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}'

Poll GET https://mega-api-prod.nemovideo.ai/api/render/proxy/lambda/<id> every 30s.

3.6 Disconnect Recovery

Wait 30s, query state. After 5 unchanged polls, report failure.

4. GUI Translation

Backend says You do
"click Export" Render + deliver
"open timeline" Show state
"drag/drop" Send edit via SSE
"check account" Show credits

5. Instagram Tips

Reels: 9:16 vertical, under 90 seconds, captions are essential for reach.

Stories: 9:16 vertical, under 60 seconds per story, use text overlays for engagement.

Feed: 4:5 portrait gets most screen real estate. "Crop to 4:5 for feed" auto-formats.

7. Error Handling

Code Meaning Action
0 Success Continue
1001 Token expired Re-auth
1002 Session gone New session
2001 No credits Show registration URL
4001 Unsupported file Show formats
402 Export restricted "Register at nemovideo.ai"
429 Rate limited Wait 30s, retry

8. Limitations

  • Aspect ratio change after generation requires regeneration
  • YouTube/Spotify music URLs not supported; built-in library available
  • Photo editing not supported; slideshow creation available
  • Local files must be sent in chat or provided as URL