# Dependencies
node_modules/
.pnpm-store/
.pnp.*
.yarn/
bower_components/

# Python
__pycache__/
*.py[cod]
*$py.class
.venv/
venv/
env/
.python-version
*.egg-info/
.pytest_cache/
.mypy_cache/
.ruff_cache/

# Build output
# (dist/ is intentionally NOT ignored — we commit built .skill archives)
build/
out/
target/
*.tsbuildinfo

# Environment / secrets
.env
.env.*
!.env.example
*.pem
*.key

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

# IDE / editor
.idea/
.vscode/*
!.vscode/settings.json
!.vscode/extensions.json
*.swp
*.swo
*~

# OS
.DS_Store
Thumbs.db
desktop.ini

# Coverage / cache
coverage/
.nyc_output/
.cache/
.parcel-cache/
.next/
.nuxt/
.turbo/
.svelte-kit/

# Misc
*.tmp
.tmp/

# Migration backups (created by setup-* skills; redundant with git history)
**/*.bak-*

# AI обвеска — слой 2: переопределяем глобальный ~/.config/git/ignore
# для своих репо (см. .workshop/.wiki/concepts/meta-out-of-repo.md)
!.claude/
!.tasks/
!.wiki/
!.brainstorm/
!.archive/
!.mcp/
!.mcp.json
!MEMORY.md

# Per-machine Claude Code local settings — keep ignored despite !.claude/ above
/.claude/settings.local.json

# Runtime session lock — ephemeral, never committed (using-tasks skill)
.tasks/.lock
