From e99208cdb8e98621d90915ad3ada7cc57a9a64f4 Mon Sep 17 00:00:00 2001 From: martin veillette Date: Fri, 4 Sep 2026 22:21:32 -0400 Subject: [PATCH] chore: drop AGENTS.md and align Claude settings with fleet template Fold Cursor Cloud notes into CLAUDE.md (org convention: no member-repo AGENTS.md) and reset .claude/settings.json to the Baton template. Co-authored-by: Cursor --- .claude/settings.json | 17 +---------------- AGENTS.md | 13 ------------- CLAUDE.md | 11 +++++++++++ 3 files changed, 12 insertions(+), 29 deletions(-) delete mode 100644 AGENTS.md diff --git a/.claude/settings.json b/.claude/settings.json index 96c3d50..e081723 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -1,22 +1,7 @@ { - "hooks": { - "SessionStart": [ - { - "hooks": [ - { - "type": "command", - "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/session-start.sh" - } - ] - } - ] - }, "extraKnownMarketplaces": { "openphysics": { - "source": { - "source": "github", - "repo": "OpenPhysics/Baton" - } + "source": { "source": "github", "repo": "OpenPhysics/Baton" } } }, "enabledPlugins": { diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index 84e6120..0000000 --- a/AGENTS.md +++ /dev/null @@ -1,13 +0,0 @@ -# AGENTS.md - -OpticsLab is a client-only geometric optics simulation built on SceneryStack (PhET-style). There is no backend, database, or external service — everything runs in the browser. See `README.md` for scripts and `CLAUDE.md` for architecture/model details. - -## Cursor Cloud specific instructions - -- Dependencies are installed by the startup update script (`npm ci`). Do not re-run installs unless dependencies changed. -- Node ≥ 22 is required (`engines`). The repo uses npm (`package-lock.json`); do not switch package managers. -- Run the dev server with `npm start` (Vite on `http://localhost:5173`). This is the correct way to develop/test the app in dev mode; do not use the production `npm run build` output for interactive testing. Testing the UI requires a browser navigating to that URL. -- Standard commands are documented in `README.md`: `npm run lint` (Biome), `npm run check` (tsc type-check), `npm test` (Vitest), `npm run build` (tsc + Vite prod build). -- Non-obvious: `npm test` (Vitest) is slow (~90s for the full suite, 400+ tests) because of the physics/ray-tracing model tests — this is expected, not a hang. -- Non-obvious: git hooks are enabled via the `prepare` script (`core.hooksPath .githooks`). The pre-push hook runs `npm run lint` + `npm run check`, so pushes fail if either fails. The pre-commit hook auto-formats staged files with Biome. -- Icon generation (`npm run icons`) is optional and NOT needed to run the dev server or tests; skip it unless working on PWA icons. diff --git a/CLAUDE.md b/CLAUDE.md index e2d340f..eb42642 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -51,6 +51,17 @@ via the `screenSummaryContent` super-option and orders the PDOM through a wrappe `StringManager.getA11yStrings()`. Current-details is static (scene elements are a PhetioGroup); it can be made live by deriving an element-count Property. +## Agent / Cursor Cloud notes + +Client-only sim (no backend). Prefer `CLAUDE.md` over any `AGENTS.md` — org convention. + +- Dependencies: `npm ci` (startup script). Do not re-install unless deps changed. Node ≥ 24 (`engines`); npm only. +- Dev server: `npm start` (Vite `http://localhost:5173`). Do not use production `build` output for interactive UI testing. +- Commands: `npm run lint` / `check` / `test` / `build` — see `README.md`. +- `npm test` is slow (~90s, 400+ tests) because of ray-tracing model coverage — expected, not a hang. +- Git hooks via `prepare` (`core.hooksPath .githooks`): pre-commit formats with Biome; pre-push runs lint + check. +- `npm run icons` is optional unless changing PWA icons. + ## Compliance carve-outs - **Hardcoded colors:** wavelength-derived `rgba(...)` / canvas strokes in ray/SVG exporters and light-source views — physically tinted optics rendering, not UI theme tokens.