# Dependencies
node_modules/
__pycache__/
*.pyc
.venv/
venv/
.eggs/
*.egg-info/

# Build outputs
# (publish.yml builds before npm publish; per-package prepublishOnly mirrors locally)
dist/
build/
*.tsbuildinfo
.next/
.docusaurus/

# IDE
.idea/
.vscode/
*.swp
*.swo
.DS_Store

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

# Testing
coverage/
.coverage
htmlcov/
.pytest_cache/
.vitest/
# vitest JSON report each package's `test:smoke` writes for assert-no-skipped-tests.mjs
.smoke-report.json

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

# Credentials
cookies.txt
*.cookies

# Misc
*.tgz
.npmrc
.worktrees/

# Dependency twin resolver output (scripts/dependency-twin-resolver.mjs)
# — a generated artifact; uploaded by CI, never committed.
dependency-resolution-observations.json

# coord-mcp device credential (nonce/JWT) is written into the worktree as
# .mcp.json at launch. It is a live credential and must never be committed.
# (Was previously only in .git/info/exclude — local-only, lost on fresh clone/CI.)
.mcp.json
