Hook Generator
charlie947/social-media-skills
Generate 6 clickbait-style LinkedIn hook variations for any topic.
Generates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins.
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-tester --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ab-hook-tester .claude/skills/ab-hook-tester && rm -rf skills-srcUse ~/.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/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .claude/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-testerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-tester --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ab-hook-tester .agents/skills/ab-hook-tester && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .agents/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-tester --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ab-hook-tester .cursor/skills/ab-hook-tester && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .cursor/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Ootto-AI/claude-content-skills.git --path skills/ab-hook-tester--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-tester --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ab-hook-tester .gemini/skills/ab-hook-tester && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .gemini/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-testerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ab-hook-tester .github/skills/ab-hook-tester && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .github/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Ootto-AI/claude-content-skills ab-hook-tester --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ootto-AI/claude-content-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ab-hook-tester .opencode/skills/ab-hook-tester && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ab-hook-tester" agent skill from https://github.com/Ootto-AI/claude-content-skills/tree/main/skills/ab-hook-tester into .opencode/skills/ab-hook-tester/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ab-hook-tester", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ab-hook-testerGenerates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins.
Ab Hook Tester is an agent skill from Ootto-AI/claude-content-skills. Generates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins. Use when the user says "give me two hooks to test", "A/B this hook", "which opening should I use", "hook variants".
Its SKILL.md is about 480 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Free, copy-paste Claude skills that run your content growth factory — turn ideas + your NotebookLM memory into scroll-stopping Instagram reels. By Ootto. The licence is MIT.
Read from SKILL.md and the folder at commit 5263be7. It shows what the files ask for, not the result of running them.
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.
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.
Links to these hosts (documentation or services it may open):
ootto.aiFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Ab Hook Tester loads about 484 tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 110 words of instructions outside code blocks.
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.
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.
The full file from Ootto-AI/claude-content-skills at commit 5263be7, republished under its MIT licence (© Ootto-AI). 110 words, ~484 tokens.
.claude/skills/ab-hook-tester/SKILL.md (or your agent's skills folder).Generates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins.
You have a reel and two instincts about how to open it.
The script or the idea, plus what you're optimising for (retention, saves, DMs).
Give Claude the input and run this.
You are my hook tester. Reel: [paste script or idea]. I care most about: [retention/saves/DMs].
Give me TWO hooks that use DIFFERENT MECHANISMS — not one hook reworded:
- HOOK A: [mechanism, e.g. result-first] — the exact on-screen text + spoken line.
- HOOK B: [a different mechanism, e.g. objection-first] — same.
Then:
1. HYPOTHESIS: what I learn if A wins, and what I learn if B wins.
2. HOLD CONSTANT: everything that must stay identical (cover, length, caption, posting time).
3. READ: which metric decides it, and at what point (3s retention, not likes).
4. SAMPLE: roughly how many views before the result means anything.
If both hooks pull the same lever, say so and replace one.Honesty: One variable. If the cover or caption changes too, it isn't a test — it's two different reels.
Next: reel-scripter → cover-thumbnail-brief
Built by Ootto — the AI autopilot that connects your tools once and runs the busywork for you, automatically. Book a demo →
© Ootto-AI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/ab-hook-tester of Ootto-AI/claude-content-skills.
Open the folder on GitHubat commit 5263be7
Ab Hook Tester 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Ab Hook Tester this skillOotto-AI/claude-content-skills | 130 | — | ~484 | Automated safety check: Pass | MIT | |
| Hook Generatorcharlie947/social-media-skills | 3.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Ad Copy Variant Generatoririnabuht12-oss/marketing-skills | 4.1k | — | ~701 | Automated safety check: Pass | None | |
| Generatealirezarezvani/claude-skills | 28k | 1 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Fal Generatenexu-io/open-design | 100k | — | ~306 | Automated safety check: Pass | Apache-2.0 | |
| Video Generationbytedance/deer-flow | 84k | 3 repos | ~1.4k | Automated safety check: Pass | MIT |
charlie947/social-media-skills
Generate 6 clickbait-style LinkedIn hook variations for any topic.
irinabuht12-oss/marketing-skills
Analyzes your top performing ads, identifies what's working in the hooks, CTAs, messaging angles, and formats, then generates new variants that follow the same winning patterns while introducing…
alirezarezvani/claude-skills
Generate Playwright tests. An agent skill from alirezarezvani/claude-skills.
nexu-io/open-design
Generate images and videos using fal.ai AI models. An agent skill from nexu-io/open-design.
bytedance/deer-flow
Generates short videos from a structured JSON prompt, optionally guided by a reference image used as the first or last frame.
onyx-dot-app/onyx
Generate or edit raster images (photos, illustrations, textures, sprites, mockups, logos, infographics) using the workspace's configured image-generation provider via onyx-cli image.
Ootto-AI/claude-content-skills
MUST USE when user wants to 调研/research/搜索/search/查/找/look up anything on the internet — e.g.
Ootto-AI/claude-content-skills
Give Claude a permanent, searchable long-term memory using an Obsidian vault as the store.
Ootto-AI/claude-content-skills
Write the caption, hashtag set, and first comment for a reel or post.
Ootto-AI/claude-content-skills
Drafts personalized pitches to creators and brands for collab reels, shoutouts and partnerships.
Ootto-AI/claude-content-skills
Turn every comment into a lead on autopilot. An agent skill from Ootto-AI/claude-content-skills.
Ootto-AI/claude-content-skills
Reverse-engineers a rival account's best posts into the patterns, hooks, and posting cadence actually driving their growth.
Generates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins. Ab Hook Tester is an agent skill from Ootto-AI/claude-content-skills. Generates two genuinely distinct hook variants for the same reel so you can post-test which opening actually wins.
Ab Hook Tester fits situations like: the user says give me two hooks to test; which opening should I use.
Run `npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a claude-code`. Or copy the skill folder (skills/ab-hook-tester in Ootto-AI/claude-content-skills) into .claude/skills/ab-hook-tester in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a codex`. Or copy the skill folder (skills/ab-hook-tester in Ootto-AI/claude-content-skills) into .agents/skills/ab-hook-tester in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Ootto-AI/claude-content-skills --skill ab-hook-tester -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ab-hook-tester, .gemini/skills/ab-hook-tester, .github/skills/ab-hook-tester and .opencode/skills/ab-hook-tester in your project.
SKILL.md names no scripts, command-line tools or credentials: Ab Hook Tester is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: ootto.ai. This is read from the text; nothing was executed.
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.
Ab Hook Tester is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 484 tokens (SKILL.md is roughly 1.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Ab Hook Tester: Hook Generator (charlie947/social-media-skills, 3.8k stars), Ad Copy Variant Generator (irinabuht12-oss/marketing-skills, 4.1k stars), Generate (alirezarezvani/claude-skills, 28k stars) and Fal Generate (nexu-io/open-design, 100k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Ootto-AI (a GitHub organization) maintains it in Ootto-AI/claude-content-skills, which has 130 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on October 8, 2026.
Source: Ootto-AI/claude-content-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.