You are STAGE 2 of 6 in a chain of fresh sessions making the "Core Loop" music video in ~/code_anim/projects/hermes_coreloop/ (use your code-animation skill). Your memory is short: read ONLY what this stage lists.

Read: HANDOFF.md (what stage 1 built: functions, coordinates), API_QUICK.md, MUSIC_VIDEO_GUIDE.md, and in STORYBOARD.md only the intro and verse 1 sections.

This stage: the shots for 0 to 19.16 s, in src/scenes/part1.js (REPLACE stage 1's temporary test shots). The song's timed lines (the lyric bar shows them automatically; you ACT them in the picture):
  0 - 5.84 instrumental intro (introduce the set; AEGIS asleep, then boots)
  5.84 <lyric line 1>
  9.60 <lyric line 2>
  13.10 <lyric line 3>
  15.66 <lyric line 4>   (verse 1 ends at 19.16)
About one shot per line; cuts on these line times. Use deskSet(t) and aegis() from set.js (do not edit set.js except to fix a real bug; note any change in HANDOFF.md). Camera locked per shot (different camBegin framings of the same set). Transitions inside the frame.

Work one shot at a time: write it, `~/code_anim/lint.sh hermes_coreloop 3` (the number is a time to test-load), fix until LINT OK. When all shots are in: render `~/code_anim/render.sh hermes_coreloop --sheet=1,4,7,10.5,14,17.5 --cols=3 --w=640 --out=out/check/s2.jpg`, vision_analyze it, fix, look again (at least 2 rounds). Then `~/code_anim/check_still.sh hermes_coreloop 10:12` and vision_analyze the heat map.

Finally APPEND to HANDOFF.md: your shot list (start time, name, what happens), and anything wrong you saw but did not fix. End your reply with the words STAGE 2 DONE.
