Video Sourcing Skill
Use this skill when the user asks to find, compare, or analyze social videos (YouTube, TikTok, Instagram, Twitter/X), or explicitly invokes /video_sourcing.
This workflow expects host runtime execution (sandbox mode off).
The runner auto-bootstraps a pinned runtime from Memories-ai-labs/video-sourcing-agent@v0.2.3 when VIDEO_SOURCING_AGENT_ROOT is not set.
Triggering
Run this workflow when either condition is true:
- Message starts with
/video_sourcing. - The user asks for video sourcing/trend/creator/brand analysis and wants concrete video links.
If /video_sourcing is used with no query body, ask for the missing query.
Execution contract
- Resolve query text:
/video_sourcing ...=> strip/video_sourcingand use remaining text.- Free-form => use user message as query.
- Default to compact mode:
--event-detail compact
- If user asks for debugging/raw payloads:
- Switch to
--event-detail verbose
- Switch to
/video_sourcing deterministic path
- Build command with required args:
<skill_dir>/scripts/run_video_query.sh --query "<query>" --event-detail <compact|verbose> --ux-mode three_message --progress-gate-seconds 10
- Start with
execusingbackground: true. - Poll with
processusingaction: "poll"every 2-4 seconds until process exits. - Parse NDJSON output and render only these events:
started=> send:Starting video sourcing...ux_progress=> send concise middle progress updates fromsummary(throttled by runner) Send eachux_progressas a separate assistant message in Telegram.- terminal event (
complete,clarification_needed,error) => send final message as-is
- Do not forward raw
progress,tool_call, ortool_resultevents for/video_sourcing. - Do not rewrite final answer tone/style; preserve the user's existing OpenClaw personality behavior.
Behavior target for /video_sourcing:
- Fast run (<10s): 2 messages (
started, terminal). - Longer run (>=10s): recurring throttled
ux_progressupdates, then terminal.
Free-form path (non-strict)
- Keep existing flexible behavior.
- Build command without forcing
three_messagemode:<skill_dir>/scripts/run_video_query.sh --query "<query>" --event-detail <compact|verbose>
- Stream useful progress updates and final response naturally.
Final response format
When terminal event is complete:
- One short paragraph conclusion.
- Top 3 video references only by default:
titleurl- one-line relevance note
Tools used: ...with a compact status summary.
If fewer than 3 videos exist, show all available references.
When terminal event is clarification_needed:
- Ask the clarification question directly.
- Treat this as the final response for the current run.
When terminal event is error:
- Send concise failure reason.
- Include one actionable next step.
Safety and fallback
- If script fails due to missing env/tooling, explain exact missing piece (for example
VIDEO_SOURCING_AGENT_ROOT,uv, or API key env var). - If
VIDEO_SOURCING_AGENT_ROOTis unset, the runner uses managed path:~/.openclaw/data/video-sourcing-agent/v0.2.3
VIDEO_SOURCING_AGENT_ROOTremains an advanced override for local development.- Keep response concise and action-oriented.
- Never fabricate video URLs or metrics.