# OS files
.DS_Store
*.DS_Store

# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
*.egg
*.egg-info/
venv/
.venv/
*.db
.pytest_cache/
.coverage
htmlcov/

# Node.js
node_modules/

# Remotion animation project (too large)
towow-animation/

# Playwright MCP cache
.playwright-mcp/

# Worktrees (local development)
worktree-*/
.dev/worktree/

# Logs
*.log

# IDE
.idea/
.vscode/

# Environment files
.env
.env.local

# ML model weights (local only, too large for git)
backend/models/

# Data directories
data/
# Allow pre-computed vectors (production needs this, no ML framework required)
!data/agent_vectors.npz
# Allow AToA app agent data (config, not runtime)
!apps/*/data/
apps/*/data/*
!apps/*/data/agents.json

# Message history
mods/openagents.mods.workspace.messaging/

# Build outputs
dist/
build/
out/
.next/

# Archives
*.zip

# Prompts (proprietary — core IP, do not publish)
tests/crystallization_poc/prompts/
tests/crystallization_poc/PLAN-prompt-experiment-recruit-v1.md
tests/crystallization_poc/simulations/real/assemble_prompts.py
scenes/*/prompts/
docs/prompts/

# Real user experiment data (NEVER upload — contains real people's profiles and outputs)
tests/crystallization_poc/state.json
tests/crystallization_poc/simulations/real/run_*/

# Wrangler local cache (contains account credentials)
.wrangler/

# Guard session signals (per-session runtime artifacts, ADR-030)
.towow/guard/

# Separate git repositories
openagents/
backend/cache/

# Screenshots & images (local reference only)
*.png
*.jpeg
*.jpg
# Allow specific tracked images if needed
!website/public/**/*.png
!website/public/**/*.jpg
!website/public/**/*.svg
!docs/decisions/tasks/*/screenshots/*.png

# Design prototypes (local only)
scenes/*/demo-app/prototypes/

# Vercel build output
.vercel/
.vercelignore

# Deploy secrets
deploy/.env*

# Root package files (generated by accident)
/package.json
/package-lock.json

# MCP server lock file (generated locally)
mcp-server/package-lock.json

# Claude worktrees
.claude/worktrees/
