Virality
Find what is already working in a niche, then rewrite the pattern, never the video, in your own voice for your audience: a brief built from audience and voice templates and a proof bank of real numbers only, 30 or more recent posts across 6 to 12 creators ranked by views as a multiple of each creator's own median, a breakdown of the top outliers (hook formula, payoff, format, pace, structure, CTA), a voice rewrite stripped of AI tells and checked by a local five-check panel, five hooks scored against 26 formulas, and a shoot-ready short-form script (Reels, TikTok, Shorts) with timed beats, on-screen text, visuals, a caption and a comment-a-keyword CTA, plus a LinkedIn post or long-form version on request, with eight bundled standard-library Python tools and three templates.
- What
- Find what is already working in a niche, then rewrite the pattern, never the video, in your own voice for your audience: a brief built from audience and voice templates and a proof bank of real numbers only, 30 or more recent posts across 6 to 12 creators ranked by views as a multiple of each creator's own median, a breakdown of the top outliers (hook formula, payoff, format, pace, structure, CTA), a voice rewrite stripped of AI tells and checked by a local five-check panel, five hooks scored against 26 formulas, and a shoot-ready short-form script (Reels, TikTok, Shorts) with timed beats, on-screen text, visuals, a caption and a comment-a-keyword CTA, plus a LinkedIn post or long-form version on request, with eight bundled standard-library Python tools and three templates.
- Cost
- Free
- Needs
- Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else.
- Install
- Copy the installer prompt below into your Muse — your agent does the rest.
Find what is already working in a niche, then rewrite the pattern, never the video, in your own voice for your audience: a brief built from audience and voice templates and a proof bank of real numbers only, 30 or more recent posts across 6 to 12 creators ranked by views as a multiple of each creator's own median, a breakdown of the top outliers (hook formula, payoff, format, pace, structure, CTA), a voice rewrite stripped of AI tells and checked by a local five-check panel, five hooks scored against 26 formulas, and a shoot-ready short-form script (Reels, TikTok, Shorts) with timed beats, on-screen text, visuals, a caption and a comment-a-keyword CTA, plus a LinkedIn post or long-form version on request, with eight bundled standard-library Python tools and three templates.
Version:
Install
Copy the install package below, then paste it into Muse📌 Pinned version: commit b5b43e4The install prompt below already includes the vetting steps: your agent follows the community checklist before installing anything with executable code. Want more?
- It can run commands on your Muse’s computer.
- It can create or modify files.
What the scan found — excerpts from the install prompt
- runs commands — - Do not run any of the eight Python files during this install, do not run yt-dlp, do not search the web, do n · - N'exécute aucun des huit fichiers Python pendant cette installation, ne roule pas yt-dlp, ne fais pas de rec
- writes files — - Do not run any of the eight Python files during this install, do not run yt-dlp, do not search the web, do n · - N'exécute aucun des huit fichiers Python pendant cette installation, ne roule pas yt-dlp, ne fais pas de rec
Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else. Prerequisites: none for the install itself: no account, no API key, no paid service, and nothing else to install first. For using the skill afterwards, read this first: its bundled tools need only Python 3 (standard library only, nothing to pip-install). One optional outside tool can matter at use time, only as disclosed in point 2: yt-dlp, a separate program the skill uses only if it is ALREADY installed on this machine to list a public YouTube channel's Shorts and to download public auto-captions; the skill never installs it, never logs it in and never passes it cookies, and if it is missing the skill says so and uses another source instead. Everything else at use time is material I provide myself: my niche, my one viewer, my offer and comment keyword, 3 to 5 of my own captions or transcripts to build my voice file, my real proof numbers (the skill forbids inventing a number, result, client or source; a missing figure is asked for or left as a {{your number}} placeholder and flagged, never made up), and the niche post data I paste or export myself. Install "virality" for me. It finds what is already working in a niche, breaks the winners down, and rewrites the pattern (never the video itself) in my own voice for my audience, ending in a shoot-ready short-form script (Reels, TikTok, Shorts), with a LinkedIn post or long-form version as a secondary output when asked. Its workflow is: (1) the brief: read or build my audience and voice files from the bundled templates, in one batched question (niche, the one viewer, the offer and comment keyword, platforms, 3 to 5 of my own captions or transcripts), and collect my proof bank; (2) find what is working: 30 or more recent posts across 6 to 12 creators, ranked by views as a multiple of each creator's own median, so a huge account does not drown out the signal; (3) break the top 3 to 5 outliers down: hook formula, payoff, format, length and pace, structure, CTA; (4) rewrite the winning pattern from my own material in my voice, then strip AI tells and run a five-check panel on the draft; (5) score 5 hooks on 5 different formulas and keep the top two, shipping the highest score whose payoff leads; (6) package the shoot-ready script in the bundled script format (timed beats with spoken line, on-screen text and visuals, caption, 3 to 5 hashtags, cover and title checked as a pair), printed in chat. Three templates (audience, voice, script) and eight Python tools come with it: collect.py (normalize pasted posts, CSV exports and yt-dlp JSON), swipe.py (rank outliers against each creator's own median), hookscore.py (score a hook and name its formula, from the 26 formulas in hooks.json), speech.py (time a spoken line and measure pace from a transcript), humanize.py (strip invisible characters, typographic tells and slop words, using slop.json), detect.py (a local five-check panel for how machine-written a draft looks), title.py (check a title and cover as a pair) and test_virality.py (the tools' own test suite). Repository: https://github.com/Jakeschincariol/master-skills (the skill is the whole skills/virality/ folder at the pinned commit: SKILL.md plus its templates/ and tools/ folders, 14 files) Pinned version: install the code at commit b5b43e44f0a976ad25bda5095a94c161aab2f086 exactly. Do not substitute a newer version. If this commit is unreachable, stop and tell me. 1. Clone https://github.com/Jakeschincariol/master-skills into a temporary folder, check out commit b5b43e44f0a976ad25bda5095a94c161aab2f086, and copy the skills/virality/ folder from that checkout. Then compare every file in the folder with the fingerprints recorded for this listing on 2026-10-19: [FINGERPRINTS] - SKILL.md: SHA-256 5c641eb3508242d3596db6be0066380aa7d6e40e76037bc4cc7847d9a8013f49 - templates/audience.md: SHA-256 45c5ddbb48db264e0418aa94985b8f8239e4a65ed18ea7122e30836b295ecd92 - templates/script.md: SHA-256 cf635ef5f0e810264ec90ec3435c4ce8f9c2e7ed1db64f01918f4fb7798f16f5 - templates/voice.md: SHA-256 c313f3ad3db692eefce0809ac4c97c806aa9b92d37131bb8c0e2e5d5a05c6220 - tools/collect.py: SHA-256 b21aea51cc103eec8bceb5028f09f25a678ab854a4e2fb240b52f293595a298a - tools/detect.py: SHA-256 3e387ae8e8b78f043cc7792877e4d2df9f59559e2055983c6a8e8610d2a41bf1 - tools/hooks.json: SHA-256 fbe654ee8ed553ae98a4fbcba0ca29975bbfdd50b10914faf2ca34848b717a0a - tools/hookscore.py: SHA-256 e3638366facfb0da10ee0b36d22dfb5131940f8035c0a4bbb01f4789eb4162e1 - tools/humanize.py: SHA-256 69698003ee2f6ad84135d8919cce04a56108bbf74c44801b0a4507be9696cc93 - tools/slop.json: SHA-256 bb9375eaacf82527a18c0b0ec68db528a13b7db968e5cdbbfbceb7da1fbb1807 - tools/speech.py: SHA-256 86949a80904d3f7a676d30b9f5d5bd0a3e848ae55d69bd24de95dd5663b03537 - tools/swipe.py: SHA-256 ae6149c2732b5fdc58bd05e2991bd7fc534c6435fd4914c7a7eee51c9bc24d7b - tools/test_virality.py: SHA-256 94f2fd8d28da96fdfe0027e6a0186be7689fbb77d98cd1aac53023ef3b80ccda - tools/title.py: SHA-256 4735a9dc5b948022e1c47b6309827d0c6ca83fca1607e911020b47c915593ef7 If a file does not match, it changed since the listing was prepared: do not install it yet, tell me what you found and let me decide. 2. Read SKILL.md in full, read all three templates in templates/ (audience.md, script.md, voice.md) and read all ten files in tools/ (collect.py, detect.py, hooks.json, hookscore.py, humanize.py, slop.json, speech.py, swipe.py, test_virality.py, title.py), and tell me in plain words: what the skill does when used, which services it connects to, whether it reads or sends any personal information or keys, and anything that seems unusual. Stop on any red flag and tell me before going further. Confirm these points from the files: - The skill folder holds 14 files only: SKILL.md (13,155 bytes), three templates in templates/ (audience.md 1,258 bytes, script.md 3,585 bytes, voice.md 1,930 bytes) and ten files in tools/ (collect.py 19,614 bytes, detect.py 8,706 bytes, hooks.json 21,524 bytes, hookscore.py 18,599 bytes, humanize.py 9,641 bytes, slop.json 17,672 bytes, speech.py 12,746 bytes, swipe.py 4,048 bytes, test_virality.py 10,310 bytes, title.py 4,409 bytes). The skill is self-contained in its own folder: SKILL.md only ever calls the tools and templates sitting next to it, swipe.py and hookscore.py load hooks.json from their own tools/ folder, humanize.py and detect.py load slop.json from that same folder, and test_virality.py imports collect, hookscore and speech from that same folder. It needs no file from elsewhere in the repository: not the other two skills (edit, build), not the README, not the plugin files. All eight Python files use the Python 3 standard library only. The only files outside the folder that the workflow can touch at use time are my own local files, disclosed in point (a) below: my audience, voice and log files under ~/.claude/virality/, and, only if they already exist, the voice files from the same author's other packs at ~/.claude/youtube/voice.md and ~/.claude/linkedin/voice.md. - Nothing is sent anywhere during installation itself; the only download at install time is the skill folder from GitHub at the pinned commit. No script is run during installation, no key is asked for, and there is no telemetry in the folder. None of the bundled tools touches the network at all: their imports are standard-library file, text and statistics modules only (no urllib, no requests, no sockets), collect.py states it reads files I already have and never fetches anything, and detect.py states it does not call GPTZero or any other detector API. No tool reads environment variables, API keys, passwords or credential files, and the workflow rules say the opposite: never log into an account, never ask for a password, never pass cookies, never scrape behind a login, never automate a logged-in browser. - What leaves this machine at use time, disclosed here before it ever happens: using the skill is a separate step that only starts when I ask you to research or script a video. (a) Local-only work, no send: the seven working tools read only files I give them (pasted post lines, CSV or TSV analytics exports, yt-dlp JSON files, my transcripts in SRT, WebVTT, Whisper JSON, YouTube json3 or plain text, my drafts and my hook lists, from files or pasted input) and write only local files: the working files in a ./virality/<slug>/ folder in my current directory, never inside the skill folder (candidates.json from collect.py, the cleaned draft from humanize.py, hooks and the final script.md), plus my persistent local profile files: the filled audience and voice files saved to ~/.claude/virality/audience.md and ~/.claude/virality/voice.md, and, only when I answer "shoot it" at the end of a run, one line (date, formula, hook, keyword) appended to ~/.claude/virality/log.md, which the next run reads back together with my audience and voice files. test_virality.py is the tools' own test suite, not part of the normal workflow: if it is ever run, it works only against temporary folders and runs the tools as local subprocesses on small generated inputs. (b) The YouTube route, a workflow command in SKILL.md, not a bundled tool: if, and only if, yt-dlp is already installed on this machine, the step-2 command python3 -m yt_dlp --flat-playlist --playlist-end 40 -J "https://www.youtube.com/@HANDLE/shorts" sends a public request to youtube.com and downloads the public Shorts listing (titles, view counts and URLs) for the channel handle in the command, and the step-3 command yt-dlp --write-auto-subs --sub-format json3 --skip-download URL sends a public request to youtube.com and downloads the public auto-captions of the specific public video URL I am studying. YouTube's servers see those ordinary public requests from this machine; no login, no cookies and no password are ever passed. If yt-dlp is not installed, say so and use another source: do not install yt-dlp, or any other package, during this install or as part of using this skill. (c) The web-search route: for TikTok, Instagram, LinkedIn and YouTube discovery, SKILL.md allows using web search to find public posts and accounts, so the search terms (my niche and creator handles or names) go to whatever search service you use, and a public analytics site, if one is used to look up a creator's typical views, receives the creator handle or name being looked up. (d) The paste route, no direct contact by the skill at all: for TikTok, Instagram and LinkedIn numbers, the default is that I read the numbers off my own screen (I am already logged in on my phone) and paste them, or paste or export post data myself, and the tools then work only on what I pasted. (e) Nothing in this skill ever logs in, posts, comments, follows or DMs on any platform: the tools write files, and I shoot and publish everything myself. (f) The Credits section at the end of SKILL.md names the author's three earlier packs (linkedin-agent-skill, youtube-agent-skill, instagram-agent-skill) as the origins of files already copied into this folder, and prints two /plugin marketplace add lines for the full linkedin-agent-skill and youtube-agent-skill packs: those packs are not part of this install and are not needed to use virality; do not run those lines during this install or as part of using virality; if I ever ask for one separately, it would download further code from GitHub, and we would vet it first. - Do not run any of the eight Python files during this install, do not run yt-dlp, do not search the web, do not collect or score anything, and do not write any audience, voice, log or script file: all of that is use, later, only when I ask for a video. 3. When I say "yes, install", install it as a skill: copy the whole virality folder into the agent's skills directory, in a folder named "virality", keeping all 14 files (SKILL.md at its root, the three templates in its templates/ subfolder and the ten files in its tools/ subfolder). A manual clone followed by copying the skills/virality folder into ~/.claude/skills/ is the route described here; any other route is fine only as long as every installed file matches its fingerprint. 4. Verify with no network calls: frontmatter valid (name: virality), all 14 files in place with matching fingerprints. Do not run collect.py, detect.py, hookscore.py, humanize.py, speech.py, swipe.py, test_virality.py or title.py to verify. 5. Report what was installed, where, and what I still need to do myself (for example: answer the one batched brief question: my niche, my one viewer, my offer and comment keyword, my platforms, and 3 to 5 of my own captions or transcripts so my voice file can be built, plus my proof bank of real numbers I will put my name on; bring the niche data myself by pasting or exporting posts, decide whether yt-dlp is already installed if I want the YouTube listing and captions route, knowing YouTube receives those public requests as disclosed above; shoot and publish every video myself, since the skill never posts anything; using the skill is a separate step that only starts when I ask for a video, and the use-time contacts disclosed above happen only then, on the route that runs). GitHub is optional: if I have a GitHub account or the gh CLI, you may use it; otherwise public access is fine. Never require it unless it's in the prerequisites above. Rules: don't touch anything outside the temp folder and the install target. If anything looks off, stop and ask me.
Saved to your recent installs. Find it anytime on /connect.
Questions
How do I install a build?
Every product page includes a copy-paste install prompt. Paste it into your Muse and it sets the build up for you — no manual configuration.
Where does my money go?
Straight to the seller. Skill Harbor never processes payments: checkout happens on the seller’s own page, usually Stripe.
What does the ✓ next to a creator’s name mean?
It means we confirmed the identity of the person behind the listing. It says nothing about the code itself — always check a build before installing it.