Status: Proposed Date: 2026-02-28 Authors: RuVector Team Deciders: ruv Supersedes: N/A Related: ADR-065 (npm Publishing Strategy), ADR-070 (npx ruvector Unified Integration)
The ruvector project produces 79 npm packages and 27 WASM crates spanning vector databases, graph engines, LLM orchestration, quantum simulation, spiking neural networks, cryptographic primitives, and distributed compute. The primary CLI entry point — npx ruvector (v0.1.100) — exposes only a fraction of this surface: vector CRUD, GNN layers, attention mechanisms, and system diagnostics.
Meanwhile, significant capabilities exist as Rust crates with no npm wrapper, as WASM crates with no JavaScript bindings published, or as npm packages that are disconnected from the CLI. This ADR catalogs every gap and proposes a roadmap to make the full ecosystem accessible through npx ruvector.
| Command Group | Subcommands | Backend |
|---|---|---|
create |
Create vector DB | @ruvector/core |
insert |
Insert vectors from JSON | @ruvector/core |
search |
ANN search with filters | @ruvector/core |
stats |
Database statistics | @ruvector/core |
benchmark |
Performance benchmarks | @ruvector/core |
info |
System info (backends, versions) | built-in |
install |
Install optional packages | built-in |
doctor |
Health check | built-in |
gnn layer |
Create/test GNN layers | @ruvector/gnn |
gnn compress |
Adaptive tensor compression | @ruvector/gnn |
gnn search |
Differentiable search | @ruvector/gnn |
gnn info |
GNN module info | @ruvector/gnn |
attention compute |
5 attention mechanisms | @ruvector/attention |
attention benchmark |
Benchmark attention types | @ruvector/attention |
attention hyperbolic |
Hyperbolic geometry ops | @ruvector/attention |
attention list |
List mechanisms | @ruvector/attention |
attention info |
Module details | @ruvector/attention |
Total: 17 commands across 4 groups.
| npm Package | Version | Capability | CLI Integration |
|---|---|---|---|
@ruvector/pi-brain |
0.1.0 | Shared brain CLI + SDK + MCP | Missing — has own npx pi-brain CLI |
@ruvector/sona |
0.1.4 | Self-optimizing neural architecture | Bundled dep but no CLI commands |
@ruvector/rvf |
0.2.0 | RuVector Format SDK (read/write/validate) | Optional dep but no CLI commands |
@ruvector/rvf-solver |
0.1.7 | Temporal constraint solver | No CLI |
@ruvector/rvf-wasm |
0.1.5 | RVF WASM microkernel | No CLI |
@ruvector/rvf-node |
0.1.7 | RVF Node.js bindings | No CLI |
@ruvector/rvf-mcp-server |
0.1.3 | RVF MCP server | No CLI |
@ruvector/ruvllm |
2.5.1 | LLM orchestration + SONA + HNSW | Separate CLI (npx ruvllm) |
@ruvector/ruvllm-cli |
0.1.0 | LLM inference CLI | Separate binary |
@ruvector/ruvllm-wasm |
0.1.0 | WASM LLM inference | No CLI |
@ruvector/graph-node |
2.0.2 | Native hypergraph bindings | No CLI |
@ruvector/graph-wasm |
2.0.2 | Neo4j-compatible hypergraph WASM | No CLI |
@ruvector/graph-data-generator |
0.1.0 | Synthetic graph data generation | No CLI |
@ruvector/ruqu-wasm |
2.0.5 | Quantum simulations | No CLI |
@ruvector/spiking-neural |
1.0.1 | Spiking neural networks (SIMD) | No CLI |
@ruvector/ospipe |
0.1.2 | Personal AI memory | No CLI |
@ruvector/ospipe-wasm |
0.1.0 | Personal AI memory WASM | No CLI |
@ruvector/rvdna |
0.3.0 | Genomic analysis (20-SNP biomarker) | No CLI |
@ruvector/scipix |
0.1.0 | OCR for scientific documents | No CLI |
@ruvector/tiny-dancer |
0.1.17 | Neural router (FastGRNN) | No CLI |
@ruvector/router |
0.1.28 | Semantic router for AI agents | No CLI |
@ruvector/ruvbot |
0.3.1 | Self-learning AI assistant | Separate CLI |
@ruvector/rvlite |
0.2.4 | Lightweight DB (SQL/SPARQL/Cypher) | No CLI |
@ruvector/agentic-integration |
1.0.0 | Distributed agent coordination | No CLI |
@ruvector/agentic-synth |
0.1.6 | Synthetic data generator | Has own CLI |
@ruvector/burst-scaling |
1.0.0 | Adaptive burst scaling | No CLI |
@ruvector/cognitum-gate-wasm |
0.1.0 | AI coherence gate | No CLI |
@ruvector/raft |
0.1.0 | Raft consensus | No CLI |
@ruvector/replication |
0.1.0 | Data replication & sync | No CLI |
@ruvector/postgres-cli |
0.2.7 | PostgreSQL pgvector CLI | Separate CLI |
@ruvector/ruvector-extensions |
0.1.0 | Embeddings, UI, exports, temporal | No CLI |
@ruvector/ruvector-wasm-unified |
1.0.0 | Unified TypeScript WASM API | No CLI |
31 packages with no CLI integration.
| WASM Crate | Version | Capability | npm Package |
|---|---|---|---|
ruvector-attention-unified-wasm |
0.1.0 | Unified attention (46 mechanisms) | Missing |
ruvector-attention-wasm |
— | Attention WASM bindings | Partial (@ruvector/attention) |
ruvector-dag-wasm |
0.1.0 | DAG operations | Missing |
ruvector-delta-wasm |
0.1.0 | Delta consensus/behavior tracking | Missing |
ruvector-domain-expansion-wasm |
0.1.0 | Transfer learning, domain expansion | Missing |
ruvector-economy-wasm |
0.1.0 | Economic engine (reputation, AMM) | Missing |
ruvector-exotic-wasm |
— | Exotic neural architectures | Missing |
ruvector-fpga-transformer-wasm |
0.1.0 | FPGA-optimized transformers | Missing |
ruvector-gnn-wasm |
— | GNN WASM bindings | Partial (@ruvector/gnn) |
ruvector-graph-transformer-wasm |
— | Graph transformer | Missing |
ruvector-hyperbolic-hnsw-wasm |
0.1.0 | Hyperbolic HNSW search | Missing |
ruvector-learning-wasm |
0.1.0 | Online learning | Missing |
ruvector-math-wasm |
— | Math primitives | Missing |
ruvector-mincut-gated-transformer |
0.1.0 | MinCut-gated transformer | Missing |
ruvector-mincut-wasm |
— | MinCut graph partitioning | Missing |
ruvector-nervous-system-wasm |
0.1.0 | Nervous system architecture | Missing |
ruvector-sparse-inference-wasm |
— | Sparse inference engine | Missing |
ruvector-temporal-tensor-wasm |
— | Temporal tensor operations | Missing |
18 WASM crates with no npm package.
| Crate | Capability | Why It Matters |
|---|---|---|
mcp-brain |
MCP stdio server for shared brain | Core brain MCP — only accessible via cargo run |
mcp-brain-server |
Cloud Run REST backend | Server-side only |
mcp-gate |
MCP coherence gate | Core MCP — only via cargo run |
cognitum-gate-kernel |
AI coherence gate kernel | Core reasoning engine |
cognitum-gate-tilezero |
TileZero game engine | Specialized |
prime-radiant |
Prime Radiant visualization | Specialized |
ruvector-delta-core |
Delta behavior tracking | Core capability, no JS access |
ruvector-delta-runtime |
Delta runtime | Runtime only |
ruvector-delta-serde |
Delta serialization | Utility |
ruvector-domain-expansion |
Transfer learning engine | Core brain capability |
ruvector-mincut |
SubpolynomialMinCut partitioning | Core graph capability |
ruvector-attention |
46 attention mechanisms | Partially exposed via @ruvector/attention |
sona |
SONA learning engine | Partially exposed via @ruvector/sona |
rvf-federation |
Federated learning (PII strip, DP) | Core brain pipeline |
rvf-crypto |
Witness chains, Ed25519, SHAKE-256 | Core security |
agentic-robotics-* (6 crates) |
Autonomous robotics | Entire subsystem missing |
thermorust |
Thermal/energy modeling | Specialized |
ruvector-dither |
Dithering algorithms | Specialized |
ruvector-profiler |
Performance profiler | Dev tool (publish=false) |
19+ crates with no JavaScript access at all.
Users currently face 7+ separate CLI binaries:
| Binary | Package | Install |
|---|---|---|
ruvector |
ruvector |
npx ruvector |
pi-brain / π |
@ruvector/pi-brain |
npx pi-brain |
ruvllm |
@ruvector/ruvllm-cli |
npx ruvllm |
ruvbot |
@ruvector/ruvbot |
npx ruvbot |
agentic-synth |
@ruvector/agentic-synth |
npx agentic-synth |
rvf |
@ruvector/rvf |
npx rvf |
postgres-cli |
@ruvector/postgres-cli |
npx @ruvector/postgres-cli |
Each has its own install, auth, and configuration. There is no single npx ruvector <anything> that reaches them all.
Extend npx ruvector to be the universal entry point for the entire ecosystem. Every capability — whether it's a Rust crate, WASM binding, or npm package — should be reachable through npx ruvector <group> <command>. Missing npm packages for WASM crates should be published. Fragmented CLIs should be consolidated.
npx ruvector
│
├── [EXISTING] Vector Database
│ ├── create Create vector database
│ ├── insert Insert vectors
│ ├── search ANN search with filters
│ ├── stats Database statistics
│ ├── benchmark Performance benchmarks
│ ├── info System info
│ ├── install Install optional packages
│ └── doctor Health check
│
├── [EXISTING] GNN
│ ├── gnn layer Create/test GNN layers
│ ├── gnn compress Adaptive tensor compression
│ ├── gnn search Differentiable search
│ └── gnn info Module info
│
├── [EXISTING] Attention
│ ├── attention compute 5 attention mechanisms
│ ├── attention benchmark Benchmark all types
│ ├── attention hyperbolic Hyperbolic geometry
│ ├── attention list List mechanisms
│ └── attention info Module details
│
├── [ADR-070] Brain (lazy: @ruvector/pi-brain)
│ ├── brain share Share knowledge
│ ├── brain search Semantic search
│ ├── brain get Retrieve by ID
│ ├── brain vote Quality vote
│ ├── brain list List memories
│ ├── brain delete Delete own
│ ├── brain transfer Domain transfer
│ ├── brain drift Drift detection
│ ├── brain partition Knowledge topology
│ ├── brain status System health
│ ├── brain sync LoRA weight sync
│ └── brain page Brainpedia CRUD
│
├── [ADR-070] Edge (lazy: @ruvector/edge-net)
│ ├── edge status Network status
│ ├── edge join Join as compute node
│ ├── edge balance rUv balance
│ ├── edge tasks Available compute tasks
│ └── edge dashboard Open dashboard
│
├── [ADR-070] MCP
│ ├── mcp start Start MCP server (stdio/SSE)
│ ├── mcp tools List available tools
│ └── mcp test Test connection
│
├── [ADR-070] Identity
│ ├── identity generate Generate π key
│ ├── identity show Display pseudonym
│ ├── identity export Encrypted backup
│ └── identity import Restore from backup
│
├── [NEW] LLM (lazy: @ruvector/ruvllm)
│ ├── llm chat Interactive chat
│ ├── llm embed Generate embeddings
│ ├── llm complete Text completion
│ ├── llm models List available models
│ ├── llm benchmark Inference benchmark
│ └── llm serve Start LLM server
│
├── [NEW] RVF (lazy: @ruvector/rvf)
│ ├── rvf read Read .rvf container
│ ├── rvf write Create .rvf container
│ ├── rvf validate Validate integrity
│ ├── rvf inspect Show segment layout
│ ├── rvf merge Merge containers
│ └── rvf convert Format conversions
│
├── [NEW] Graph (lazy: @ruvector/graph-wasm)
│ ├── graph create Create hypergraph
│ ├── graph query Cypher/SPARQL query
│ ├── graph import Import from CSV/JSON/Neo4j
│ ├── graph export Export to various formats
│ ├── graph visualize Text-based visualization
│ └── graph stats Graph statistics
│
├── [NEW] SONA (lazy: @ruvector/sona)
│ ├── sona train Train with trajectory
│ ├── sona patterns Search learned patterns
│ ├── sona optimize Run optimization
│ ├── sona export Export learned weights
│ └── sona stats Learning statistics
│
├── [NEW] Router (lazy: @ruvector/router)
│ ├── router classify Classify input to route
│ ├── router train Train router on examples
│ ├── router serve Start router server
│ └── router benchmark Route throughput test
│
├── [NEW] Quantum (lazy: @ruvector/ruqu-wasm)
│ ├── quantum sim Run quantum simulation
│ ├── quantum circuit Build quantum circuit
│ └── quantum stats Simulation statistics
│
├── [NEW] SNN (lazy: @ruvector/spiking-neural)
│ ├── snn train Train spiking network
│ ├── snn inference Run inference
│ └── snn benchmark SIMD performance test
│
├── [NEW] Delta (lazy: @ruvector/delta-wasm — TO PUBLISH)
│ ├── delta track Track behavior changes
│ ├── delta compare Compare two snapshots
│ └── delta report Drift report
│
├── [NEW] MinCut (lazy: @ruvector/mincut-wasm — TO PUBLISH)
│ ├── mincut partition Partition graph
│ ├── mincut certificate Verify cut certificate
│ └── mincut visualize Text visualization
│
├── [NEW] Synth (lazy: @ruvector/agentic-synth)
│ ├── synth generate Generate synthetic data
│ ├── synth validate Validate generated data
│ └── synth config Configure generators
│
├── [NEW] DNA (lazy: @ruvector/rvdna)
│ ├── dna analyze Analyze genomic data
│ ├── dna biomarker 20-SNP biomarker panel
│ └── dna report Generate report
│
├── [NEW] OCR (lazy: @ruvector/scipix)
│ ├── ocr extract Extract text from images
│ ├── ocr table Extract tables
│ └── ocr equations Extract equations
│
├── [NEW] DB (lazy: @ruvector/rvlite)
│ ├── db query SQL/SPARQL/Cypher query
│ ├── db import Import data
│ └── db export Export data
│
└── [NEW] Postgres (lazy: @ruvector/postgres-cli)
├── pg connect Connect to PostgreSQL
├── pg vector pgvector operations
└── pg migrate Schema migrations
Total: ~100+ commands across 20+ groups (up from 17 commands across 4 groups).
| WASM Crate | Proposed npm Package | Why |
|---|---|---|
ruvector-delta-wasm |
@ruvector/delta-wasm |
Brain drift detection via npx ruvector delta |
ruvector-mincut-wasm |
@ruvector/mincut-wasm |
Brain knowledge partitioning |
ruvector-domain-expansion-wasm |
@ruvector/domain-expansion-wasm |
Brain transfer learning |
ruvector-economy-wasm |
@ruvector/economy-wasm |
Edge-net economics (AMM, reputation) |
ruvector-learning-wasm |
@ruvector/learning-wasm |
Online learning for edge nodes |
edge-net (examples/) |
@ruvector/edge-net |
Edge-net WASM for npx ruvector edge |
| WASM Crate | Proposed npm Package | Why |
|---|---|---|
ruvector-attention-unified-wasm |
@ruvector/attention-unified-wasm |
All 46 attention mechanisms |
ruvector-hyperbolic-hnsw-wasm |
@ruvector/hyperbolic-hnsw-wasm |
Hyperbolic space search |
ruvector-nervous-system-wasm |
@ruvector/nervous-system-wasm |
Full nervous system architecture |
ruvector-fpga-transformer-wasm |
@ruvector/fpga-transformer-wasm |
FPGA-optimized inference |
ruvector-sparse-inference-wasm |
@ruvector/sparse-inference-wasm |
Sparse model inference |
ruvector-graph-transformer-wasm |
@ruvector/graph-transformer-wasm |
Graph transformers |
| WASM Crate | Proposed npm Package | Why |
|---|---|---|
ruvector-dag-wasm |
@ruvector/dag-wasm |
DAG operations |
ruvector-math-wasm |
@ruvector/math-wasm |
Math primitives |
ruvector-temporal-tensor-wasm |
@ruvector/temporal-tensor-wasm |
Temporal operations |
ruvector-exotic-wasm |
@ruvector/exotic-wasm |
Exotic neural architectures |
ruvector-mincut-gated-transformer |
@ruvector/mincut-gated-wasm |
MinCut-gated attention |
| Package | Version | Notes |
|---|---|---|
@ruvector/ruvllm |
2.5.1 | Self-learning LLM orchestration |
@ruvector/graph-node |
2.0.2 | Native hypergraph (NAPI) |
@ruvector/graph-wasm |
2.0.2 | WASM hypergraph |
@ruvector/ruqu-wasm |
2.0.5 | Quantum simulations |
@ruvector/ruvllm-wasm |
2.0.0 | WASM LLM |
micro-hnsw-wasm |
2.3.2 | HNSW core |
| Package | Version | Notes |
|---|---|---|
@ruvector/agentic-integration |
1.0.0 | Agent coordination |
@ruvector/burst-scaling |
1.0.0 | Adaptive scaling |
@ruvector/spiking-neural |
1.0.1 | SNN with SIMD |
@ruvector/ruvector-wasm-unified |
1.0.0 | Unified WASM API |
66 packages at v0.1.x-0.3.x, including the core ruvector CLI at v0.1.100.
The core ruvector package should target v0.2.0 for the unified CLI expansion (ADR-070 commands), and v1.0.0 when all Priority 1 packages are published and integrated.
Goal: Bring existing npm packages into npx ruvector via lazy loading.
| Task | Effort | Packages |
|---|---|---|
Add brain commands |
3 days | @ruvector/pi-brain |
Add llm commands |
2 days | @ruvector/ruvllm |
Add rvf commands |
2 days | @ruvector/rvf |
Add graph commands |
2 days | @ruvector/graph-wasm |
Add sona commands |
1 day | @ruvector/sona |
Add router commands |
1 day | @ruvector/router |
Add quantum commands |
1 day | @ruvector/ruqu-wasm |
Add snn commands |
1 day | @ruvector/spiking-neural |
Add synth commands |
1 day | @ruvector/agentic-synth |
Add db commands |
1 day | @ruvector/rvlite |
Add pg commands |
1 day | @ruvector/postgres-cli |
Goal: Build and publish Priority 1 WASM crates to npm.
| Task | Effort | Crate → Package |
|---|---|---|
| Build + publish delta-wasm | 2 days | ruvector-delta-wasm → @ruvector/delta-wasm |
| Build + publish mincut-wasm | 2 days | ruvector-mincut-wasm → @ruvector/mincut-wasm |
| Build + publish domain-expansion-wasm | 2 days | ruvector-domain-expansion-wasm → @ruvector/domain-expansion-wasm |
| Build + publish economy-wasm | 2 days | ruvector-economy-wasm → @ruvector/economy-wasm |
| Build + publish learning-wasm | 2 days | ruvector-learning-wasm → @ruvector/learning-wasm |
| Build + publish edge-net WASM | 3 days | edge-net → @ruvector/edge-net |
Add delta, mincut, edge CLI groups |
3 days | CLI integration |
Add identity commands |
2 days | Pi-Key management |
Add mcp commands |
2 days | MCP server lifecycle |
Goal: Build and publish Priority 2 WASM crates.
6 WASM packages to build with wasm-pack and publish.
| Task | Effort |
|---|---|
npx ruvector help — comprehensive help with all groups |
1 day |
npx ruvector list — list installed vs available packages |
1 day |
npx ruvector upgrade — upgrade all @ruvector packages |
1 day |
| JSON output mode for all commands | 1 day |
| Pipe detection (auto-JSON when not TTY) | 0.5 day |
| Bump to v0.2.0, update README | 0.5 day |
ruvector (core)
├── @ruvector/core (HNSW vector DB)
├── @ruvector/gnn (GNN layers)
├── @ruvector/attention (attention mechanisms)
├── @ruvector/sona (SONA learning)
├── commander, chalk, ora (CLI utilities)
└── @modelcontextprotocol/sdk (MCP protocol)
@ruvector/pi-brain → brain commands
@ruvector/edge-net → edge commands
@ruvector/ruvllm → llm commands
@ruvector/rvf → rvf commands
@ruvector/graph-wasm → graph commands
@ruvector/ruqu-wasm → quantum commands
@ruvector/spiking-neural → snn commands
@ruvector/router → router commands
@ruvector/delta-wasm → delta commands
@ruvector/mincut-wasm → mincut commands
@ruvector/agentic-synth → synth commands
@ruvector/rvdna → dna commands
@ruvector/scipix → ocr commands
@ruvector/rvlite → db commands
@ruvector/postgres-cli → pg commands
async function requirePackage(name: string): Promise<any> {
try {
return await import(name);
} catch {
console.error(chalk.red(`${name} is not installed.`));
console.error(chalk.yellow(` npm install ${name}`));
console.error(chalk.dim(` or: npx ruvector install ${name}`));
process.exit(1);
}
}Each command group registers itself but defers the import() until the command is actually invoked. This keeps npx ruvector startup fast (~200ms) regardless of how many optional packages are installed.
| Category | Available | In CLI | Gap |
|---|---|---|---|
| npm packages | 79 | 4 bundled | 75 packages not in CLI |
| WASM crates | 27 | 2 via npm | 18 without npm packages |
| Rust-only crates | 19+ | 0 | 19+ with no JS access |
| CLI entry points | 7 separate | 1 unified | 6 fragmented CLIs |
| Commands | ~100 possible | 17 | ~83 missing commands |
- No brain access from CLI — The shared intelligence at pi.ruv.io has no CLI path (ADR-070 proposed, not implemented)
- No edge network CLI — Edge-net compute network unreachable from Node.js CLI
- No LLM commands — ruvllm (v2.5.1, the most mature package) is a separate CLI
- No RVF commands — The core file format has no CLI tooling
- No graph commands — Hypergraph engine (v2.0.2) invisible to CLI users
- No identity management — Pi-Key generation/management only in Rust
- 18 WASM crates unpublished — Significant WASM capabilities not accessible from JavaScript
- No unified discovery — Users can't discover available capabilities from the CLI
-
npx ruvectorlists all available command groups -
npx ruvector brain search "auth"works (ADR-070) -
npx ruvector llm chatworks (ruvllm integration) -
npx ruvector rvf inspect file.rvfworks -
npx ruvector graph query "MATCH (n) RETURN n"works -
npx ruvector edge statusworks (ADR-070) -
npx ruvector identity generateworks (ADR-070) - All 18 missing WASM crates published to npm
-
npx ruvector installshows all optional packages with install status - JSON output via
--jsonflag on all commands - Version bumped to 0.2.0 with full command hierarchy
| ADR | Relationship |
|---|---|
| ADR-065 | npm Publishing Strategy — tier-based publish order, semver, TypeScript requirements |
| ADR-070 | npx ruvector Unified Integration — brain, edge, mcp, identity commands (subset of this ADR) |
| ADR-069 | Edge-Net Integration — edge-net + brain distributed compute |
| ADR-059 | Shared Brain Google Cloud — backend that brain commands call |
| ADR-066 | SSE MCP Transport — MCP protocol for mcp commands |