# Claude Code local files .agents/ skills-lock.json # Dependencies node_modules/ # Build output dist/ # Vendored frontend deps (generated from node_modules by postinstall/build) src/web/public/vendor/ # Test coverage coverage/ # E2E test screenshots (keep baselines, ignore current/diffs) test/e2e/screenshots/current/ test/e2e/screenshots/diffs/ # Logs *.log npm-debug.log* # OS files .DS_Store Thumbs.db # Editor directories .idea/ .vscode/ *.swp *.swo *~ # Environment files .env .env.local .env.*.local # State files (local to each machine) .claude/ralph-loop.local.md # Temporary files *.tmp *.temp # Generated output out/ screenshots-echo-diag/ scripts/remotion/out/ # Artifacts that should not be tracked test-results/ tmp/ # Root `public` (a symlink to scripts/remotion/public — local artifact). ANCHORED # with a leading slash so it does NOT also match src/web/public (a bare `public` # would swallow the whole web UI source dir and silently un-stage any new asset # added there). No trailing slash so it still matches the symlink, not just dirs. /public # Opt-in gesture overlay runtime assets: large MediaPipe wasm + model (~27 MB) # fetched at build/install by scripts/fetch-gesture-assets.mjs, kept out of git. # (The gesture bundle itself, gesture-codeman.js, IS tracked.) src/web/public/gesture/wasm/ src/web/public/gesture/*.task # Claude Code plan tracking plan.json # Unfinished TUI (local development only) src/tui/ .claude/ media-assets/ commands todo.md @fix_plan.md readme-preview.mjs # Uploaded images land here under each session working dir (runtime artifact) .claude-images/