# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/
.pytest_tmp/

# dotenv
.env

# virtualenv
.venv
venv/
ENV/

# mypy
.mypy_cache/

# IDE settings
.vscode/
.idea/

# Pixi
.pixi
.pixi.lock

# Zensical build output
**/site/
# Pages generated from the notebooks in docs/examples/ by `pixi r docs`
/docs/examples/*.md
!/docs/examples/index.md
/docs/examples/*_files/
# Generated from the GitHub milestones by `pixi r docs`
/docs/roadmap.md

# Misc
.DS_Store
junit.xml

# AI agents. AGENTS.md and .agents/skills/ are the shared files; .claude/skills links to
# the latter. The negations override a global ignore of these directories.
!/.agents/
/.agents/*
!/.agents/skills
!/.claude/
/.claude/*
!/.claude/skills
# Claude Code skips AGENTS.md when a CLAUDE.md exists, so keep personal ones out.
CLAUDE.md
CLAUDE.local.md
