Thank you for your interest in contributing.
git clone https://github.com/qualixar/slm-mesh.git
cd slm-mesh
npm installnpm test # Run 480 tests
npm run typecheck # TypeScript check (0 errors required)
npm run build # Production build
npm run dev # Run in development mode
npm run test:watch # Watch mode
npm run test:coverage # Coverage report- Fork the repository
- Create a feature branch:
git checkout -b feat/my-feature - Write tests first (TDD — we require 100% line coverage)
- Make your changes
- Run
npm testandnpm run typecheck - Commit with conventional commits:
feat: add new feature - Open a pull request
- TypeScript strict mode — all strict checks enabled
- 100% line coverage — no exceptions
- Functions under 50 lines — extract helpers for larger logic
- Files under 800 lines — split into modules
- Immutable patterns — create new objects, don't mutate
- No
anytypes — use proper typing orunknown+ runtime validation - Error handling — never swallow errors silently
Format: <type>: <description>
Types: feat, fix, refactor, test, docs, chore, perf
We practice TDD:
- Write the test (RED — it fails)
- Write minimal code (GREEN — it passes)
- Refactor (IMPROVE — clean up)
Run coverage: npm run test:coverage
- Bug fixes (with reproducing test)
- Documentation improvements
- Agent detection patterns (new AI agents)
- Performance improvements (with benchmarks)
- Adapter implementations (Redis, PostgreSQL, etc.)
- New MCP tools (the 8-tool surface is intentional — each tool consumes agent context)
- Breaking changes to existing tool interfaces
- External dependencies (we target zero runtime deps beyond Node.js built-ins + better-sqlite3 + MCP SDK)
By contributing, you agree that your contributions will be licensed under the Elastic License 2.0.