opus-clips-performance

Generate per-clip engagement reports from OpusClip post-manifests and YouTube analytics.

4|2|Updated Mar 30, 2026
One-click install
npx skills add https://github.com/michaellady/claude-social-media-skills --skill opus-clips-performance
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: opus-clips-performance
Source: https://github.com/michaellady/claude-social-media-skills/tree/main/opus-clips-performance
Command: npx skills add https://github.com/michaellady/claude-social-media-skills --skill opus-clips-performance

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

You want to know how your OpusClip-scheduled clips performed on each platform, but the manifests record what was scheduled—not the engagement results.

Core Features & Use Cases

  • Per-clip engagement reporting: Generates a markdown report with one section per clip, including score, duration, scheduled fan-out, and fetched engagement (at least for YouTube today).
  • Manifest backfill for engagement: Updates each manifest’s scheduled_posts[] entries with an engagement block when available, or leaves a pending_task stub for platforms not yet wired.
  • Robust YouTube joining: Joins scheduled posts to YouTube analytics via [opus:<clip_id>] tag lookup first, and then falls back to a ±2 hour time-window match biased by closest duration.
  • Use case: After OpusClip posts have had time to ingest analytics, generate a report to answer “which clips landed and how did they do?” and feed those results into downstream prioritization.

Quick Start

Run opus-clips-performance to process all manifests whose newest scheduled post is at least 24 hours old and produce per-clip performance reports (YouTube engagement will be filled in).

Frequently Asked Questions about opus-clips-performance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I get per-clip engagement metrics for my OpusClip social media posts?

You can generate per-clip engagement metrics by reading closed-loop post-manifests and joining each scheduled post to platform-native YouTube analytics. This produces detailed markdown reports showing clip scores, duration, and fetched engagement data.

How does OpusClip YouTube analytics matching work when scheduling clips?

YouTube analytics matching uses a tag-first approach via the [opus:<clip_id>] tag lookup, then falls back to a ±2 hour time-window match biased by closest duration. This robust joining ensures scheduled posts accurately connect to platform-native engagement data.

Can I generate social media performance reports for platforms other than YouTube?

Currently, YouTube engagement is fully wired for analytics joining. For non-wired platforms, the system emits engagement:null with pending_task pointers in the manifest, leaving a stub for future analytics integration.

What are the prerequisites for bulk processing OpusClip engagement reports?

You need closed-loop post-manifests containing scheduled posts at least 24 hours old. Optional filters include project_id and since parameters to narrow the scope of manifests processed during bulk report generation.

How do I backfill engagement data into OpusClip manifests without overwriting existing data?

The tool performs additive manifest updates keyed by scheduled_post scheduleId. It adds an engagement block when available or leaves a pending_task stub for platforms not yet wired, ensuring existing manifest data remains intact.

Can I preview OpusClip engagement results before committing manifest updates?

Yes, you can use the dry-run flag to preview per-clip engagement reporting and manifest backfill operations without writing changes. Platform restriction flags also allow you to limit processing to specific platforms.