What it does
Your vault becomes the long-term memory. peepshow writes one markdown note per run under a configurable folder, copies the frames into the attachments folder, and optionally appends to a rolling index note so new entries show up without plugins.
When to reach for it
- Personal research — every dropped video becomes a dated note with frames inline
- Agent memory — point Claude / Cursor at the same vault so it can read notes about videos it's already seen
- Build an offline, portable, single-source archive of everything an LLM has watched
Install
npm i -g peepshowUse it
peepshow ./lecture.mp4 --sink obsidian \
--sink-arg vault=~/Documents/Vault \
--sink-arg folder=peepshowMake it automatic
Register the sink once — every run fires it afterward. Scope by--whenso it only runs for matching videos.
peepshow sinks add obsidian
peepshow sinks add obsidian --when extension=mp4,mov
peepshow sinks add obsidian --when path=/Volumes/Work/Configuration
PEEPSHOW_OBSIDIAN_VAULTAbsolute path to the vault root.requiredPEEPSHOW_OBSIDIAN_FOLDERSubfolder inside the vault. Default `peepshow`.PEEPSHOW_OBSIDIAN_INDEXOptional rolling index note filename.
Write your own
A sink is any executable that reads the--emit jsonpayload on stdin. Shell, Node, Python, Go — the spec's indocs/PLUGINS.md. Register persistent ones withpeepshow sinks add-cmd 'your-command'.