# Gemini Assistant Guidelines - Bluetooth Workspace

See [README.md](./README.md) for project structure and description, and general guidelines for development.

## Guidelines

### Commit Messages
When asked to write or suggest a commit message, strictly follow the rules in [Commit message style](./docs/commit_messages.md).

### Toolchain and Formatting
When compiling, testing, or formatting code in this repository, use the `infra` toolchain (`infra/env_setup.sh` or `infra/env_setup.fish`) and run `cargo fmt` instead of `rustfmt`. See [Toolchain and Infrastructure](./docs/infra.md) for details.
