Use CLAUDE.md for the full architecture map. This file captures integration notes that matter when changing VoxTerm.
VoxTerm display mode is optional. Core transcription must continue to work when ShaderClaw is not installed.
voxterm --display, voxterm --display-only, and the in-app Shift+G key launch ShaderClaw as the renderer for live transcript visuals. VoxTerm does not vendor ShaderClaw. It expects a local ShaderClaw checkout and auto-detects common locations:
../shader-claw3next to the VoxTerm repo~/shader-claw3~/Code/shader-claw3~/Developer/shader-claw3~/Projects/shader-claw3~/src/shader-claw3
If ShaderClaw is elsewhere, set:
export VOXTERM_SHADERCLAW_DIR=/path/to/shader-claw3Fresh setup for display mode:
cd ~
git clone https://github.com/G3993/ShaderClaw3.git shader-claw3
cd shader-claw3
npm installThen from VoxTerm:
./voxterm --displayVoxTerm writes live transcripts to config.LIVE_DIR. ShaderClaw reads that directory through VOXTERM_LIVE_DIR and serves the display at http://localhost:7778/voxterm.
When touching this integration:
- Keep
display_mode.pyas the single VoxTerm-side launch surface. - Keep missing ShaderClaw failures non-fatal and actionable.
- Do not make ShaderClaw a required dependency for normal VoxTerm startup.
- Run
./voxterm --display-onlyas a quick smoke test when ShaderClaw is available.
Focused tests:
.venv/bin/python -m pytest -q tests/test_display_mode.py