Individual skill
lock-in
Writes the 1 to 3 sentences straight after the hook so they pay it off and turn attention into trust, and finds the dead stretch that loses people after a good hook. Use when a hook stops the scroll but viewers still leave in the next few seconds.
lock-in/SKILL.md
Source commit 287053a825efc992e38653a66fc298925293bf36
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- Yes
- Skill scan complete
- Yes
- Observed behavior
- Instructions only
- Last checked
- Nov 6, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
Claude Code
Destination .claude/skills/lock-in
(
set -euo pipefail
destination='./.claude/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.claude/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Codex
Destination .agents/skills/lock-in
(
set -euo pipefail
destination='./.agents/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.agents/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Cursor
Destination .cursor/skills/lock-in
(
set -euo pipefail
destination='./.cursor/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.cursor/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Gemini CLI
Destination .gemini/skills/lock-in
(
set -euo pipefail
destination='./.gemini/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.gemini/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)GitHub Copilot
Destination .github/skills/lock-in
(
set -euo pipefail
destination='./.github/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.github/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)OpenCode
Destination .opencode/skills/lock-in
(
set -euo pipefail
destination='./.opencode/skills/lock-in'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/Liamrjohnston/hook-master-skill.git' "$work/repo"
git -C "$work/repo" checkout --detach 287053a825efc992e38653a66fc298925293bf36
git -C "$work/repo" archive --format=tar '287053a825efc992e38653a66fc298925293bf36:lock-in' > "$work/skill.tar"
mkdir -p -- './.opencode/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Repository context
- Repository stars (not skill ratings)
- 31
- Repository last updated
- Oct 25, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- claude-code Repository topic
- claude-skills Repository topic
- content-creation Repository topic
- hooks Repository topic
- engineering Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 2,303 bytesreferences/dead-stretches.mddoc · 963 bytes
Read excerpt
# Lock-in
The hook makes a promise. The next 1 to 3 sentences decide whether the viewer believes it. If they get a detour, a backstory or a slow setup, the curiosity turns into "this was bait" and they leave.
## Step 1: Find the gap
Write what the hook promised, then what actually comes next in the video, with the time. Flag any stretch that doesn't serve the promise: an intro, a story about the creator, "before we start", a long setup. Say exactly what to cut or move.
## Step 2: Pick one lock-in move
| Move | When | Example shape |
|---|---|---|
| **Proof right away** | The hook made a claim | Show the result, the number (theirs), the screen |
| **Picture the result** | The viewer wants a change | "By the end you'll [see / have] [result]" said over the result |