semantics
- prompt configuration and caching
- Node runner I/O contract
## When making changes
1. **Preserve documented behavior by default.**
- If you find a mismatch between docs and code, assume code
Verify cross-file call detection works correctly
- Test on different Windows versions when applicable
## Documentation
- Include examples of usage in code comments
- Document any limitations or known issues
- Provide clear
HTTP entry, `src/worker.ts` for the Cloudflare Worker entry, and `src/stdio.ts` for local MCP clients.
- Documentation is fetched in real-time from shadcn-svelte.com using Cheerio + Turndown (HTML → Markdown) and direct
SKILL.md` frontmatter compliance. The root `SKILL.md` is the runtime skill; `README.md` is human-facing documentation; `references/` contains progressive-disclosure docs; `scripts/` contains the TypeScript token/scoring CLI and optional GEPA evaluator
required migration.
- `MINOR` for backward-compatible features or enhancements.
- `PATCH` for bug fixes, documentation updates, refactors, and non-breaking maintenance.
- If the correct bump level is ambiguous, ask before changing
elsewhere. Keep imports following the existing direction and avoid circular dependencies.
### Readable code over documentation or comments
Function names should be self-explanatory. Do NOT add docstrings to functions unless
GitHub Copilot Instructions
This document provides context for GitHub Copilot when working with this Rust project.
## Project Context
This is a Rust crate using modern tooling:
- **Rust**: 1.95+ (2024 edition
current build matrix and SDK version.
- Use `.github/workflows/markdownlint.yml` and `.github/workflows/link-check.yml`
as the authorities for documentation validation.
## Working in this repository
- Read the nearest part README before changing
Agent Instructions for `homeassistant-mcp`
This document provides essential guidance for AI agents working on the `homeassistant-mcp` codebase.
## 1. Architecture & Core Concepts
The project is a **Model Context Protocol
this repo
- **Adding a check requires evidence.** Cite an Anthropic source, academic paper, or documented real-world failure in `standards/evidence.json`. Opinions are not acceptable.
- **Scanner output is a contract.** Changing
interfaces (`ICoseSignToolPlugin`, `IPluginCommand`)
- **Plugin Error handling**: Use appropriate exit codes and console error output
### Documentation
- Use XML documentation comments for public APIs
- Include parameter descriptions and return value documentation
registered structural rules, preserve generated substitutions, bump the module's `NORMALIZER_VERSION`, and document semantic accommodations on the benchmark's doc page. Per-query execution telemetry records applied rule
Back to root
cd ../..
```
---
# Build and Verify
**IMPORTANT**: After making any code or documentation changes, run `mise all` from the repository root to build and verify all applications:
```bash
changelog.md`
### Adding New Linter Rules
1. Add the new rule with appropriate severity and documentation
2. Add a label to your PR in the format `test- ` to trigger the staging
leakage, resource leaks, thread races,
unbounded buffers, KQL injection, data-loss paths, regressions of
documented bugfixes, logic bugs that crash the task or pipeline,
any SNAPSHOT / unscanned dependency in production
ready for review
If a check failure is unrelated to your changes:
1. Document the pre-existing failure in the PR description
2. Ensure your changes don't make
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