Thanks for your interest in contributing! HiveMindDB is early-stage and there's a lot to build.
- Rust (latest stable): https://rustup.rs
- Node.js (for MCP server): https://nodejs.org
- Docker (for running the full stack): https://docker.com
git clone https://github.com/NodeNestor/HiveMindDB.git
cd HiveMindDB
cargo buildcargo testcd deploy/docker
docker compose upThis starts a 3-node cluster with SpacetimeDB + RaftTimeDB + HiveMindDB sidecars.
crates/
core/ # HiveMindDB server binary
src/
main.rs # Entry point
api.rs # REST + WebSocket API (axum)
memory_engine.rs # Memory CRUD, search, graph, extraction
channels.rs # Pub/sub channels
extraction.rs # LLM extraction pipeline
embeddings.rs # Vector embeddings + similarity search
persistence.rs # Snapshots + RaftTimeDB replication
websocket.rs # WebSocket real-time subscriptions
types.rs # Data types
config.rs # Configuration
cli/ # CLI tool (hmdb)
mcp-server/ # MCP server for Claude Code / OpenCode / Aider
module/ # SpacetimeDB WASM module
deploy/
docker/ # Docker Compose for local dev
agentcore/ # AgentCore integration
Check the GitHub Issues for current priorities.
- Integration tests with live LLM/embedding APIs
- Docker-based E2E test suite
- Batch embedding indexing on snapshot restore
- Memory deduplication and merging strategies
- Graph query language (Cypher-like)
- More MCP tool coverage
- Langchain / LlamaIndex memory adapters
- OpenTelemetry tracing
- Kubernetes Helm chart
- Fork the repo and create a branch from
main - Make your changes
- Ensure
cargo testandcargo clippypass - Write a clear PR description explaining what and why
- Submit!
- Run
cargo fmtbefore committing - Run
cargo clippyand fix warnings - Keep functions focused and small
- Add comments for non-obvious logic (but don't over-comment)
- Error handling: use
anyhowfor applications,thiserrorfor libraries
- GitHub Issues: Bug reports, feature requests, questions
- Pull Requests: Code contributions
- Discussions: Architecture decisions, design proposals
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.