/bin/
/bin-docker/
/dist/
/.claude/
__pycache__/
# Python build artifacts. `python -m build` writes here, and a published wheel
# committed by accident is a file nobody looks at and everybody trusts.
sdk/python/dist/
sdk/python/*.egg-info/
.pytest_cache/
docs/proposals/

# docker compose reads this automatically. It names a config file you have
# decided to trust and may hold a Studio API token — both are per-machine.
/.env

# Both are per-machine too, and a .sandbox.yaml committed by accident is worse
# than most: it is the file config/trust.go treats as untrusted input, so one
# arriving in the repository is a setting every later clone silently inherits.
# Unanchored, because the pattern has to catch the dotfile at the root and
# studio.sandbox.yaml beside it.
*.sandbox.yaml

# A local semantic-search index (codemem). Machine-specific and large -- ~90MB
# for this repository -- and rebuilt from the source it indexes, so committing
# it would put a stale copy of the tree inside the tree.
/.codemem/

# node_modules anywhere; the app build outputs are left to studio/.gitignore
# and web/.gitignore, which anchor them per app (/.next/, /out/, /build). A
# second unanchored copy here would only be reached if an app ever lost its
# own file, and would then also ignore any source directory that happened to
# be called dist or build.
node_modules

# The SDK's build outputs. `dist/` is what npm publishes and `dist-test/` is the
# test build beside it; both are produced by tsc and neither is source.
/sdk/typescript/dist/
/sdk/typescript/dist-test/

# npm pack output, which is a build artifact and not source.
/sdk/typescript/*.tgz
