Skip to content

dxaimake your repo ready for every AI coding agent

One command detects your stack and writes the files every agent reads — AGENTS.md, CLAUDE.md, Cursor rules, project MCP configs — for Cursor, Claude Code, VS Code, Codex, Gemini, Windsurf, and Antigravity. Merged, never overwritten. Backed up, tracked, reversible.

$ npx dxai init
Get started GitHub  Node 18+ · MIT · no install needed
run it inside any repo
$ dxai init › detected: react + node · npm · vitest · github-actions ├─▸ Cursor .cursor/rules · commands · mcp.json ├─▸ Claude Code CLAUDE.md ├─▸ VS Code .vscode/mcp.json ├─▸ Codex CLI AGENTS.md ├─▸ Gemini CLI GEMINI.md · .gemini/settings.json ├─▸ Windsurf AGENTS.md ├─▸ Antigravity AGENTS.md └─▸ shared .editorconfig · .gitattributes  repo ready · nothing overwritten · manifest recorded

Commands

dxai init
Make the current repo AI-agent-ready: detects your stack and writes AGENTS.md, CLAUDE.md, Cursor rules, and project MCP configs. dxai system does the same for global configs across all seven tools; dxai both runs everything.
dxai add <mcp…>
Fast path, no wizard. Wires a server into every detected agent in one line; remove takes it out again. Both honour --project, --dry-run, and --json.
dxai apply <profile>
Team setups as data. Commit .dxai/profile.json and a teammate reproduces your whole environment with one command.
dxai status / doctor
Every write lands in a manifest, so drift is visible: what went missing, what was added behind dxai’s back. doctor --handshake spawns each MCP server and verifies it actually speaks JSON-RPC.
dxai rollback
Writes merge instead of overwriting, and every touched file is snapshotted first. Rollback restores the latest backup — after snapshotting the current state, so it’s undoable too.
dxai update
The MCP / skills catalog ships separately from the CLI and refreshes itself on a TTL. New servers arrive without an npm upgrade — or host your own registry with DXAI_REGISTRY_URL.
dxai cleanup --yes
The whole lifecycle is scriptable: set up, verify, and tear down under CI with JSON output — and partial failures exit non-zero instead of pretending everything worked.

Guarantees

  • idempotent merges into existing configs; refuses to touch a file it can’t parse
  • reversible every write backed up as <file>.bak.<ts>; capped and auto-pruned
  • honest partial failures exit non-zero; --json output everywhere
  • paranoid remote catalog data is allowlisted and shell-escaped before it can execute anything

Supported agents

  • Cursor ~/.cursor/mcp.json
  • Claude Code claude mcp add
  • VS Code / Copilot …/Code/User/mcp.json
  • Codex CLI ~/.codex/config.toml
  • Gemini CLI ~/.gemini/settings.json
  • Windsurf ~/.codeium/windsurf/mcp_config.json
  • Antigravity ~/.gemini/config/mcp_config.json

See also