# TikTok Hooks skill

A local Claude skill that saves the opening sentences and first frame from TikTok videos into Markdown or Obsidian.

## Requirements

- macOS
- Python 3.10 or newer
- `ffmpeg`
- Chrome, Safari, Firefox, Brave, or Edge logged into TikTok when syncing a private collection

## Install

Install directly from Hookline:

```bash
curl -fsSL https://hookline-blue.vercel.app/skill/tiktok-hooks/install.sh | bash
```

Or, from a tella-fusion checkout:

```bash
bash packages/apps/hookline/skill/tiktok-hooks/install.sh
```

The installer copies the skill to `~/.claude/skills/tiktok-hooks`, creates an isolated virtual environment under `~/.local/share/tiktok-hooks/venv`, and installs `yt-dlp` plus local Whisper.

It does not install `ffmpeg`. Install that separately when needed:

```bash
brew install ffmpeg
```

Then ask Claude:

> Set up my TikTok hooks skill.

Claude asks where to save the Markdown file and optionally configures a private collection.

## Examples

> Save this TikTok hook: https://www.tiktok.com/@creator/video/123

> Sync my TikTok hook collection.

> Save my hooks to `~/Documents/MyVault/TikTok Hooks.md`.

> Schedule my TikTok hook collection to sync every morning at 9.

## Local data

```text
~/.config/tiktok-hooks/config.json
~/.local/share/tiktok-hooks/
  seen.json
  sync.lock
  logs/
  venv/
<markdown directory>/
  TikTok Hooks.md
  assets/tiktok-hooks/<video-id>.jpg
```

Videos and temporary audio are deleted after each extraction. TikTok cookies are read locally by `yt-dlp` and are never copied into the configuration or Markdown output.
