# Secrets — never commit
.env
*.env

# YouTube Short scripts (local only — render with lipsync.video then upload manually)
yt-vid-data/*
!yt-vid-data/.gitkeep

# Python
__pycache__/
*.py[cod]
*.pyo
*.pyd
*.egg-info/
dist/
build/
*.egg
.eggs/

# Virtual environments
.venv/
venv/
env/
ENV/

# Distribution / packaging
*.whl
*.tar.gz

# Testing
.pytest_cache/
.coverage
htmlcov/
.tox/

# Type checking
.mypy_cache/
.pytype/

# IDEs
.idea/
*.swp
*.swo

# OS
.DS_Store
Thumbs.db

# Project-specific
files.zip
ssi_data.json
github_repos_cache.json
github_readmes_cache.json
published_ideas_cache.json
ssi_history.json

# Personal content — gitignored, copy from content_calendar.example.py
content_calendar.py

# Avatar identity data — personal career facts, runtime memory, and learning log.
# Gitignored so forks don't expose real personal data.
# Copy the examples and fill in your own details:
#   cp data/avatar/persona_graph.example.json data/avatar/persona_graph.json
#   cp data/avatar/narrative_memory.example.json data/avatar/narrative_memory.json
data/avatar/persona_graph.json
data/avatar/narrative_memory.json
data/avatar/learning_log.jsonl
data/avatar/extracted_knowledge.json

data/selection/generated_candidates.jsonl
data/selection/published_posts_cache.jsonl
data/avatar/domain_knowledge.json

models/