# =============================================================================
# Wrangler / Cloudflare local state (R2 blobs, SQLite, miniflare)
# =============================================================================
.wrangler/

# =============================================================================
# Branch-specific artifacts (playgrounds, prototypes, design exports)
# =============================================================================
playgrounds/
!docs/playgrounds/
overcut/
# CI playground-check (PR Playground job) requires HTML at docs/<branch-slug>/.
# Closes #1461 — previously we had to use `git add -f` on every PR.
# These dirs ARE tracked now; remove the broad exclusions.
docs/design/
docs/research/
docs/migrations/

# =============================================================================
# Large binary assets (use external hosting, not git)
# =============================================================================
docs/*.pdf
docs/*.png
docs/*.html

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Editor swap files
*.swp
*.swo
*~

# Logs
*.log
logs/

# Temporary files
*.tmp
*.temp
.cache/

# Generated visualization outputs
outputs/

# Environment files
.env
.env.local
.mcp.json

# =============================================================================
# Runtime artifacts (should never be committed)
# =============================================================================

# Root level temp artifacts
HOOK_SECURITY_*.json
HOOK_SECURITY_*.txt
.test-skill-validation-*
.test-temp-*

# Instance-specific environment
.claude/.instance_env
.claude-local/

# Session state and runtime data
.claude/context/session.json
.claude/context/session/*
!.claude/context/session/.gitkeep
.claude/session/*
!.claude/session/.gitkeep
.claude/context/handoffs/
.claude/HANDOFF.md
.claude/context/quality_gate_review_evidence.json
.claude/context/verification-queue/

# Coordination runtime files
.claude/coordination/IMPLEMENTATION_REPORT.json
.claude/coordination/*.lock
.claude/coordination/heartbeats/
.claude/coordination/locks/
.claude/coordination/decision-log.json
.claude/coordination/.decision-sync-state.json
.claude/coordination/work-registry.json

# Hook logs (generated at runtime)
.claude/hooks/logs/

# Agent memory (runtime, per-agent)
.claude/agent-memory/
.claude/agent-memory-local/

# Agent activity ledgers (runtime, per-branch attribution tracking)
.claude/agents/

# Worktrees (created by agent isolation, ephemeral)
.claude/worktrees/

# Negative count markers (runtime)
.claude/.negative-count-*

# All runtime logs
.claude/logs/

# Local settings (user-specific)
.claude/settings.local.json

# Hook overrides (per-project, user-specific)
.claude/hook-overrides.json

# Orchestration runtime state (session-specific)
.claude/orchestration/

# Hooks runtime artifacts (created during hook execution)
# Covers root, src/hooks, and plugins/*/hooks
**/hooks/.claude/
**/hooks/dist/*.map

# Python caches
.mypy_cache/
.pytest_cache/
.ruff_cache/
__pycache__/
*.pyc
*.pyo

# IDE/Editor specific
.idea/
.vscode/

# Local instance files
.instance/
.claude/coordination/.claude.db

# Runtime memory state (session-specific)
.claude/memory/
.claude/.comm-style-counter

# Telemetry runtime artifacts (JSONL events, circuit breaker state)
.claude/telemetry/

# Security audit artifacts (generated by verification agents)
SECURITY_AUDIT_*.txt
security-findings.json
.claude/settings.json
.claude/hooks/

# Demo build artifacts
orchestkit-demos/build/

# Next.js build cache (docs site)
.next/

# Split bundle dist copies in plugins (source of truth is src/hooks/dist/)
plugins/*/hooks/dist/

# Vercel local project config

# Feedback system (user-specific learning data)
.claude/feedback/
!.claude/feedback/.gitkeep
.claude/.satisfaction-counter
.setup-complete

# Node modules (all locations)
node_modules/
hooks/node_modules/

# Generated plugin builds (now committed for marketplace distribution)
# Run `npm run build` before committing to ensure plugins/ is up-to-date
# .claude-plugins is tracked (relative path for portability)
viral-posts/01-skills-auto-activate.md
viral-posts/02-specialized-agents.md
viral-posts/03-hook-consolidation.md
viral-posts/04-typescript-performance.md
viral-posts/05-memory-fabric.md
viral-posts/06-plugin-marketplace.md
viral-posts/07-decision-history.md
viral-posts/08-video-demo-generation.md
viral-posts/09-security-validation.md
viral-posts/10-zero-config.md
viral-posts/README.md
tests/skills/functional/results/
tests/evals/results/

# Playground prototypes (design artifacts, not shipped)
playground-*.html
cellebrite-tech-stack.html

# Runtime hook state (session-specific, never committed)
.claude/state/last-test-run.json
.claude/state/edit-history.jsonl
.claude/state/ultrareview-usage.json
.claude/state/ork-metrics-*.json
.claude/scheduled_tasks.lock
.claude/state/
