# Hooks

> Save viral hooks from Instagram reels to a database. Trigger when the user types /hooks followed by a URL. Downloads the reel, transcribes it, extracts the hook, and saves it to the hooks database for future script writing inspiration.

- Skill: `tenfoldmarc/hooks` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add tenfoldmarc/hooks`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tenfoldmarc/hooks/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tenfoldmarc (https://skillmd.com/u/tenfoldmarc)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tenfoldmarc/hooks

---


# Hooks Database Builder

## Purpose

Build a personal database of high-performing hooks from Instagram reels. Every time Marc drops a link with `/hooks`, the reel gets transcribed and the opening hook gets saved to a local database. The `/script` skill reads this database for inspiration when writing new scripts.

## Hooks Database Location

All hooks are saved to:
```
/Users/marc/Documents/Claude/hooks/hooks-database.md
```

This file lives OUTSIDE the skill repo so it never gets overwritten by git updates.

## Trigger

User types `/hooks [instagram_reel_url]`

Example: `/hooks https://www.instagram.com/reel/DVh5BtIiS_L/`

## Workflow

### Step 1 — Download the reel

```bash
/Users/marc/Library/Python/3.9/bin/yt-dlp "[URL]" -o /tmp/hook_reel.mp4 --merge-output-format mp4 -q
```

If download fails (private reel, deleted, etc.) — tell Marc and stop.

### Step 2 — Transcribe

```bash
/Users/marc/Library/Python/3.9/bin/whisper /tmp/hook_reel.mp4 --model base --output_format txt --output_dir /tmp/ --fp16 False
```

Read the output from `/tmp/hook_reel.txt`.

### Step 3 — Extract the hook

The hook is the **opening 1–3 sentences** — everything said in roughly the first 5–10 seconds. This is what stops the scroll. Extract it precisely from the transcript.

Then identify:
- **Hook type** — pick the closest match:
  - `Bold Claim` — makes a strong, surprising statement
  - `Curiosity Gap` — withholds info to create pull ("here's what nobody tells you")
  - `Contrarian` — challenges a widely held belief
  - `Tool Discovery` — "X is insane / I can't live without X"
  - `Result Lead` — opens with an outcome or number
  - `Pain Agitation` — names a frustration the viewer has
  - `Identity Call-out` — speaks directly to a specific person

- **Why it works** — 1 sentence explanation of the psychological mechanism

### Step 4 — Save to database

Check if `/Users/marc/Documents/Claude/hooks/hooks-database.md` exists. If not, create it with the header below.

Append the new entry in this format:

```markdown
---

## Hook #[N]
**Source:** [full URL]
**Date:** [YYYY-MM-DD]
**Type:** [hook type]

**Hook:**
> "[Exact opening lines from transcript]"

**Why it works:** [1-sentence explanation]

**Full opening (first ~10 seconds):**
"[First 3–5 sentences of transcript for more context]"
```

Increment N based on how many hooks are already in the file.

### Step 5 — Confirm

Tell Marc:
- What the hook was
- What type it is
- That it's saved (hook #N in the database)
- Total hooks in database so far

**Do NOT show the full transcript** unless Marc asks. Just the hook + confirmation.

## Database Header (first time only)

```markdown
# Hooks Database
> Marc's personal swipe file of high-performing hooks from Instagram reels.
> Used by the /script skill for inspiration when writing new scripts.
> Built with /hooks [url]

```

## Integration with /script

When writing scripts using the `/script` skill, always read this database first:
```
/Users/marc/Documents/Claude/hooks/hooks-database.md
```

Use it for inspiration — study the hook types and mechanisms. Never copy hooks word for word. Use the patterns.

## Tool Paths (confirmed working)
- yt-dlp: `/Users/marc/Library/Python/3.9/bin/yt-dlp`
- whisper: `/Users/marc/Library/Python/3.9/bin/whisper`
- ffmpeg: `/opt/homebrew/bin/ffmpeg`

