# Python
__pycache__/
*.py[cod]
*$py.class
*.egg-info/
dist/
build/
.venv/
venv/

# Node / MCP
node_modules/
mcp/dist/

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

# Project
.quern/
*.log

# Session notes / investigation logs
*.txt
!tests/fixtures/*.txt
docs/bugs/
docs/test-results/

# Local AI
.claude/*
!.claude/skills/

idb-companion-*.tar.gz

# Android SDK location — machine-specific, generated by build.sh
local.properties

# macOS menu-bar app build output
macos/QuernMenuBar/build/

# Scratch file for `gh release create --notes-file` (docs/release-channels.md).
# Written per release and not part of the tree; the published notes live on the
# GitHub release. It reached a PR once by way of `git add -A`.
RELEASE_NOTES.md

# Machine-specific release facts: keychain profile name, which install the
# update test runs against, which host holds the tarball check. Values only --
# the procedure lives in docs/release-channels.md. Never secrets; the keychain
# holds those. Copy scripts/release-local-template.md to start one.
RELEASE_LOCAL.md

# A stray `-` at the root: a tool told to write to stdout with `-o -` or `> -`
# creates a file instead. One got committed and shipped in every release
# tarball for two weeks before anyone noticed.
/-
macos/QuernMenuBar/.build/

# SwiftPM build products. macos/QuernMedia/.build is ~116 MB of module cache
# and object files; `git add -A` from the repo root will sweep it in.
.build/
