# Go
node/vendor/
node/*.exe
node/*.test
*.sum

# Rust
phonebook/target/
phonebook/src/gen/

# Python
sdk/python/.venv/
sdk/python/.venv-build/
sdk/python/__pycache__/
sdk/python/*.egg-info/
sdk/python/.pytest_cache/
sdk/python/.mypy_cache/
sdk/python/.ruff_cache/
**/__pycache__/
**/*.pyc

# TypeScript / Node
sdk/typescript/node_modules/
sdk/typescript/dist/
clawdbot/node_modules/
clawdbot/.next/
web/node_modules/
web/.next/
web/out/

# Secrets & credentials
*.pem
*.key
*.p12
.env
.env.local
.env.*.local
*_credentials.json
secrets/

# Keep the example env file
!infra/.env.example

# Editor
.vscode/
.idea/
*.swp
*.swo
.DS_Store

# Docker
infra/.env

# Build artifacts
dist/
build/

# Generated protobuf bindings are committed so teammates don't need to run codegen
# Exclude only Rust gen (produced at cargo build time, not checked in)
phonebook/src/gen/

phone-agent/.env
phone-agent/.venv