# Secrets — real .env files must never land here, only .env.example templates.
.env
.env.local
.env.*.local
**/.env
!**/.env.example

# Live mirror of server /opt/docker/{compose,conf}/ trees pulled by
# sync-stacks.sh. Contains upstream compose files that can carry embedded
# plaintext credentials (e.g. legacy seafile/paperless configs), so we
# don't track them in git. Audited, hand-curated copies live under
# stacks/<name>/ and are the source of truth.
stacks-mirror/

# Staged htpasswd / secrets files that might get written to /tmp during
# helper scripts.
htpasswd-new
*.netrc

# Editor / OS cruft
.DS_Store
*.swp
*.swo
*~

# Logs
*.log
*.log.*

# Claude Code runtime state — locks, scheduled-task ledgers, etc.
# Per-machine, not interesting cross-checkout.
.claude/scheduled_tasks.lock
.claude/*.lock

# graphify: commit only the lightweight labeled map; ignore heavy/regenerable artifacts
graphify-out/*
!graphify-out/GRAPH_REPORT.md

# Python bytecode (e.g. from local py_compile of stack wrappers)
__pycache__/
*.pyc
stacks/lobe-chat/.env
