vidgod/CLAUDE.md
type-two 7911a59186 VIDGOD: local AI video production toolkit
Five CLIs around DaVinci Resolve music-video editing, all inference local
on Apple Silicon (MPS/MLX):
- vg-roto: SAM 2.1 + MatAnyone click-to-cutout -> ProRes 4444 alpha
- vg-index / vg-find: PySceneDetect + mlx-whisper searchable clip library
- vg-beats: librosa beat grid -> Resolve marker EDL
- vg-transcode: legacy codecs -> ProRes LT, deinterlaced, resumable

setup/setup_venvs.sh rebuilds venvs, tool clones, checkpoints and applies
patches/matanyone-cv2-reader.patch (torchvision >= 0.23 removed read_video).
Verified end-to-end on ultra 2026-08-24; setup/smoke_test.sh covers the lanes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-24 14:17:50 +10:00

1.8 KiB
Raw Blame History

VIDGOD — agent notes

Read README.md first for what the tools do. This file is the stuff an agent needs beyond it.

  • Canonical deploy: ~/Documents/VIDGOD on ultra (M1 Ultra 128GB, johnking@100.91.239.7). Remote: ssh://git@100.71.119.27:222/monster/vidgod.git (Gitea, tailnet-only URL — never a public one). The repo is scripts + patches only; venvs/tools/models/library are untracked and rebuilt by setup/setup_venvs.sh (idempotent, resumable, heartbeats to ~/.jobs/vidgod-setup.status).
  • Paths are repo-relative everywhere: bin scripts locate the root via their own location (#!/bin/sh + exec-venv-python polyglot header; don't "fix" line 2 of the python CLIs — it's what makes them run inside the right venv from any checkout location).
  • Verified 2026-08-24 on ultra: all five lanes, including a real SAM2+MatAnyone cutout (1917 trench demo clip, 2 clicks, matte held over 6s; ~3.4 fr/s at 1920×804 on MPS).
  • The MatAnyone torchvision fix lives in patches/matanyone-cv2-reader.patch, applied by setup step 6 (guard: grep CAP_PROP_FPS). Upstream may eventually fix this — if the patch stops applying, check whether their read_frame_from_videos already avoids torchvision.io.read_video, and drop the patch step if so.
  • Test with setup/smoke_test.sh (fast) / --roto (full pipeline). Test media is synthesized (ffmpeg lavfi + macOS say) — nothing copyrighted is committed.
  • The clip library sqlite lives at library/clips.sqlite per checkout — the real library on ultra is the one that matters; don't index into a scratch clone and expect vg-find on ultra to see it.
  • Fleet context (SSH map, farm, heartbeat convention): ~/.claude/skills/fleet + ~/.claude/skills/jobs on JING5, GODVERSE_GUIDE.md §11 on ultra/JING5.