# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage
/test-results

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem
.idea/
__pycache__/
*.py[cod]
AGENTS.md
.skill-invocations.log

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

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

# SSL certificates (contain private keys)
nginx/cert/

# vercel
.vercel

# PDF.js library assets synced from pdfjs-dist (npm) by scripts/sync-pdfjs.mjs
/public/pdfjs/build/
/public/pdfjs/web/cmaps/
/public/pdfjs/web/standard_fonts/

# typescript
*.tsbuildinfo
next-env.d.ts

/src/generated/prisma

# runtime data — ignore everything under /data except the pre-vetted reference skills below
/data/*
!/data/skills/
/data/skills/*
# Whitelist: pre-vetted reference skills committed to the repo
!/data/skills/agent-browser/
!/data/skills/agent-init/
!/data/skills/anygen-skill/
!/data/skills/baidu-search/
!/data/skills/browserwing/
!/data/skills/content-skills/
!/data/skills/data-analyst/
!/data/skills/multi-agent-cn/
!/data/skills/multi-search-engine/
!/data/skills/playwright-scraper-skill/
!/data/skills/qcc-cli/
!/data/skills/self-improving/
!/data/skills/skill-creator/
!/data/skills/summarize/
!/data/skills/vane-search/
# _meta.json carries per-user ownerId from the OpenClaw marketplace — never commit
/data/skills/*/_meta.json
# Sensitive: OAuth tokens, session state, local settings snapshots
/data/skills/**/.tokens.json
/data/skills/**/.claude/state/
/data/skills/**/.claude/settings.local.json
/data/skills/*backup*/

# reference & study docs
openclaw*.md

# shared memory for Claude/Codex sessions
docs/agents/

# internal development docs (not for OSS)
PRD.md
DEVELOPMENT.md
docs/PRD.md
docs/DEVELOPMENT.md
docs/knowledge/

# debug/test scripts (may contain tokens or local env data)
scripts/debug-*.ts
scripts/rebuild-test-data.ts

# Docker Compose local overrides (may contain host-specific paths)
docker-compose.override.yml

# Claude Code private config
CLAUDE.md
.claude/
.autoagent/

# local browser automation / tooling (not project code)
chrome_user_data/
log/
drafts/
config.toml
.baked-package.json
scripts/poc-ws-direct.ts
