__pycache__/
*.py[cod]
*.egg-info/
.coverage*
/dist/
/build/
.venv/
.env
.env.test
opensquilla.toml
.gateway.log
.gateway-test.html
# Locally rendered review/explainer/plan pages — never published.
*.local.html
*.db
*.db-shm
*.db-wal
*.sqlite
*.sqlite-shm
*.sqlite-wal
# Pre-migration database snapshots written by the schema migrator
# (<dbname>.pre-<migration_id>.bak) — same runtime-data class as *.db.
*.db.pre-*.bak
*.sqlite.pre-*.bak
.DS_Store
.*/
!.github/
!.github/workflows/
!.github/workflows/*.yml
data/
!src/opensquilla/contrib/codetask/data/
!src/opensquilla/contrib/codetask/data/**
.opensquilla/
benchmarks/
specs/
/reports/
# Local agent/editor instructions and runtime state.
AGENTS.md
!docs/agents.md
!src/opensquilla/identity/templates/bootstrap/AGENTS.md
CLAUDE.md
GEMINI.md
.codex
.codex/
.claude/
.omc/
.omx/

# One-off planning artifacts kept local, not published.
/PLAN.md
/SPEC.md
/prd.json
/progress.txt
/plans/
/docs/plans/
/docs/proposals/
/docs/superpowers/
# Local-only tree. To publish one doc, force-add it once:
#   git add -f docs/superpowers/specs/<filename>.md
# (A bare "!" re-include can't override an excluded parent directory.)
*.png
# Brand assets are intentionally tracked at their source locations. The WebUI
# copy under gateway/static/dist is generated by Vite and stays ignored.
!/assets/*.png
!/src/opensquilla/gateway/static/img/*.png
!/opensquilla-webui/public/opensquilla-mark.png
# Four reviewed, local chat-topbar baselines are the only tracked Playwright
# screenshots. Reports, failures, and every other generated PNG stay ignored.
!/opensquilla-webui/e2e/topbar-visual.spec.ts-snapshots/
!/opensquilla-webui/e2e/topbar-visual.spec.ts-snapshots/*.png
!/opensquilla-webui/.node-version
!/src/opensquilla/dist/
!/src/opensquilla/dist/**
/src/opensquilla/dist/**/__pycache__/
!/src/opensquilla/plugins/tokenjuice/rules/build/
!/src/opensquilla/plugins/tokenjuice/rules/build/**
site/
/plugins/
crontab-*
~/
/reference-*
/reference-mem
/bench-mem
.omx/
tests/functional/reports/

# Frontend build artifacts
opensquilla-webui/node_modules/
opensquilla-webui/dist/
src/opensquilla/gateway/static/dist/

# Local-only release-hygiene tests that reference legacy artifact names
# kept off the public tree.
/tests/_private/

# Maintainer-local design / planning artifacts kept beside the repo but
# not part of the published source.
/meta-skills.pptx
/kb-index.xlsx

# Generated local outputs from document/meta-skill smoke runs.
/texput.log
/src/opensquilla/skills/bundled/multi-search-engine/Tokyo_5日出差行程.docx

# Local-only fetcher for the clawhub skills imported into bundled/.
# The bundled copies are tracked; the raw zip downloads and the fetch
# helper stay out of the published tree.
/_clawhub_skills/
/scripts/_fetch_clawhub_skills.py

# Playwright e2e output (reports, traces, screenshots) — regenerated per run.
test-results/

# Runtime config-write backups the gateway leaves when it rewrites config.toml.
opensquilla.toml.backup.*

# Background-music audio dropped in by the user for local builds. The manifest
# (playlist.json) and README stay tracked; copyrighted audio never does.
opensquilla-webui/public/music/**/*.mp3
opensquilla-webui/public/music/**/*.m4a
opensquilla-webui/public/music/**/*.ogg
opensquilla-webui/public/music/**/*.flac
opensquilla-webui/public/music/**/*.wav
opensquilla-webui/public/music/playlist.local.json

# Isolated local implementation worktrees.
/.worktrees/
