chore: update CLAUDE.md from workspace

This commit is contained in:
2026-03-30 16:07:15 +00:00
parent e1b93f84e8
commit 3e9692f498

113
CLAUDE.md
View File

@@ -2,79 +2,76 @@
## Project Overview
The Nexus is Timmy's canonical 3D/home-world repo.
Its intended role is:
- local-first training ground for Timmy
- wizardly visualization surface for the system
The Nexus is a Three.js environment — Timmy's sovereign home in 3D space. It serves as the central hub for all portals to other worlds. Stack: vanilla JS ES modules, Three.js 0.183, no bundler.
## Current Repo Truth
## Architecture
Do not describe this repo as a live browser app on `main`.
```
index.html # Entry point: HUD, chat panel, loading screen, live-reload script
style.css # Design system: dark space theme, holographic panels
app.js # Three.js scene, shaders, controls, game loop (~all logic)
```
Current `main` does not ship the old root frontend files:
- `index.html`
- `app.js`
- `style.css`
- `package.json`
No build step. Served as static files. Import maps in `index.html` handle Three.js resolution.
A clean checkout of current `main` serves a directory listing if you static-serve the repo root.
That is world-state truth.
## Conventions
The live browser shell people remember exists in legacy form at:
- `/Users/apayne/the-matrix`
- **ES modules only** — no CommonJS, no bundler
- **Single-file app** — logic lives in `app.js`; don't split without good reason
- **Color palette** — defined in `NEXUS.colors` at top of `app.js`
- **Conventional commits**: `feat:`, `fix:`, `refactor:`, `test:`, `chore:`
- **Branch naming**: `claude/issue-{N}` (e.g. `claude/issue-5`)
- **One PR at a time** — wait for merge-bot before opening the next
That legacy app is source material for migration, not a second canonical repo.
## Validation (merge-bot checks)
Timmy_Foundation/the-nexus is the only canonical 3D repo.
The `nexus-merge-bot.sh` validates PRs before auto-merge:
See:
- `LEGACY_MATRIX_AUDIT.md`
- issues `#684`, `#685`, `#686`, `#687`
1. HTML validation — `index.html` must be valid HTML
2. JS syntax — `node --check app.js` must pass
3. JSON validation — any `.json` files must parse
4. File size budget — JS files must be < 500 KB
## Architecture (current main)
**Always run `node --check app.js` before committing.**
Current repo contents are centered on:
- `nexus/` — Python cognition / heartbeat components
- `server.py` — local websocket bridge
- `portals.json`, `vision.json` — data/config artifacts
- deployment/docs files
## Sequential Build Order — Nexus v1
Do not tell contributors to run Vite or edit a nonexistent root frontend on current `main`.
If browser/UI work is being restored, it must happen through the migration backlog and land back here.
Issues must be addressed one at a time. Only one PR open at a time.
## Hard Rules
| # | Issue | Status |
|---|-------|--------|
| 1 | #4 — Three.js scene foundation (lighting, camera, navigation) | ✅ done |
| 2 | #5 — Portal system — YAML-driven registry | pending |
| 3 | #6 — Batcave terminal — workshop integration in 3D | pending |
| 4 | #9 — Visitor presence — live count + Timmy greeting | pending |
| 5 | #8 — Agent idle behaviors in 3D world | pending |
| 6 | #10 — Kimi & Perplexity as visible workshop agents | pending |
| 7 | #11 — Tower Log — narrative event feed | pending |
| 8 | #12 — NIP-07 visitor identity in the workshop | pending |
| 9 | #13 — Timmy Nostr identity, zap-out, vouching | pending |
| 10 | #14 — PWA manifest + service worker | pending |
| 11 | #15 — Edge intelligence — browser model + silent Nostr signing | pending |
| 12 | #16 — Session power meter — 3D balance visualizer | pending |
| 13 | #18 — Unified memory graph & sovereignty loop visualization | pending |
1. One canonical 3D repo only: `Timmy_Foundation/the-nexus`
2. No parallel evolution of `/Users/apayne/the-matrix` as if it were the product
3. Rescue useful legacy Matrix work by auditing and migrating it here
4. Telemetry and durable truth flow through Hermes harness
5. OpenClaw remains a sidecar, not the governing authority
6. Before claiming visual validation, prove the app being viewed actually comes from current `the-nexus`
## PR Rules
## Validation Rule
- Base every PR on latest `main`
- Squash merge only
- **Do NOT merge manually** — merge-bot handles merges
- If merge-bot comments "CONFLICT": rebase onto `main` and force-push your branch
- Include `Fixes #N` or `Refs #N` in commit message
If you are asked to visually validate Nexus:
- prove the tested app comes from a clean checkout/worktree of `Timmy_Foundation/the-nexus`
- if current `main` only serves a directory listing or otherwise lacks the browser world, stop calling it visually validated
- pivot to migration audit and issue triage instead of pretending the world still exists
## Running Locally
## Migration Priorities
```bash
npx serve . -l 3000
# open http://localhost:3000
```
1. `#684` — docs truth
2. `#685` — legacy Matrix preservation audit
3. `#686` — browser smoke / visual validation rebuild
4. `#687` — restore wizardly local-first visual shell
5. then continue portal/gameplay work (`#672`, `#673`, `#674`, `#675`)
## Gitea API
## Legacy Matrix rescue targets
The old Matrix contains real quality work worth auditing:
- visitor movement and embodiment
- agent presence / bark / chat systems
- transcript logging
- ambient world systems
- satflow / economy visualization
- browser smoke tests and production build discipline
Preserve the good work.
Do not preserve stale assumptions or fake architecture.
```
Base URL: http://143.198.27.163:3000/api/v1
Repo: Timmy_Foundation/the-nexus
```