# Dependencies
node_modules/

# Build outputs
dist/

# F253 Phase C: gate-last-run sentinel (written by pnpm gate, read by pre-push Layer 4)
.gate-last-run
docs/.doc-index.json

# Runtime-written sentinel queue (MarkerQueue auto-writes ephemeral yaml here).
# Source: packages/api/src/domains/memory/MarkerQueue.ts. Content is callback
# id / sentinel — not meant for git history. Reported by hook as "未提交" but
#猫不该 commit. (47 sweep 2026-06-17)
docs/markers/

# Feature index — derived from docs/features/*.md, NO live consumer (runtime builds
# its index from the docs directly; opensource sync regenerates it fresh). ADR-011
# lists it as optional/never-completed. Decommitted to kill merge-order staleness
# gate noise. Regenerate locally if needed: node scripts/generate-feature-index.mjs
docs/features/index.json
build/
.next/

# PWA generated service worker files
packages/web/public/sw.js
packages/web/public/sw.js.map
packages/web/public/workbox-*.js
packages/web/public/workbox-*.js.map
packages/web/public/swe-worker-*.js
packages/web/public/worker-*.js
packages/web/public/vendor/

# Environment files
.env
.env.local
.env.*.local

# Local overlay files (#603 .local convention, F225 prompt templates)
*.local.md
*.local.md.bak
*.local.yaml
*.local.yaml.bak
*.local-override.md

# IDE & AI tools
.idea/
.vscode/
.cursor/
.agent/
.agents/
.augment/
.codex/*
!.codex/hooks.json
.gemini/
.antigravitycli/
.kimi/
.kiro/
.trae/
.dare/
.gemini/
.gitnexus/
*.swp
*.swo

# MCP config (personal, contains local URLs)
.mcp.json

# Runtime state (bootstrapped per-machine from cat-template.json)
cat-config.json
.cat-cafe/

# Claude Code skills — cat-cafe symlinks are tracked; plugin-generated ones are not
.claude/skills/pencil-renderer
.claude/skills/pencil-to-code

# Claude local project memory / backup files
.claude/projects/
.claude/settings.json.bak
.claude/settings.json.abtest-backup

# OS files
.DS_Store
Thumbs.db

# Browser/automation files
cookies.json

# Logs
*.log
npm-debug.log*
pnpm-debug.log*

# Lockfiles (workspace uses pnpm only)
packages/**/package-lock.json

# Test coverage
coverage/

# Uploaded files (keep dir, ignore contents)
packages/api/uploads/*
!packages/api/uploads/.gitkeep
/uploads/

# Runtime data (audit logs, etc.)
data/
test-audit-logs/

# Temporary files
tmp/
temp/

# Local demo/video scratch exports
assets/demo-videos/
assets/screenshots/

# Video project render outputs (keep scripts/specs tracked; force-add curated assets when needed)
docs/videos/**/assets/*
!docs/videos/**/assets/.gitkeep
docs/videos/**/output/*
!docs/videos/**/output/.gitkeep

# Local external repo scratch space
gitnexus/

# ASR runtime artifact (mlx-audio writes transcript.txt to CWD)
transcript.txt

# Redis dump
dump.rdb
dump.rdb.backup*

# TypeScript build info
*.tsbuildinfo

# Root-level screenshots/images (should go to assets/screenshots/ if needed)
/*.png
/*.jpg
/*.jpeg

# Claude Code worktree metadata
.claude/worktrees/

# Local design prototypes
assets/prototypes/

# Root-level skills/ (Pencil plugin generated)
/skills/

# Desktop build artifacts
desktop/node_modules/
desktop-dist/
bundled/
docs/bug-report/werewolf-investigation/poster-screenshot.png
.worktrees/
.review-worktrees/

# Raw avatar source images (large, pre-sliced originals)
assets/avatars/raw/

# Logo candidates (铲屎官还没决定用哪张)
assets/logos/

# External consulting notes (local only, not for cat-cafe repo)
docs/discussions/2026-02-26-huawei-agent-spec-review/

# Private/confidential documents (contracts, legal, etc.)
private/

# Generated thread export dumps are local recovery artifacts, not curated docs
docs/discussions/exported-threads/

# Voice audition output (F066 — generated wav files, local only)
/voice-audition/

# Large media files (GitHub 100MB limit)
*.mov
*.mp4
!site/assets/guides/*.mp4
*.avi
*.mkv
*.wav

# Large source PDFs (external storage preferred)
docs/discussions/**/sources/*.pdf
docs/competitor-research/**/*.pdf

# Playwright MCP cache
.playwright-mcp/

# SQLite runtime databases (Hindsight evidence store + World Engine + Task Outcome + Event Memory)
evidence.sqlite
evidence.sqlite-shm
evidence.sqlite-wal
world.sqlite
world.sqlite-shm
world.sqlite-wal
task-outcome-episodes.sqlite
task-outcome-episodes.sqlite-shm
task-outcome-episodes.sqlite-wal
event-memory.sqlite
event-memory.sqlite-shm
event-memory.sqlite-wal
event-memory.sqlite.outbox.jsonl

# Antigravity smoke test outputs
.cat-cafe-antigravity-*-smoke.json

# Temporary data files (browser automation artifacts)
forzadata-*.txt
__pycache__/
*.pyc
.claude/skills/browser-automation
.claude/skills/browser-preview
.claude/skills/video-forge
.claude/skills/knowledge-engineering
.claude/skills/organize-threads
.claude/skills/enterprise-workflow

# Design exports (generated from .pen, regeneratable)
designs/exports/

# Longform PDF export intermediates (PDF outputs are review artifacts; commit intentionally)
docs/content/drafts/exports/*.print.html

# F192 eval output (environment-specific, regenerated by scripts/run-f167-eval.mjs)
docs/harness-feedback/snapshots/
docs/harness-feedback/attributions/
docs/harness-feedback/digests/
generated/capability-wakeup/
packages/api/test/__b1_parent_a__/
.claude/skills/organize-threads
.claude/skills/thread-orchestration
.codex-tmp-*
.tmp/
