Sink management

SkillDatabases & data

Lets your agent manage peepshow's sink settings, turning folder, mysql, or webhook outputs on or off.

Use Sink management in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Sink management and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Sink management skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Sink managementStart free
About this skill

Manage peepshow's persistent auto-sink list (list, add, remove, clear). Use when the user asks to turn a peepshow sink on or off, enable folder/mysql/webhook sinks, or wants to see which sinks are currently active. Sinks run on every peepshow extraction.

What this skill tells your AI

The instructions your AI receives, as published by t0mtaylor/peepshow in skills/sink/SKILL.md and read by Ahel’s review.

peepshow supports auto-sinks — persistent sink definitions in ~/.peepshow/sinks.json that run on every extract. This skill manages that list on the user's behalf.

Detect intent

User saysRun
"list sinks" / "which sinks are active" / "show sinks"peepshow sinks list
"enable folder sink at /Volumes/Shared" / "add folder sink"peepshow sinks add folder:/Volumes/Shared
"enable mysql sink"peepshow sinks add mysql (reminder: sink needs DATABASE_URL in env)
"add custom sink: "peepshow sinks add-cmd '<command>'
"add X but only for .mp4/.mov files"peepshow sinks add <spec> --when extension=mp4,mov
"add X for videos under /Videos/"peepshow sinks add <spec> --when path=/Videos/
"add X for films directed by Kubrick"peepshow sinks add <spec> --when director=Kubrick
"add X when filename matches vacation"peepshow sinks add <spec> --when filename='*vacation*'
"remove sink 2" / "disable the mysql one"First peepshow sinks list, then peepshow sinks remove <n>
"clear all sinks" / "disable all sinks"peepshow sinks clear
"turn off sinks for this video only"Tell the user to pass --no-auto-sinks on the next invocation — do not touch the config

Notes

  • Always run peepshow sinks list after any mutation to confirm the new state.
  • <name> maps to an executable peepshow-sink-<name> on $PATH. Extra colon-separated tokens become positional args (folder:/tmp/shared → peepshow-sink-folder /tmp/shared).
  • The sink count is shown live in the Claude Code statusline badge, e.g. [PEEPSHOW|3s] means three auto-sinks are active.
  • Sinks receive the full peepshow JSON payload on stdin (including container tags: title, director, producer, copyright, etc.) — mention this when the user is choosing what to persist.
  • Conditional matching (--when): extension/filename/path/container/codec + any video metadata tag (director, genre, show, producer, publisher, …). Multiple --when flags AND together; values inside one clause (e.g. ext=mp4,mov) are ORed. Example: peepshow sinks add folder:/cinema --when director=Kubrick --when extension=mp4 = "archive Kubrick mp4s only".

Troubleshooting

  • "sink failed (exit N)" during a run → the sink's binary isn't on $PATH (for --sink <name>) or the shell command is wrong (for --sink-cmd). Fix by peepshow sinks remove <n> and re-adding with the correct spec, or by installing the missing binary.
  • "no auto-sinks configured" → file doesn't exist yet. Any add command creates it.

Signals

GitHub stars
67
Forks
13
Last commit
Sep 2026
Advanced
Item type
skill
Key
sink
Source
github.com/t0mtaylor/peepshow