Files
MosisDesigner/AGENTS.md
2026-01-15 17:57:24 +01:00

73 lines
2.2 KiB
Markdown

# Mosis Designer Agent Guidelines
## Build, Lint, and Test Commands
### Build Commands
- `cmake --build build --config Debug` - Build the project in debug mode
- `cmake --build build --config Release` - Build the project in release mode
- `cmake -B build` - Configure the build system
- `cmake --build build --parallel 4` - Build with 4 parallel jobs
### Lint Commands
- No specific linting tools configured
- Uses C++23 standard with clang-tidy if available
### Test Commands
- No unit tests configured
- Manual testing required for functionality verification
## Code Style Guidelines
### General
- Follow C++23 standard with modern C++ features
- Use snake_case for variable and function names
- Use camelCase for class and struct names
- Use uppercase for constants and enum values
### Naming Conventions
- Functions: camelCase
- Variables: snake_case
- Classes/Structs: camelCase
- Constants: UPPER_CASE
- Enums: UPPER_CASE with prefix (e.g., `enum class FileType { XML, RML };`)
### Includes and Imports
- Use angle brackets for system headers: `#include <iostream>`
- Use quotes for local headers: `#include "header.h"`
- Group includes: system headers, then local headers
- Sort includes alphabetically within groups
### Formatting
- 4 spaces for indentation (no tabs)
- No trailing whitespace
- Unix line endings (\n)
- One statement per line
- Function definitions: space after function name, no space before opening parenthesis
- If statements: space after keyword, no space before opening parenthesis
### Error Handling
- Use exceptions for error conditions
- Check return values of system calls
- Prefer early returns over nested conditionals
- Use constexpr for compile-time constants
### Memory Management
- Prefer stack allocation over heap
- Use smart pointers (std::unique_ptr, std::shared_ptr)
- Avoid raw pointers when possible
- Use RAII principles
### Documentation
- Document public APIs with comments
- Use Doxygen-style comments for functions and classes
- Keep comments concise and clear
## Special Rules
### Cursor Rules
- No cursor rules configured
- No .cursorrules file found
### Copilot Rules
- No copilot instructions configured
- No .github/copilot-instructions.md file found