Skip to content

Contributing

Terminal window
git clone https://github.com/nandha-kumar-hajari/dxai.git
cd dxai
npm install
npm test && npm run lint

Tests use node:test (no extra framework) via a portable runner; the full suite takes a few seconds. CI runs on every push and PR across Ubuntu, macOS, Windows × Node 18, 20, 22, plus lint and docs-drift jobs on Node 22.

  • Read the Maintainer Notes — dev loop, invariants (idempotent writes, backups, manifest recording, untrusted-registry validation, honest exit codes), and the data-vs-code release tracks.
  • Match existing patterns: read 2–3 similar files before writing new code. AGENTS.md at the repo root is the canonical rule set.
  • One logical change per commit, conventional commit messages (feat:, fix:, docs:, …), tests in the same commit as the change.
  • When you change anything in src/registry/data/, bin/cli.js flags, PROFILE_KEYS, or the manifest schema, also run npm run docs:generate and commit the regenerated docs — the docs-check CI job fails otherwise.

Adding or updating an MCP server, skill, or automation tool only touches src/registry/data/*.json — no version bump, no release. Prefer the transport field over hand-written per-agent configs (derivation covers every agent automatically), and let test/registry-schema.test.js tell you if the entry is malformed. See Maintainer Notes → Catalog maintenance.