Thanks for taking the time to contribute.
npm install
npm run build
A local broker for development and integration tests:
docker compose up -d
Before opening a pull request, make sure these pass:
npm run format:check
npm run lint
npm run typecheck
npm test
The integration suite starts a broker with Testcontainers and needs a running Docker daemon:
npm run test:integration
- Keep changes focused; one logical change per pull request.
- Use Conventional Commits for commit messages
(
feat:,fix:,test:,docs:,chore:,refactor:). - Add or update tests for behaviour you change.
- Note user-facing changes in
CHANGELOG.mdunder an Unreleased section.
Tools live in src/tools and are registered through defineTool. Set write: true
for anything that changes broker state and destructive: true for anything that
removes or relocates data; destructive tools must include the shared confirm flag in
their input schema. Cover the new tool in both the unit and integration suites.