Agent skill

Reels Scripting

by charlie947 in charlie947/social-media-skills

Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content.

MITAuto-check passedWriting & Content

Install Reels Scripting

skills CLI
$ npx skills add charlie947/social-media-skills --skill reels-scripting -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install charlie947/social-media-skills reels-scripting --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/charlie947/social-media-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/reels-scripting .claude/skills/reels-scripting && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
reels-scripting
GitHub stars
3.8k
Token cost
~2.6k tokens
SKILL.md length
1,216 words
Files
1
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content.

  • Works in 7 steps: Get the reference → Get the newsletter topic → Scrape and download the Reel → …
  • The user says script a reel
  • SKILL.md covers Codex and Claude runtime, CRITICAL: Auto-start on load, Prerequisites and Step 1. Get the reference, plus 7 more sections
  • Needs APIFY_API_TOKEN and GOOGLE_AI_API_KEY

What it does

Reels Scripting is an agent skill from charlie947/social-media-skills. Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content. Takes a Reel URL or Notion reference link, uses Apify to scrape the video, sends it to Gemini 2.5 Flash for full transcript + hook + structure analysis, then writes a new script applying the same patterns to your newsletter topic. Use this skill whenever the user says "script a reel", "reels scripting", "turn this into a reel", pastes an Instagram Reel URL, or references their Notion…

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Writing & Content, covering Web scraping and Newsletters. It works with Apify, Instagram and Notion. The licence is MIT.

When your agent uses it

  • The user says script a reel
  • Reels scripting
  • Turn this into a reel
  • Pastes an Instagram Reel URL

Example prompts

  • “script a reel”
  • “reels scripting”
  • “turn this into a reel”
  • “/reels-scripting”

Requirements

  • Node.js
  • A credential in APIFY_API_TOKEN
  • A credential in GOOGLE_AI_API_KEY

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Get the reference
  2. Get the newsletter topic
  3. Scrape and download the Reel
  4. Analyse with Gemini 2.5 Flash
  5. Write the new Reel script
  6. QA loop
  7. Hand off the script

What it can do on your machine

Read from SKILL.md and the folder at commit 8cefb5b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • APIFY_API_TOKEN
    • GOOGLE_AI_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Reels Scripting loads about 2.6k tokens when it runs. Until then it costs about 171 tokens; SKILL.md has 1,216 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~171
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from charlie947/social-media-skills at commit 8cefb5b, republished under its MIT licence (© charlie947). 1,216 words, ~2,586 tokens.

