Document visual Finals Co-authored-by: Codex <noreply@openai.com>
Document recursive visual search Co-authored-by: Codex <noreply@openai.com>
Document Electron HMR development Co-authored-by: Codex <noreply@openai.com>
Document the read-only visual Examples scheme Co-authored-by: Codex <noreply@openai.com>
Document evolutionary visual training Co-authored-by: Codex <noreply@openai.com>
Document copying reviewed flows into schemes Co-authored-by: Codex <noreply@openai.com>
Document visual parameter calibration Co-authored-by: Codex <noreply@openai.com>
Document five new built-in visual flows Co-authored-by: Codex <noreply@openai.com>
The rig is an app, and it never asks about your displays npm run visuals opens a window of its own rather than a browser, and the main process asks the machine for the display list directly — so the permission prompt you had to remember to answer before a show is gone. The browser path survives as npm run visuals:browser, for a second machine or as a rollback. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DYCKLWb13J5PLkNpGGRdfi
The VJ rig starts with npm run visuals The command was `npm run show`, which borrowed a word the visuals module owns — its wire type, its server module and its hook are all "show". Same command, one honest name. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DYCKLWb13J5PLkNpGGRdfi
npm run show opens the rig in its own Chrome A browser that belongs to the show: no extensions, no other tabs on the same GPU, and a display permission granted once instead of asked for on stage. --no-browse skips it. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DYCKLWb13J5PLkNpGGRdfi
Say what a console error actually looks like It stops in place with a message rather than closing on its own, and the projector never sees it. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DYCKLWb13J5PLkNpGGRdfi
Run the rig with npm run show, and name five new failures `npm run dev` was the documented way to start it, and it is ten processes where any one exiting kills the other nine — plus a second renderer on :5473 with hot reloading, which reloads the projector every time a file is saved. Neither is what you want at a gig. "When it goes wrong" gains the things the rig can now tell you about itself: a stale bundle, a lost graphics context, a scheme value it refused, a console that closed without taking the picture, and one flow that would not build. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DYCKLWb13J5PLkNpGGRdfi
Document synced and free LFO controls Co-authored-by: Codex <noreply@openai.com>
Document disk image nodes Co-authored-by: Codex <noreply@openai.com>
Describe the five shapes a roll now deals Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BmG9Nxwm9BvYkNBCnYW2Jf
Add the review view to the visuals manual Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BmG9Nxwm9BvYkNBCnYW2Jf
Document disk video nodes Co-authored-by: Codex <noreply@openai.com>
Document the complete preview header Co-authored-by: Codex <noreply@openai.com>
Document the single visuals editor header Co-authored-by: Codex <noreply@openai.com>
Document the scheme library and manual save Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Move the scheme file home to ~/.openflow Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Hang a light in the frame The light node: a lamp, a beam, shafts and caustics, each with fixed declared cost, hung by a from inlet and drifting in seconds rather than beats. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Document full metaball separation Co-authored-by: Codex <noreply@openai.com>
Put the ports back on the right, filter and rows both Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Document controllable metaball colonies Co-authored-by: Codex <noreply@openai.com>
Rows wear their ports the way a node does takes before the name, gives at the right edge, matching the filter above them. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Let the filter's gap say what its arrow did takes at the left edge, gives at the right, the way signals enter and leave a node. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Delete a flow on its row, and scroll the browser as one list The × asks sure? in place before it commits, the column has one scrollbar with headings that hold, and an emptied browser offers show everything. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ
Call the product open[flow], and the env vars OPENFLOW_ The suite was renamed; the manual follows. References to the legacy bsv.json sidecar file stay, because that really was its name and the import path from it still exists. Co-authored-by: Codex <noreply@openai.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5mLf7B2kE7jYXiNgihDWQ