# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
dist/
*.egg-info/
*.egg
.eggs/

# venv
.venv/
venv/
env/

# tests
.pytest_cache/
.coverage
htmlcov/
.tox/

# editor
.vscode/
.idea/
*.swp
*~

# os
.DS_Store
Thumbs.db

# claude / agent local state (side-harness only; brigade block below
# handles claude/codex/hermes handoff paths with TEMPLATE.md kept tracked)
.brigade/
.opencode/
.openclaw/
.mcp/
.solo-mise/

# Source-repo dogfood workspace files. Public templates live under
# src/brigade/templates/ instead. Root AGENTS.md is tracked so external
# agents can install and adapt Brigade from repository-native guidance.
/CLAUDE.md
/HEARTBEAT.md
/IDENTITY.md
/INSTALL_FOR_AGENTS.md
/MEMORY.md
/SAFETY_RULES.md
/SOUL.md
/TOOLS.md
/USER.md
/hooks/
/memory/
/scripts/*
!/scripts/windows-native-acceptance.ps1
!/scripts/published-artifact-acceptance.py
!/scripts/generate_component_manifest.py
!/scripts/template_profile_snapshot.py
!/scripts/verify_version_check_endpoint.py
!/scripts/hyper-v-native-acceptance.ps1
!/scripts/measure_work_store.py
!/scripts/verify-fast
!/scripts/ci_pytest_shard.py
!/scripts/verify_lock.py
!/scripts/check_size_ratchet_baseline.py
!/scripts/benchmark_issue266_work_status_memory.py
!/scripts/managed_snapshot.py
!/scripts/measure_run_journal.py
!/scripts/prepare_dev_wheel.py
!/scripts/record-quickstart-demo.sh
!/scripts/smoke-mcp
!/scripts/verify
!/scripts/verify-focused
!/scripts/verify_component_manifest_provenance.py
!/scripts/verify_env.py
!/scripts/version_sync.py
/skills/

# Local plan/spec scratch dirs only. Reviewed planning artifacts ARE
# tracked and public: docs/phase-*.md, docs/roadmap-completion-plan.md,
# docs/superpowers/plans/, and docs/superpowers/specs/. These two paths
# exist for in-flight drafts that have not been reviewed for publication.
# See "Planning artifacts" in CONTRIBUTING.md.
/docs/plans/
/docs/specs/

# Stale generated branding asset.
/docs/assets/solo-mise-banner.png

# scratch
/scratch/
/error.log
*.bak
*.tmp

# >>> brigade gitignore block >>>
# Managed by `brigade init`. Edit between the markers to customize.
# Re-running `brigade init` replaces only the content between markers.

# claude: handoffs are session-local and may contain private context.
!.claude/
.claude/*
!.claude/memory-handoffs/
.claude/memory-handoffs/*
!.claude/memory-handoffs/TEMPLATE.md
!.claude/memory-handoffs/.gitkeep

# codex: handoffs are session-local and may contain private context.
!.codex/
.codex/*
!.codex/memory-handoffs/
.codex/memory-handoffs/*
!.codex/memory-handoffs/TEMPLATE.md
!.codex/memory-handoffs/.gitkeep

# hermes: handoffs are session-local and may contain private context.
!.hermes/
.hermes/*
!.hermes/memory-handoffs/
.hermes/memory-handoffs/*
!.hermes/memory-handoffs/TEMPLATE.md
!.hermes/memory-handoffs/.gitkeep

# grok: handoffs are session-local and may contain private context.
!.grok/
.grok/*
!.grok/memory-handoffs/
.grok/memory-handoffs/*
!.grok/memory-handoffs/TEMPLATE.md
!.grok/memory-handoffs/.gitkeep

# Daily session logs are machine-local raw context.
memory/20[0-9][0-9]-[0-1][0-9]-[0-3][0-9].md

# Review inbox: ambiguous handoffs awaiting human triage.
memory/handoff-inbox/

# brigade local state (logs, scrub cache, dogfood runs, work sessions).
.brigade/
.brigade/receipt-signing-key
.brigade/backups/
.brigade/backups.toml
.brigade/center/
.brigade/context/
.brigade/dogfood.toml
.brigade/handoffs/
.brigade/handoff-sources.json
.brigade/learn/
.brigade/projects.toml
.brigade/release/
.brigade/repos.toml
.brigade/chat-surfaces.toml
.brigade/daily.toml
.brigade/memory-care.toml
.brigade/vault.toml
.brigade/vault-index/
.brigade/vault-propose/
.brigade/reviews.toml
.brigade/scanners.toml
.brigade/security.toml
.brigade/tools.toml
.brigade/logs/
.brigade/runs/
.brigade/scrub-cache/
.brigade/scanners/
.brigade/security/
.brigade/tools/
.brigade/chat-memory-sweeps/
.brigade/work/
.brigade/mcp/
# .brigade/mcp.json is the shared canonical MCP server catalog: keep it tracked.
!.brigade/mcp.json

# Generated tool projections are local harness state.
.claude/commands/
.codex/skills/
.opencode/commands/
.opencode/superpowers/
.antigravity/commands/
.antigravity/superpowers/
.pi/commands/
.pi/superpowers/
.cursor/rules/
.cursor/skills/
.aider/commands/
.aider/skills/
.goose/commands/
.goose/skills/
.continue/rules/
.continue/skills/
.copilot/instructions/
.copilot/skills/
.qwen/commands/
.qwen/skills/
.kimi/commands/
.kimi/skills/
.adal/commands/
.adal/skills/
.openhands/instructions/
.openhands/skills/
.grok/instructions/
.grok/skills/
.amp/instructions/
.amp/skills/
.crush/instructions/
.crush/skills/
.hermes/commands/
.hermes/superpowers/
.openclaw/commands/
.openclaw/superpowers/
.mcp/
scripts/*.md
# <<< brigade gitignore block <<<


# GraphTrail code-graph index
.graphtrail/
