Thanks for your interest in contributing! AXME Code is an MCP server plugin for Claude Code that provides persistent memory, decisions, and safety guardrails.
- Node.js >= 20
- npm
- Claude Code (for testing the full flow)
git clone https://github.com/AxmeAI/axme-code.git
cd axme-code
npm install
npm run build
npm link # makes `axme-code` available globally for testingnpm test # 413 tests, Node.js built-in test runner
npm run lint # TypeScript type checking (tsc --noEmit)
npm run build # esbuild bundleAll three must pass before submitting a PR.
Open an issue with:
- What you expected vs what happened
- Steps to reproduce
- Your environment (OS, Node version, Claude Code version)
Open an issue describing the use case. Focus on the problem you're solving, not the solution.
- Fork the repo and create a branch:
feat/<topic>-<yyyymmdd>orfix/<topic>-<yyyymmdd> - Make your changes
- Run
npm test && npm run lint && npm run build - Open a PR against
main
Keep PRs focused — one feature or fix per PR. Under 400 lines is ideal.
src/
server.ts # MCP server entry — registers all tools
cli.ts # CLI entry — setup, serve, status commands
types.ts # All shared types and constants
tools/ # MCP tool implementations
storage/ # Filesystem persistence layer (no LLM)
agents/ # LLM sub-agents (scanners, auditor)
hooks/ # Claude Code hook handlers
utils/ # Shared utilities
test/ # Tests (Node.js built-in test runner)
docs/ # Architecture docs and diagrams
- TypeScript strict mode, ESM modules
- Functions:
camelCase, verb-first (saveMemory,loadOracleFiles) - Types:
PascalCase(SessionMeta,SafetyRules) - Files:
kebab-case.ts - Commit messages: Conventional Commits (
feat:,fix:,docs:,test:)
Open an issue or email contact@axme.ai.