# Python & Bytecode
__pycache__/
*.py[cod]
*$py.class
*.so
*.sage.py

# Build & Packaging
build/
dist/
bin/
develop-eggs/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
silica/_version.py
*.manifest
*.spec
pip-log.txt
pip-delete-this-directory.txt
.pdm-plugins/
.pdm-python/
.pdm-build/
__pypackages__/

# Virtual Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Testing, Linting & Coverage
.cache
.pytest_cache/
.mypy_cache/
.ruff_cache/
.tox/
.hatch/
.coverage
.coverage.*
htmlcov/
.htmlcov/
.nosenvy/
.noscript/
.nosetests/
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.run/
tests/fixtures/synthetic_vault/*
.import_linter_cache/
.grimp_cache/

# Editors & IDEs
.vscode/
.idea/
*.swp
*.swo
.spyderproject
.spyproject
.ropeproject
profile_default/
ipython_config.py
.ipynb_checkpoints

# OS Files
.DS_Store
Thumbs.db

# Documentation
docs/_build/
/site
# docs/ is scratch by default; the pages the README and CONTRIBUTING link to
# are the exception, so a reader who follows a link finds the page.
/docs/*
!/docs/benchmarks.md
!/docs/harnesses.md

# Silica & Agent Specific
# .agents/ is local agent tooling, except the Codex plugin marketplace, which
# Codex looks for at exactly .agents/plugins/marketplace.json.
/.agents/*
!/.agents/plugins/
.claude/
CLAUDE.md
.impeccable
/memory
.superpowers
.silica/
.silicaignore
.obsidian

# Databases & Locks
ruvector.db
agentdb.rvf
*.rvf.lock

# Evals & Benchmarks
evals/.oracle/
evals/golden/metrics.json
evals/*/metrics.*.json
bench/
# downloaded benchmark corpora (LongMemEval s is 265 MB)
data/

# Generated Files & Reports
graph.html
CONTEXT.md
PRODUCT.md
DESIGN.md

# Research corpus: papers pulled for design decisions, kept out of the tree.
# Silica still indexes them — .gitignore is deliberately not an index rule.
docs/research/
