diff --git a/viz/index.html b/viz/index.html
index 6924d07..52175e3 100644
--- a/viz/index.html
+++ b/viz/index.html
@@ -1204,6 +1204,10 @@
π« GODSQUASH β the master squeeze the world can pump. In OMNI's fx rack sits one new knob: squash, a compressor across the whole master bus. Turn it up and the threshold dives while the ratio climbs together, a matched gain riding underneath so the loudness stays level while the peaks kneel β the mix gets denser, not louder. And because it's a destination like any other, route a feed onto it β the quakes, your heartbeat, the market's velocity β and the planet pumps the mix, breathing the whole instrument in time with the world.
π£ GODSPEAK β the voice of god. On your own machine (Apple-Silicon only), run run.py --godspeak, then hold Right β₯ and speak. Your words are heard locally β your own Whisper, nothing leaving the machine β and become commands: "tempo ninety", "storm mood", "capture six seconds", "chop sixteen", "open the beat", "squash sixty percent", "zen", and β the voice of god undoing its own works β "take it back". A π£ chip glows by the βͺ while it listens. Anything it doesn't recognise simply arrives in the world, printed to the ticker β the word is never an error, only another feed.
βͺ UNGODLY β take it back. βZ undoes; ββ§Z redoes. The instrument remembers your last thirty-two acts β every cable patched, mood applied, groove and scale changed, kit knob turned, beat step drawn, level and mute β and steps back through them, un-doing what god (or you) did. A held drag counts as one act, not fifty. It is memory-only: a reload forgives everything and starts the history clean.
+πΌ TESTAMENT β record what god does. Beside the βͺ sits a βΊ. Press it and the instrument records itself β the true final mix, taken after the squash and the limiter, exactly what you hear. The button turns red and counts the minutes; press it again and a file drops to your disk (godstrument-testament-β¦webm), and the ticker says it is written. Start it before the beat and it captures the session from its first breath; it needs no setup and no other app β the planet, at last, can bear witness to itself. (Also on the sky menu, near GODSONIQ.)
+βΈ WHEELS β a wheel within a wheel. "β¦their work was as it were a wheel in the middle of a wheel" (Ezekiel 1:16). Each lane keeps its own length: set the βΈ wheel chip in a beat lane (or the arranger's euclid row) to anything from 1 to 16, and a lane shorter than the full sixteen wraps on its own turn. A hat of twelve over a kick of sixteen drift apart and only realign every forty-eight steps β polymeter, the oldest trick for making a loop that never quite repeats. Steps past the wheel dim out; the playhead rides each lane's own length; and the pattern exports to MIDI exactly as it plays, twelve-wheel and all. A full wheel of sixteen behaves precisely as it always did.
+π PSALM β sing, and the instrument answers. Right-click the sky β π PSALM, allow the microphone, and sing. The pitch is heard, folded to the scale you're in (so you're never out of key), and played as notes β a π chip shows the note leaving your throat. And the duet with β‘ GODSPEED: with the arp running, each note you sing latches into the held chord, one at a time β hum four notes and the machine arpeggiates the chord you sang. It listens locally: the analysis happens in the page, in its own silence, and nothing ever leaves the machine β no recording, no upload, just your voice becoming the instrument's.
+β¦ CANON β the shelf of worked examples. Open β β DIMENSIONS and at the top of the list, above your own saved worlds, sit four β¦ factory dimensions that ship with the instrument β the heartbeat (a boom-bap kit with the swing and the kick's duck), the wheel within the wheel (WHEELS, made audible), the squeeze (the market pumping GODSQUASH), and quiet arrival (the earth echo, slow and sparse). Load one to hear a feature in its element, then save your own version under a new name β the β¦ ones are read-only, the same for everyone, a place to start rather than a thing to overwrite.
π½ The stage β send the visual to any screen. Right-click the sky β the stage and a clean black mirror window opens, fed live from the canvas. Drag it to a projector, an AirPlay display, a second monitor β macOS treats it like any window β and double-click for fullscreen. The stage has a camera: the whole view by default (whatever you're in β a skin, the wheel, mind mode's POV), or right-click any node β project this node and the camera glides after that one sphere through its orbits, or project its station to frame a whole wheel and its satellites. Change cameras live from the menus while the projector runs; the audience sees the camera breathe from subject to subject.
πΈ The commune β play together, properly. Right-click the sky β the commune. This is for signed-in players: your session rides the connection, so the hub knows exactly who everyone is β no impostors, no setup, no Bluetooth. One of you hosts: name the room, then β invite the others by their username (they must be on the site β invitations reach the present). The invited see the invitation arrive live and join or decline; anyone may leave whenever they wish, and if the host leaves, the room closes with them. Then the sections: members claim voices (right-click any voice, or the panel's picker), or the host allocates them β this bass to her, those pads to him, the godtime itself to whoever conducts β and the hub enforces it: only the section's holder can speak for it. From that moment your levels, mutes, grooves and arranger lanes for what you hold follow your hands on every screen, same living room or opposite sides of the earth. The world β the Source β stays identical for everyone, because it always was. Three people, one planet, one instrument.
diff --git a/viz/manual.html b/viz/manual.html
index b69dec3..8eceff0 100644
--- a/viz/manual.html
+++ b/viz/manual.html
@@ -238,6 +238,7 @@
.seqcell:hover { background: rgba(140,170,220,0.45); }
.seqcell.on { background: #78a0ff; box-shadow: 0 0 6px rgba(120,160,255,0.6); }
.seqcell.cur { outline: 1px solid rgba(255,238,150,0.85); }
+ .seqcell.off { opacity: 0.3; pointer-events: none; } /* βΈ WHEELS β a step past the lane's length is outside the wheel */
/* note length β a placed note is an overlay block spanning `len` steps, drag its
right edge (the ew-resize handle) to lengthen. Sits over the lit cells; only the
handle takes the mouse, so the grid underneath still toggles notes. */
@@ -382,6 +383,18 @@
#godspeakrec.on { display: flex; animation: gspk-pulse 1.1s ease-in-out infinite; }
@keyframes gspk-pulse { 0%, 100% { opacity: 0.55; } 50% { opacity: 1; } }
+ /* πΌ TESTAMENT β the record button; red + gently pulsing while it bears witness */
+ #testament.on { color: #ff8a8a !important; border-color: rgba(240,110,110,0.6) !important;
+ background: rgba(230,90,90,0.2) !important; animation: gspk-pulse 1.5s ease-in-out infinite; font-variant-numeric: tabular-nums; }
+
+ /* π PSALM β the listening chip; shows the note you're singing, brightens on voice */
+ #psalmchip { position: fixed; bottom: 164px; right: 14px; z-index: 12; display: none;
+ align-items: center; gap: 4px; min-width: 46px; padding: 6px 12px; border-radius: 8px; font-size: 12px;
+ background: rgba(20,28,44,0.7); color: #8fa4c8; border: 1px solid rgba(120,150,200,0.25);
+ cursor: pointer; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
+ #psalmchip.open { display: inline-flex; }
+ #psalmchip.voiced { color: #cfe4ff; border-color: rgba(150,200,255,0.6); background: rgba(60,95,150,0.5); }
+
/* right-click context menu β every setting, on everything */
#ctxmenu {
position: fixed; z-index: 30; display: none; width: 240px; max-height: 72vh;
@@ -1171,6 +1184,10 @@
π« GODSQUASH β the master squeeze the world can pump. In OMNI's fx rack sits one new knob: squash, a compressor across the whole master bus. Turn it up and the threshold dives while the ratio climbs together, a matched gain riding underneath so the loudness stays level while the peaks kneel β the mix gets denser, not louder. And because it's a destination like any other, route a feed onto it β the quakes, your heartbeat, the market's velocity β and the planet pumps the mix, breathing the whole instrument in time with the world.
π£ GODSPEAK β the voice of god. On your own machine (Apple-Silicon only), run run.py --godspeak, then hold Right β₯ and speak. Your words are heard locally β your own Whisper, nothing leaving the machine β and become commands: "tempo ninety", "storm mood", "capture six seconds", "chop sixteen", "open the beat", "squash sixty percent", "zen", and β the voice of god undoing its own works β "take it back". A π£ chip glows by the βͺ while it listens. Anything it doesn't recognise simply arrives in the world, printed to the ticker β the word is never an error, only another feed.
βͺ UNGODLY β take it back. βZ undoes; ββ§Z redoes. The instrument remembers your last thirty-two acts β every cable patched, mood applied, groove and scale changed, kit knob turned, beat step drawn, level and mute β and steps back through them, un-doing what god (or you) did. A held drag counts as one act, not fifty. It is memory-only: a reload forgives everything and starts the history clean.
+πΌ TESTAMENT β record what god does. Beside the βͺ sits a βΊ. Press it and the instrument records itself β the true final mix, taken after the squash and the limiter, exactly what you hear. The button turns red and counts the minutes; press it again and a file drops to your disk (godstrument-testament-β¦webm), and the ticker says it is written. Start it before the beat and it captures the session from its first breath; it needs no setup and no other app β the planet, at last, can bear witness to itself. (Also on the sky menu, near GODSONIQ.)
+βΈ WHEELS β a wheel within a wheel. "β¦their work was as it were a wheel in the middle of a wheel" (Ezekiel 1:16). Each lane keeps its own length: set the βΈ wheel chip in a beat lane (or the arranger's euclid row) to anything from 1 to 16, and a lane shorter than the full sixteen wraps on its own turn. A hat of twelve over a kick of sixteen drift apart and only realign every forty-eight steps β polymeter, the oldest trick for making a loop that never quite repeats. Steps past the wheel dim out; the playhead rides each lane's own length; and the pattern exports to MIDI exactly as it plays, twelve-wheel and all. A full wheel of sixteen behaves precisely as it always did.
+π PSALM β sing, and the instrument answers. Right-click the sky β π PSALM, allow the microphone, and sing. The pitch is heard, folded to the scale you're in (so you're never out of key), and played as notes β a π chip shows the note leaving your throat. And the duet with β‘ GODSPEED: with the arp running, each note you sing latches into the held chord, one at a time β hum four notes and the machine arpeggiates the chord you sang. It listens locally: the analysis happens in the page, in its own silence, and nothing ever leaves the machine β no recording, no upload, just your voice becoming the instrument's.
+β¦ CANON β the shelf of worked examples. Open β β DIMENSIONS and at the top of the list, above your own saved worlds, sit four β¦ factory dimensions that ship with the instrument β the heartbeat (a boom-bap kit with the swing and the kick's duck), the wheel within the wheel (WHEELS, made audible), the squeeze (the market pumping GODSQUASH), and quiet arrival (the earth echo, slow and sparse). Load one to hear a feature in its element, then save your own version under a new name β the β¦ ones are read-only, the same for everyone, a place to start rather than a thing to overwrite.
π½ The stage β send the visual to any screen. Right-click the sky β the stage and a clean black mirror window opens, fed live from the canvas. Drag it to a projector, an AirPlay display, a second monitor β macOS treats it like any window β and double-click for fullscreen. The stage has a camera: the whole view by default (whatever you're in β a skin, the wheel, mind mode's POV), or right-click any node β project this node and the camera glides after that one sphere through its orbits, or project its station to frame a whole wheel and its satellites. Change cameras live from the menus while the projector runs; the audience sees the camera breathe from subject to subject.
πΈ The commune β play together, properly. Right-click the sky β the commune. This is for signed-in players: your session rides the connection, so the hub knows exactly who everyone is β no impostors, no setup, no Bluetooth. One of you hosts: name the room, then β invite the others by their username (they must be on the site β invitations reach the present). The invited see the invitation arrive live and join or decline; anyone may leave whenever they wish, and if the host leaves, the room closes with them. Then the sections: members claim voices (right-click any voice, or the panel's picker), or the host allocates them β this bass to her, those pads to him, the godtime itself to whoever conducts β and the hub enforces it: only the section's holder can speak for it. From that moment your levels, mutes, grooves and arranger lanes for what you hold follow your hands on every screen, same living room or opposite sides of the earth. The world β the Source β stays identical for everyone, because it always was. Three people, one planet, one instrument.