protocol objects.
- **Configuration**: Use environment variables and config files for secrets, endpoints, and options.
- **Documentation**: Document all public classes, methods, and schemas.
## Tool Implementation Patterns
- **Tool Registration**: Register each tool
syntax: `[Description]`
- Templates MUST be framework-agnostic (users customize them)
- Templates MUST include inline documentation comments
- Never hardcode specific tech stacks in templates
### CLI Tool (`bin/`, `src/`)
- CLI MUST work
work across M365, Teams, Copilot Studio, and other platforms.
**Current State:** Generally Available (GA)
**Documentation:** https://learn.microsoft.com/en-us/microsoft-365/agents-sdk/
## Build and Test
```bash
# Build entire solution
dotnet build src/Microsoft.Agents.SDK.sln
# Build
Mocking
API responses are mocked using MSW with `AutoAPIMock` fixtures. See `docs/mocks.md` for full documentation and `renderer/src/common/mocks/` for implementation.
- Fixtures are in `renderer/src/common/mocks/fixtures/` and use named exports
- Override responses
lesson folder
4. Write unit tests for new features (prefer xUnit or MSTest)
5. Document public APIs, sample usage, and complex logic. Update lesson `readme.md` files as needed
args, run one endpoint Effect, and return the generated eBay DTO without response reshaping.
## Documentation and tests
- Endpoint-backed API methods need TSDoc with `@param`, `@returns`, a small `@example
compatibility matrix in `README.md`:
- Classify as Extension-Independent, Version-Aware, or Extension-Dependent
- Document PostgreSQL version support (12-17)
- List system views/tables used
- Update tool count statistics
### Recent Major Changes
docs/README.md`) to understand the current design, then act. **After changing architecture, behaviour, or a documented contract, update the matching doc in the same change** — fold shipped behavior into `docs/architecture/`, keep
Node's built-in test runner for automated coverage in `tests/*.test.mjs`.
- For documentation-only or metadata-only changes, do not add tests.
- For behavior changes, prefer extracting small pure
repo test structure.
- Always make sure all tests pass before submitting changes.
- Always ensure documents and code are linted before submitting.
- Do multiple rounds of review and refinement
/ai-terminal/src/app/`
- Tauri backend code in `/ai-terminal/src-tauri/src/`
- Shared types and interfaces should be well-documented
- Keep configuration files in their conventional locations
## Important Notes for Copilot
- This is a **hybrid application
Content, make sure it is updated and reflects the changes made in the document.
Do not use emojis in content you generate, ever, and do not add comments
ships a stale query. If you do this, keep the query narrow and document why.
- Keep service methods responsible for returning normalized plain objects, not raw SDK entities.
- Keep handlers
Dockerfile, Docker Compose and Kubernetes.
## General Guidelines
### Basic Principles
- Use English for all code, documentation, and comments.
- Prioritize modular, reusable, and scalable code.
- Follow naming conventions:
- camelCase for variables, functions
stateless API authentication.
- Use HTTPS and enforce SSL.
- Implement proper CORS policies.
## API Documentation
- Use built-in OpenAPI package for API documentation.
- Provide XML comments for controllers and models
JUnit, and related Java technologies.
## Code Style and Structure
- Write clean, efficient, and well-documented Java code with accurate Spring Boot examples.
- Use Spring Boot best practices and conventions throughout
operations.
- Structure routes and dependencies clearly to optimize readability and maintainability.
Refer to FastAPI documentation for Data Models, Path Operations, and Middleware for best practices