vidgod/CLAUDE.md
type-two 8c84243b61 phase 2: vg-remove (ProPainter), vg-interp (RIFE), vg-cutie, farm ops, zoo mirror
- vg-remove: object/logo/watermark removal via ProPainter on MPS; static --box,
  SAM2-tracked --point for moving objects, or user --mask. Output always scaled
  back to source dims (imageio macro-block-pads ProPainter output).
- vg-interp: RIFE frame interpolation via rife-ncnn-vulkan (universal binary,
  native Metal/MoltenVK, rife-v4.6); smooth (fps x N) or --slowmo.
- vg-cutie: Cutie interactive segmentation GUI launcher (local GUI session).
- setup/fetch_phase2.sh: idempotent clones + weights + deps + patches.
- patches: propainter-cv2-reader (torchvision >= 0.23 removed read_video),
  cutie-device (get_default_model hard-coded .cuda(); now cuda->mps->cpu).
- smoke_test.sh: adds the RIFE lane (skips when not fetched).
- Farm: vidgod_roto/vidgod_index operators live in MODELBEAST (8965d22),
  verified from JING5; weights mirrored to NAS modelzoo/vidgod-weights.

All lanes verified on ultra 2026-08-24: de-logo reconstruction eyeballed clean,
24->48fps interp, Cutie headless propagation PASS, smoke test 4/4.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-24 15:42:52 +10:00

2.7 KiB
Raw Permalink 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).
  • Three tracked patches, all applied idempotently by the setup scripts (grep guards): matanyone-cv2-reader.patch + propainter-cv2-reader.patch (torchvision ≥0.23 removed read_video — both repos read via cv2 now) and cutie-device.patch (get_default_model hard-coded .cuda(); now cuda→mps→cpu like its own interactive_demo). If a patch stops applying, upstream probably fixed it — check and drop the step.
  • Phase 2 verified 2026-08-24 on ultra: vg-remove de-logo (ProPainter on MPS), vg-interp 24→48fps (RIFE ncnn universal binary, native Metal/MoltenVK), Cutie headless mask propagation on MPS (GUI click-test needs a local session — not SSH-verifiable).
  • Farm ops vidgod_roto / vidgod_index live in the MODELBEAST repo (commit 8965d22): stdlib wrappers calling this repo's bin CLIs; manifest requires_path gates the primary from grabbing them (that gating patch is in MODELBEAST server/remote.py + runner.py); allowlisted for node m1 (ultra) in nodes.json (primary-only, gitignored). Both lanes verified end-to-end with jobs submitted from JING5.
  • Weights mirror: /Volumes/projects/modelzoo/vidgod-weights/ (NAS via ultra's SMB mounts) — models/, propainter/, cutie/, rife/. Listed in modelzoo MANIFEST.md.
  • 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.