···11+# CLAUDE.md
22+33+This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
44+55+## Instructions
66+77+- Use `--log-format bar-with-logs` with Nix for improved build log output.
88+- Add new untracked files in Nix flakes with `git add`.
99+- Format code with `nix fmt` if available.
1010+- Write shell scripts that pass ShellCheck.
1111+- Write Python code for 3.12 that conforms to `ruff format` and passes `ruff check`.
1212+- Always test/lint/format your code before committing.
1313+- Add debug output or unit tests when troubleshooting.
1414+- Avoid mocking in tests.
1515+- Use the `gh` tool to interact with GitHub.
1616+- Use `nix-locate` to find packages by file path.
1717+- Use `nix run` to execute applications that are not installed.
1818+- Do not include "claude" in commit messages.
1919+- Use `nix eval` instead of `nix flake show` to look up attributes in a flake.
2020+- Use tmux-mcp for long running tasks, use a session with a claude- prefix, create a session if you can't find any one that is idle
2121+- Use git-mcp for advanced git operations like interactive staging, stash management, and bisecting
2222+- Take extra care that we don't commit lines with trailing whitespaces