Vector Setup
Bootstraps ruvector@0.2.25 and its optional add-ons so every /vector subcommand actually works on first run.
Why this exists
Out of the box, several /vector subcommands fail with a confusing dep error:
| Error | Missing package |
|---|
ONNX WASM files not bundled. The onnx/ directory is missing. | ruvector-onnx-embeddings-wasm |
Brain commands require @ruvector/pi-brain | @ruvector/pi-brain |
SONA not available. Native error: Cannot find module '/.../@ruvector/sona/index.js' | @ruvector/ruvllm (JS fallback) |
LLM commands require @ruvector/ruvllm | @ruvector/ruvllm |
This skill installs them in one pass.
Steps
- Pin ruvector:
npm install ruvector@0.2.25
- Install the add-ons (idempotent — only what's missing):
npm install ruvector-onnx-embeddings-wasm \
@ruvector/pi-brain \
@ruvector/ruvllm
For a leaner install, pass --full to also pull @ruvector/graph-node and @ruvector/router:
npm install ruvector-onnx-embeddings-wasm \
@ruvector/pi-brain \
@ruvector/ruvllm \
@ruvector/graph-node \
@ruvector/router
- Verify the binary:
npx -y ruvector@0.2.25 doctor
npx -y ruvector@0.2.25 info
- Register the MCP server:
claude mcp add ruvector -- npx -y ruvector@0.2.25 mcp start
claude mcp list | grep ruvector
- Sanity check the most common subcommands:
npx -y ruvector@0.2.25 hooks route "test"
npx -y ruvector@0.2.25 attention list
npx -y ruvector@0.2.25 rvf examples
- (Optional) Generate a pi identity for brain + edge:
npx -y ruvector@0.2.25 identity generate
npx -y ruvector@0.2.25 identity show
Smoke test
For a deterministic verification of the install, run the plugin's bundled smoke script:
bash plugins/ruflo-ruvector/scripts/smoke.sh
It checks: version pin, top-level subcommand visibility, hooks ast-analyze, hooks route, attention list, rvf examples, and info. Exits non-zero if any drift from the contracted surface is detected.
What this does not install
- Native Rust toolchain (optional; only needed for source builds)
- Platform-specific native bindings (auto-detected by
@ruvector/core)
@ruvector/sona native binding (the JS fallback via @ruvector/ruvllm is sufficient on macOS arm64; Linux x64 has its own native binding)
If doctor still reports a problem after this skill runs, paste its output verbatim and ask.