The public site only had the in-app grimoire (behind the ✦ overlay); there was no shareable, linkable user manual. build_manual.py extracts the grimoire (the canon, per CLAUDE.md) + its styles from viz/index.html into a self-contained, always- visible page with a generated 27-section table of contents and a 'play the instrument →' back-link. Single source → no drift; re-run after editing the grimoire. Served at godstrument.pro/manual.html (docroot is viz/). Verified: renders as a normal page (overlay/close-button overridden away), TOC anchors resolve, all feature sections present (zero, OMNI panel, vibes, dimensions), console clean. Also refine the deploy convention: exclude dev docs/scripts (CLAUDE.md, README, ZERO_OMNI_BRIEF.md, GODSTRUMENT_MANUAL_SOURCE.md, godstrument.txt, build_manual.py, tests) so working notes never land on the public box. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1.5 KiB
Godstrument — Claude context
Music-instrument web app; hosted at godstrument.pro on the botchat VPS (humanjing@100.71.119.27, exposed via Cloudflare Tunnel — NOT dealgod, despite earlier notes). App dir /home/humanjing/godstrument (not a git checkout). Deploy = rsync git-tracked files only, minus dev docs/scripts (--files-from=<(git ls-files | grep -vE '^(CLAUDE\.md|README\.md|ZERO_OMNI_BRIEF\.md|GODSTRUMENT_MANUAL_SOURCE\.md|godstrument\.txt|build_manual\.py|test_.*\.py)$'), never --delete, never push godstrument_users.db/auth_secret/patches/) then sudo -n systemctl restart godstrument. The user manual ships as viz/manual.html (served at godstrument.pro/manual.html), generated from the in-app grimoire by python3 build_manual.py — re-run it after editing the grimoire. Working notes/planning docs stay OUT of the deploy. Origin is Gitea ssh://git@100.71.119.27:222/monster/Godstrument.git. See godstrument-pro-deploy.
- Canon gotcha: the real spec prose lives in
viz/index.html(grimoire text around line ~950);GODSTRUMENT_MANUAL_SOURCE.mdclaims to be exhaustive but has drifted before (Earth Echo / Schumann layer was missing). When they disagree, viz/index.html is truth — update the manual to match, not the other way. - Secrets (Cloudflare token etc.): read from
.env/local files, never from chat. A CF token was pasted in chat once and rolled — don't repeat that. - First page load after a deploy is slow (cold start) — wait before declaring it broken.