Awesome-omni-skill video-sourcing
Run the Video Sourcing Agent with deterministic, concise chat UX for /video_sourcing using a pinned self-bootstrap runtime.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/video-sourcing" ~/.claude/skills/diegosouzapw-awesome-omni-skill-video-sourcing && rm -rf "$T"
manifest:
skills/tools/video-sourcing/SKILL.mdsource content
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:
=> strip/video_sourcing ...
and use remaining text./video_sourcing- 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
/video_sourcing- 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
usingexec
.background: true - Poll with
usingprocess
every 2-4 seconds until process exits.action: "poll" - Parse NDJSON output and render only these events:
=> send:startedStarting video sourcing...
=> send concise middle progress updates fromux_progress
(throttled by runner) Send eachsummary
as a separate assistant message in Telegram.ux_progress- terminal event (
,complete
,clarification_needed
) => send final message as-iserror
- Do not forward raw
,progress
, ortool_call
events fortool_result
./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 (
, terminal).started - Longer run (>=10s): recurring throttled
updates, then terminal.ux_progress
Free-form path (non-strict)
- Keep existing flexible behavior.
- Build command without forcing
mode:three_message<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
with a compact status summary.Tools used: ...
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
, or API key env var).uv - If
is unset, the runner uses managed path:VIDEO_SOURCING_AGENT_ROOT~/.openclaw/data/video-sourcing-agent/v0.2.3
remains an advanced override for local development.VIDEO_SOURCING_AGENT_ROOT- Keep response concise and action-oriented.
- Never fabricate video URLs or metrics.