Download SKILL.mdSave it as .claude/skills/reels-scripting/SKILL.md (or your agent's skills folder).
name
reels-scripting
description
Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content. Takes a Reel URL or Notion reference link, uses Apify to scrape the video, sends it to Gemini 2.5 Flash for full transcript + hook + structure analysis, then writes a new script applying the same patterns to your newsletter topic. Use this skill whenever the user says "script a reel", "reels scripting", "turn this into a reel", pastes an Instagram Reel URL, or references their Notion outlier reels database. The URL-to-video-analysis route needs APIFY_API_TOKEN and GOOGLE_AI_API_KEY; supplied input can skip the corresponding stages.

Reels Scripting

Codex and Claude runtime

  • Use this skill in Codex or Claude with the tools actually available in the current task. AskUserQuestion examples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied.
  • Work in the user-selected project. Read its about-me.md, voice.md and relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or run voice-builder; never inherit the maintainer's identity, accounts or private files.
  • Resolve bundled references/ relative to this skill folder. For an explicitly requested profile refresh, read and update the canonical about-me.md, voice.md or newsletter-voice.md in place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested.
  • Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run.
  • Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts.

CRITICAL: Auto-start on load

When this skill triggers, go straight to Step 1. Do not summarise.

Prerequisites

The full Apify + Gemini video-analysis route needs:

  • APIFY_API_TOKEN environment variable (Instagram scraping)
  • GOOGLE_AI_API_KEY environment variable (Gemini 2.5 Flash video analysis)
  • Node.js 18+ and the apify-client and @google/generative-ai packages

Check only the capabilities needed for the chosen route. For URL extraction and Gemini video analysis, verify the user's existing credentials are present without printing them, then verify the provider and model are available. Missing credentials, packages, a private video or an unavailable model leave that stage pending. Explain what is missing; do not modify account configuration or silently substitute a provider.

A supplied video can skip Apify. A supplied transcript/analysis can skip Steps 3 and 4 and support a labelled transcript-based script in Step 5, but is not a Gemini video-analysis result. Reuse installed packages; check current official SDK and actor documentation before generating a helper script, and get the user's approval before incurring provider costs.

Step 1. Get the reference

Ask:

Paste the reference Reel URL or Notion link. This is the outlier Reel you want to reverse-engineer the format from.

Wait for the URL.

If the user pastes a Notion link, read it through an available authorised Notion connector, locate the Instagram Reel URL on the page, and extract it. If no Reel URL is found on the Notion page, ask the user to paste the Reel URL directly.

Step 2. Get the newsletter topic

Ask:

What's the topic from your newsletter you want to repurpose into this Reel? Paste the relevant newsletter section, or type the core idea in a sentence.

Wait for the topic. Read newsletter-voice.md, voice.md, and about-me.md from the project if they exist, so the script matches the user's voice.

Step 3. Scrape and download the Reel

Use a new outputs/reels/<slug>/ folder in the selected project. Reuse an existing suitable helper if present, otherwise write a small task-specific Node.js script there that:

  1. Uses apify-client and the existing apify/instagram-reel-scraper route, after checking its current documented schema, for the single requested Reel. Never scrape comments, replies or comment threads, including via deepScrape or numComments. Verify the provider supports post/video-only collection before calling it; otherwise request a video upload. Do not guess alternate actor inputs.
  2. Extracts videoUrl from the returned item.
  3. Downloads the video to outputs/reels/<slug>/downloads/{username}_{shortCode}.mp4.
  4. Saves raw scrape data to outputs/reels/<slug>/reel_data_{shortCode}.json.

Run the script. Confirm file size and metadata (views, likes, aggregate comment count if available, caption first 200 chars) before continuing.

A single Reel is a reference, not a verified outlier. Call it an outlier only when supplied or explicitly requested comparison data establishes its performance relative to the same creator’s recent posts; cite the sample, window and multiple. Do not invent that baseline.

Step 4. Analyse with Gemini 2.5 Flash

Extend the Node script (or run a second pass) that:

  1. Reads the downloaded .mp4 as base64.
  2. Calls genAI.getGenerativeModel({ model: 'gemini-2.5-flash' }).
  3. Sends the video with this exact prompt:
I'm studying this Reel to write my own script in a similar style for my audience of [AUDIENCE FROM about-me.md].

## Full Transcript
- Transcribe EVERY word with timestamps

## Hook
- Exact first words spoken
- Word count of the hook
- What makes it stop the scroll?

## Language Patterns
- Average sentence length
- You/your vs I/me ratio
- Transitions between points
- Where are the 'just' minimisers?

## Structure
- Total duration
- Section breakdown with timings
- What's the before/after moment?
- What's the CTA?

## One key insight
- The single most important technique to learn from this Reel

Save the analysis to outputs/reels/<slug>/analysis_reference_{shortCode}.md.

Show full SKILL.md (482 more words)Show less

Step 5. Write the new Reel script

Using the analysis from Step 4, the newsletter topic from Step 2, and the user's voice files, write a new Reel script to outputs/reels/<slug>/reel-[slug].md.

Apply these rules (non-negotiable):

Hook
  • Never open with "I". Use "this", "you", a fact, or a name drop.
  • Proven formats: "This changed... forever" / negative flip ("X is useless unless...") / capability statement.
  • Hook creates curiosity or pattern interrupt within 3 seconds.
  • Mirror the hook's word count and structure from the reference analysis.
Body
  • British English. Short sentences. No em dashes, no semicolons.
  • Use "you" and "just" conversationally ("you just drop in...").
  • Never merge three or more staccato fragments. Combine into one flowing sentence.
  • Never state the conclusion. Let the facts do the work.
  • Use a comment CTA only if the user has a real deliverable and a confirmed working automation. Otherwise use a relevant next action that makes no delivery promise.
Comment trigger (only when supported)
  • Single caps word only (SCRIPT, WIKI, PROMPTS, VIDEO).
  • Must directly relate to what is being promised.
  • No quotes, no "below", no trailing punctuation.
CTA
  • "Comment [WORD] and I'll send you [specific thing]"
  • Short. No "the link to my full" padding.
Duration and structure
  • Target 30 to 45 seconds total.
  • 2 key points maximum, not 3.
  • Caption mirrors the script. Update both together.
Script file structure
# Reel: [title]

## Reference analysis
- URL: [reel url]
- Views: [number]
- Key technique: [from Gemini analysis]

## Duration target
30-45 seconds

## Hook (0-3s)
[Exact words]

## Point 1 ([start]-[end]s)
[Exact words]

## Point 2 ([start]-[end]s)
[Exact words]

## CTA ([start]-[end]s)
[Exact next action, with a comment promise only when delivery is confirmed]

---

## Caption
[Mirror the script, formatted for Instagram]

## Comment trigger (only if configured)
[WORD or not applicable]

## Deliverable (only if promised)
[The real available resource or not applicable]

---

## Visual notes
[Cuts, B-roll ideas, text overlays]

Step 6. QA loop

Review in the running assistant: source accuracy (30), user voice (25), hook and structure (20), spoken duration and clarity (15), caption/CTA consistency (10). Cite evidence for each score. Fix actual violations and re-score, up to three passes. Gate is 95/100; if unresolved, report a draft with the specific blockers rather than inflate the score or claim it is ready. Time a spoken read when available; otherwise label duration estimated. Claude is not required for this review in Codex.

Common violations to check:

  • Opens with "I"
  • Staccato fragments of three or more
  • States the conclusion
  • Multi-word or stylised comment trigger
  • Duration over 45 seconds when read aloud
  • 3 points instead of 2
  • Caption does not mirror script

Step 7. Hand off the script

Deliver the reviewed script and matching caption in the project, with reference source, analysis method and any unresolved checks. The user can record it or explicitly request their own available production workflow. This public skill does not ship an avatar, editing or publishing pipeline.

Rules

  • Never skip the 95/100 QA gate.
  • Always read voice.md and about-me.md before writing. Voice match is non-negotiable.
  • Never invent metrics from the reference Reel. Use only verified supplied or fetched metadata, and mark absent metrics unavailable.
  • British English. No em dashes. No semicolons.
  • Every script includes the matching caption; include a comment trigger only when the promised delivery works.
  • If reference access fails, report the failed stage and offer supplied video/transcript input. Do not fabricate video analysis.
  • Gemini 2.5 Flash is the model. Do not substitute without the user's approval.

© charlie947, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/reels-scripting of charlie947/social-media-skills.

Open the folder on GitHubat commit 8cefb5b

Compare with similar skills

Reels Scripting next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Reels Scripting compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Reels Scripting this skillcharlie947/social-media-skills3.8k—~2.6kAutomated safety check: PassMIT
Apify Trend Analysissickn33/agentic-awesome-skills47k2 repos~1.2kAutomated safety check: NotesMIT
Apify Multi-Platform Scraperapify/agent-skills2.4k2 repos~1.4kAutomated safety check: NotesNone
Ig Audience Insightssergebulaev/instagram-skills347—~1.3kAutomated safety check: PassMIT
Apify Google Maps Leadsapify/awesome-skills266—~3.8kAutomated safety check: PassApache-2.0
Apify Ultimate Scrapersickn33/agentic-awesome-skills47k2 repos~2.7kAutomated safety check: NotesMIT

Similar skills

  • Apify Trend Analysis

    sickn33/agentic-awesome-skills

    Discover and track emerging trends across Google Trends, Instagram, Facebook, YouTube, and TikTok to inform content strategy.

    47k GitHub starsUsed in 2 repos~1.2k tokens
    Data & AnalyticsAuto-check: notes
  • Official

    Scrapes public data from social, maps, search and review platforms by choosing from about a hundred Apify Actors and running them through the Apify CLI.

    2.4k GitHub starsUsed in 2 repos~1.4k tokens
    Data & AnalyticsAuto-check: notes
  • Ig Audience Insights

    sergebulaev/instagram-skills

    Read your Instagram niche and profile from real data via Apify, no login.

    347 GitHub stars~1.3k tokensUpdated 3 days ago
    Data & AnalyticsAuto-check passed
  • Apify Google Maps Leads

    apify/awesome-skills

    Official

    Build a local-business lead database from Google Maps in one Apify pipeline: search by target audience + geography, enrich each place with company contacts from its website, leads enrichment (names…

    266 GitHub stars~3.8k tokensUpdated 17 days ago
    Data & AnalyticsAuto-check passed
  • Apify Ultimate Scraper

    sickn33/agentic-awesome-skills

    AI-driven data extraction from 55+ Actors across all major platforms.

    47k GitHub starsUsed in 2 repos~2.7k tokens
    Data & AnalyticsAuto-check: notes
  • Apify Audience Analysis

    sickn33/agentic-awesome-skills

    Understand audience demographics, preferences, behavior patterns, and engagement quality across Facebook, Instagram, YouTube, and TikTok.

    47k GitHub starsUsed in 2 repos~1.3k tokens
    Data & AnalyticsAuto-check: notes

More from charlie947/social-media-skills

All 15 skills in this repo
  • Newsletter Voice

    charlie947/social-media-skills

    Build newsletter writing instructions inside a Codex or Claude project.

    3.8k GitHub stars~2.5k tokensUpdated 25 days ago
    Auto-check passed
  • Voice Builder

    charlie947/social-media-skills

    Build a personalised voice profile inside a Codex or Claude project from a short interview plus 3 to 5 sample pieces of writing.

    3.8k GitHub stars~3.3k tokensUpdated 25 days ago
    Auto-check passed
  • Content Matrix

    charlie947/social-media-skills

    Generate 24 to 40 LinkedIn post ideas in a single table by pairing the user's content pillars with 8 proven content formats.

    3.8k GitHub stars~1.6k tokensUpdated 25 days ago
    Auto-check passed
  • Gemini Carousel

    charlie947/social-media-skills

    Generate a branded slide-by-slide LinkedIn carousel using Gemini.

    3.8k GitHub stars~1.7k tokensUpdated 25 days ago
    Auto-check passed
  • Hook Generator

    charlie947/social-media-skills

    Generate 6 clickbait-style LinkedIn hook variations for any topic.

    3.8k GitHub stars~1.1k tokensUpdated 25 days ago
    Auto-check passed
  • Niche Research

    charlie947/social-media-skills

    Surface the 20 most relevant stories in a niche from the last 7 days using available live research tools.

    3.8k GitHub stars~1.7k tokensUpdated 25 days ago
    Auto-check passed

Questions about Reels Scripting

What does Reels Scripting do?

Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content. Reels Scripting is an agent skill from charlie947/social-media-skills. Turn a reference Instagram Reel into a script for your own Reel, tuned to your voice and repurposed from your newsletter content.

When should I use Reels Scripting?

Reels Scripting fits situations like: the user says script a reel; reels scripting; turn this into a reel; pastes an Instagram Reel URL.

How do I install Reels Scripting in Claude Code?

Run `npx skills add charlie947/social-media-skills --skill reels-scripting -a claude-code`. Or copy the skill folder (skills/reels-scripting in charlie947/social-media-skills) into .claude/skills/reels-scripting in your project. Claude Code loads it when a task matches its description.

How do I install Reels Scripting in Codex?

Run `npx skills add charlie947/social-media-skills --skill reels-scripting -a codex`. Or copy the skill folder (skills/reels-scripting in charlie947/social-media-skills) into .agents/skills/reels-scripting in your project. Codex loads it when a task matches its description.

Can I use Reels Scripting in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add charlie947/social-media-skills --skill reels-scripting -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/reels-scripting, .gemini/skills/reels-scripting, .github/skills/reels-scripting and .opencode/skills/reels-scripting in your project.

What does Reels Scripting need to run?

Going by SKILL.md and its folder, Reels Scripting needs credentials named APIFY_API_TOKEN and GOOGLE_AI_API_KEY. Our summary lists: Node.js; A credential in APIFY_API_TOKEN; A credential in GOOGLE_AI_API_KEY.

Does Reels Scripting access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Reels Scripting safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Reels Scripting use?

Reels Scripting is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Reels Scripting use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Reels Scripting?

Skills that share tags, products or a category with Reels Scripting: Apify Trend Analysis (sickn33/agentic-awesome-skills, 47k stars), Apify Multi-Platform Scraper (apify/agent-skills, 2.4k stars), Ig Audience Insights (sergebulaev/instagram-skills, 347 stars) and Apify Google Maps Leads (apify/awesome-skills, 266 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Reels Scripting?

charlie947 (a GitHub user) maintains it in charlie947/social-media-skills, which has 3,844 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on September 15, 2026.

Source: charlie947/social-media-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.