Registering thousands of extracted frames one-by-one via POST /frames doesn't scale, so add `spelunkai-labeling-backend ingest-session`: it writes Frame rows directly against the database (no server needs to be running) for all frame_*.png files under a directory already placed under FRAMES_ROOT. Idempotent per (session_name, frame_index), so re-running after copying more frames only inserts the new ones. Restructured the CLI into subcommands (serve / ingest-session) while keeping `spelunkai-labeling-backend` with no arguments working exactly as before (defaults to serve), verified against a live run. 22/22 backend tests pass. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Web-Based Labeling Tool
Bounding-box labeling tool for training frames, with a hierarchical ad-hoc class
system (Main → Sub, e.g. Enemy → Bat), multiple independent label sets (Enemy,
Items, Traps, ...), multi-user support, versioned datasets, and an active-learning
workflow (seed-label → train → auto-label → review → promote).
See CLAUDE.md §3.2 for full requirements.
Status: not yet implemented.