ruvector/crates/ruvector-cli/Cargo.toml
Claude f3f7a95752 feat: Add Neo4j-compatible hypergraph database package (ruvector-graph)
Major new package implementing a distributed hypergraph database with:

## Core Components (crates/ruvector-graph/)
- Cypher-compatible query parser with lexer, AST, optimizer
- Query execution engine with SIMD optimization and parallel execution
- ACID transaction support with MVCC isolation levels
- Distributed consensus and federation layer
- Vector-graph hybrid queries for AI/RAG workloads
- Performance optimizations (100x faster than Neo4j target)

## Bindings
- WASM bindings (crates/ruvector-graph-wasm/)
- NAPI-RS Node.js bindings (crates/ruvector-graph-node/)
- NPM packages for both targets

## CLI Integration
- 8 new graph commands: create, query, shell, import, export, info, benchmark, serve

## CI/CD
- Updated build-native.yml for graph packages
- New graph-ci.yml for testing and benchmarks
- New graph-release.yml for automated publishing

## Data Generation
- OpenRouter/Kimi K2 integration (packages/graph-data-generator/)
- Agentic-synth benchmark suite integration

## Tests & Benchmarks
- 11 test files covering all components
- Criterion benchmarks for performance validation
- Neo4j compatibility test suite

## Architecture Highlights
- CSR graph layout for cache-friendly access
- SIMD-vectorized query operators
- Roaring bitmaps for label indexes
- Bloom filters for fast negative lookups
- Adaptive radix tree for property indexes

Note: This is a comprehensive implementation created by 15 parallel agents.
Some integration fixes may be needed to resolve cross-module dependencies.

Co-authored-by: Claude AI Swarm <swarm@claude.ai>
2025-11-25 23:11:54 +00:00

74 lines
1.5 KiB
TOML

[package]
name = "ruvector-cli"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
description = "CLI and MCP server for Ruvector"
[[bin]]
name = "ruvector"
path = "src/main.rs"
[[bin]]
name = "ruvector-mcp"
path = "src/mcp_server.rs"
[dependencies]
ruvector-core = { version = "0.1.1", path = "../ruvector-core" }
# CLI
clap = { workspace = true }
indicatif = { workspace = true }
console = { workspace = true }
# Async
tokio = { workspace = true }
futures = { workspace = true }
# Error handling
thiserror = { workspace = true }
anyhow = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true }
# Serialization
serde = { workspace = true }
serde_json = { workspace = true }
# Configuration
toml = "0.8"
# Data formats
csv = "1.3"
ndarray-npy = "0.9"
ndarray = { workspace = true }
# Terminal colors
colored = "2.1"
prettytable-rs = "0.10"
# HTTP for MCP SSE transport
hyper = { version = "1.5", features = ["full"] }
hyper-util = { version = "0.1", features = ["full"] }
http-body-util = "0.1"
# MCP support
async-trait = "0.1"
tower = "0.5"
axum = { version = "0.7", features = ["ws"] }
tower-http = { version = "0.6", features = ["cors", "trace"] }
async-stream = "0.3"
# Additional utilities
uuid = { version = "1.11", features = ["v4"] }
chrono = "0.4"
shellexpand = "3.1"
rand = { workspace = true }
[dev-dependencies]
assert_cmd = "2.0"
predicates = "3.1"
tempfile = "3.13"