# Runtime data (assets, jobs, db) — never commit data/ # Python .venv/ venvs/ __pycache__/ *.pyc .python-version # Node / frontend build web/node_modules/ web/dist/ # Secrets & local config *.env .env # `.env` matches only the exact name and `*.env` only matches names ENDING in .env — neither # catches a suffixed one like `.env.remote` (which sits un-ignored on the m1 today). Secrets # live in .env files by convention here, so ignore the whole family; keep examples committable. .env.* !.env.example server/.env # Large model weights / caches models/ *.safetensors *.ckpt *.pt # Compiled native helpers (source is committed, binary is not) bin/objcap bin/*.o # OS .DS_Store vendor/ # Brush runtime autotune cache target/ # Brush prebuilt binary (reinstall via scripts/install_brush.sh) bin/brush bin/brush-app-aarch64-apple-darwin/ # GPU worker-pool config — primary only (a leaf worker must NOT have this) nodes.json # perfcheck runtime state — per-runner, not shared. The authoritative copy lives on the # m4mini watchdog; baselines.json is derived from history.jsonl and regenerated each run. scripts/perfcheck/history.jsonl scripts/perfcheck/baselines.json scripts/perfcheck/pending.json