mcpField
V
vector-hyperbolic

vector-hyperbolic

github.com/ruvnetData & databases80.0k724 installsUpdated today
Repository

About vector-hyperbolic

vector-hyperbolic is a skill for representing hierarchical data in the Poincare ball model with ruvector. It guides embedding generation, projection, distance calculation, and storage for data such as dependency trees and taxonomies.

Key features

  1. 01Generate base embeddings with ruvector
  2. 02Project vectors into the Poincare ball
  3. 03Calculate geodesic distances
  4. 04Store projected coordinates and neighbors
  5. 05Work with hierarchical datasets

Use cases

  1. 01Explore relationships in module dependency trees
  2. 02Map class hierarchies and taxonomies
  3. 03Navigate codebases by hierarchy

MCP support

Uses a Ruflo MCP memory tool to store projected coordinates and neighbors.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/ruvnet/ruflo --skill vector-hyperbolic

After installing, type/vector-hyperbolicin Claude Code to confirm it loaded.

Details

From the project README

Vector Hyperbolic

Embed hierarchical data in the Poincare ball model using ruvector.

When to use

Use this skill when your data has inherent hierarchy — dependency trees, module structures, taxonomies, org charts, ontologies. Hyperbolic space captures hierarchical distances with far fewer dimensions than Euclidean embeddings.

Steps

  1. Ensure [email protected] is available:
    npm ls ruvector 2>/dev/null | grep '0.2.25' || npm install [email protected]
    
  2. Generate a base ONNX embedding ([email protected] does not expose a --model poincare flag on embed text):
    npx -y [email protected] embed text "hierarchical concept" -o concept.vec.json
    
  3. Project into the Poincare ball in your own code (or via the experimental neural substrate):
    npx -y [email protected] embed neural --help
    
    For an ad-hoc projection, normalize the 384-dim vector to live inside the unit ball (x_i / (||x|| * (1 + epsilon))) and persist the projected coordinates alongside the original embedding.
  4. Geodesic distance: d(u, v) = arcosh(1 + 2 * ||u-v||^2 / ((1-||u||^2)(1-||v||^2))) Distance grows logarithmically with tree depth, preserving hierarchy.
  5. Store results: mcp__plugin_ruflo-core_ruflo__memory_store({ key: "hyperbolic-CONCEPT", value: "COORDINATES_AND_NEIGHBORS", namespace: "hyperbolic-embeddings" })

Caveats

  • [email protected] has no first-class Poincare ball CLI flag. Treat hyperbolic projection as a post-processing step over a standard ONNX embedding.
  • If you need a hyperbolic search index, store projected coordinates in AgentDB and compute geodesic distance in your own retrieval code.

Poincare ball properties

PropertyMeaning
Norm close to 0Generic, root-level concept
Norm close to 1Specific, leaf-level concept
Small geodesic distanceClosely related in hierarchy
Large geodesic distanceDistant or different subtrees

Use cases

  • Dependency analysis: embed module imports to find tightly coupled subtrees
  • Code architecture: map class hierarchies to discover structural patterns
  • Knowledge organization: embed concepts to reveal taxonomic relationships
  • Codebase navigation: find most specific/general modules relative to a query

Comments

Markdown supported