task-specific reference map](../CLAUDE.md#read-when-relevant) to find detailed architecture and development documentation.
## Testing Guidelines
Write tests that provide real value, not just coverage:
- **Test behavior, not implementation
tools and libraries for building, testing, releasing, and managing Fluid Framework repositories.
For release documentation, use [conventional commits](../README.md#documenting-build-tools-changes), not changesets.
**Runtime**: Node.js >=22.22.2, pnpm
vice versa.
## Coding Guidelines
Follow the [Coding Guidelines](../docs/content/Guidelines/Coding-Guidelines.md) when writing / modifying code.
## Documentation Guidelines
Follow the [Documentation Guidelines](../docs/content/Guidelines/Documentation-Guidelines.md) when writing or modifying code or documentation.
Read and follow
region — this makes it easy to see all object state at a glance.
### Comments & Documentation
- This codebase is **heavily commented** — maintain that standard.
- Public types and public members exposed outside
Style nitpicks that ruff/isort would catch automatically
- Missing docstrings or comments — we prefer minimal documentation. Code should be self-explanatory.
- Suggestions to add inline comments, logging, or error handling that
warnings as errors
### Code Style
- Follow the conventions in `.editorconfig`
- Use clear, descriptive XML documentation comments for public APIs
- Follow async/await patterns consistently
- Use file-scoped namespaces: `namespace ModelContextProtocol.Client;`
### Naming
layers with
no wire vocabulary in the domain; and the work is small, tested, documented,
and free of implementation comments.
## Framework structure
RubyLLM is an AI framework with two main
avoid formatting issues
### Pull Requests
- Ensure all tests pass before requesting review
- Update documentation if adding new features
- Follow the PR template in `.github/PULL_REQUEST_TEMPLATE.md`
- ALWAYS run `pre-commit
names for variables, methods, and classes
- Keep methods focused and single-purpose
- Add XML documentation comments for public APIs
- Use nullable reference types where appropriate
- Prefer `var` for local variables
ensure proper separation of concerns.
- All public classes, modules, and methods should have clear documentation in Sphinx format.
## PyMongo-specific Concerns
- Do not review files within `pymongo/synchronous` or files
Conventions
- **MCP Tools**: Implemented using attributes in the Plugin. Reflection-based access via `ReflectorNet`.
- **Documentation**:
- [Unity-MCP.wiki](Unity-MCP.wiki/) for user docs.
- [docs/](docs/) for translations and repo docs.
- See `CLAUDE.md
images live under `tests/resources/`
- Release boot assets (kernel + EROFS rootfs) are built in `arcboxlabs/boot-assets`
## Documentation References
- Main [CLAUDE.md](../CLAUDE.md): project overview, architecture, commands
- Crate-level READMEs in `app/`, `virt
Guidelines
- Ensure all tests pass
- Follow the [contribution guidelines](https://github.com/microsoft/mcp/blob/main/CONTRIBUTING.md)
- Include appropriate documentation
- Include tests that cover your changes
- Update CHANGELOG.md with your changes
- Run `.\eng\common\spelling
bash scripts/quality-gates.sh` runs this as step 0 (fail-fast, < 1 second) before lint/test.
### Documentation Sync
Any change to CLI commands, flags, JSON output shape, providers, themes, or prompts must also
picked up by `AxeScanAllTests` which navigates to every page and asserts zero accessibility violations.
## Documentation Reference
When looking up API references, control usage, or platform guidance, use the Microsoft Learn