Contributing

August 14, 2026 ยท View on GitHub

Thanks for helping improve dsh-Agentlink. This project is a Codex-side MCP integration for the official DSH Web Host; it is not currently a DSH Cordis bundle.

Development setup

Requirements:

  • Node.js 22 or newer
  • npm
  • DSH only for live compatibility checks; the unit test suite uses local mock hosts

From a fresh checkout:

npm ci
npm run check

Useful commands:

npm run dev
npm run doctor
npm test
npm run build

dist/ is generated and intentionally ignored. A package tarball builds and validates it through the prepack script.

Change expectations

  • Preserve the connect-only Host lifecycle: the bridge does not start, daemonize, stop, or reconfigure dsh web.
  • Never persist prompts, assistant messages, tool arguments/results, question bodies, or approval bodies in bridge state.
  • Never auto-allow a DSH approval. Keep allow_once behind the supervising human/Codex approval boundary.
  • Preserve fresh Host reads before mutations and explicit stale_view handling.
  • Keep workspace claims cooperative and explicit; do not describe them as OS-level locking.
  • Add or update tests for externally visible behavior.
  • Update the README when changing MCP tools, environment variables, compatibility assumptions, or limitations.

DSH compatibility changes

DSH is in developer preview. A compatibility update should record:

  • the exact DSH CLI version tested;
  • which Host capabilities were probed;
  • unit-test results;
  • the live acceptance steps in docs/validation.md;
  • any behavior that remains inferred or unverified.

Do not generalize one successful local run into compatibility with untested versions.

Pull requests

Before opening a pull request:

npm ci
npm run check
npm pack --dry-run

Keep pull requests focused. Do not commit node_modules/, dist/, local bridge state, .env files, DSH credentials, or session transcripts.