memory-fabric
Memory retrieval internals: knowledge graph orchestration with entity extraction, natural language query parsing, deduplication (>85% similarity), and cross-reference boosting over unified recency, relevance, and authority ranking. Use when designing or debugging how memory search itself works. Everyday lookups belong to memory; entry storage to remember; consolidation to dream.
How do I install this agent skill?
npx skills add https://github.com/yonatangross/orchestkit --skill memory-fabricIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The memory-fabric skill is a graph orchestration tool designed to enhance memory retrieval through entity extraction and similarity-based ranking. It uses trusted dependencies from Anthropic and contains standard logic for deduplication and cross-reference boosting. The analysis identified a standard surface for indirect prompt injection, common in skills that process external data, but found no malicious intent or obfuscation.
- Socketwarn
1 alert: gptAnomaly
- Snykpass
Risk: LOW · No issues
- Runlayerwarn
2/7 files flagged
What does this agent skill do?
Memory Fabric - Graph Orchestration
Knowledge graph orchestration via mcp__memory__* for entity extraction, query parsing, deduplication, and cross-reference boosting.
Overview
- Comprehensive memory retrieval from the knowledge graph
- Cross-referencing entities within graph storage
- Ensuring no relevant memories are missed
- Building unified context from graph queries
Architecture Overview
Memory Fabric Layer
┌─────────────┐ ┌──────────────┐
│Query Parser │ │Query Executor│
└──────┬──────┘ └──────┬───────┘
└───────┬───────┘
┌──────────────┴─────────────┐
│Graph Query Dispatch │
└──────────────┬─────────────┘
┌──────────────┴─────────────┐
│mcp__memory__* │
│(Knowledge Graph) │
└──────────────┬─────────────┘
┌──────────────┴─────────────┐
│Result Normalizer │
└──────────────┬─────────────┘
┌──────────────┴─────────────┐
│Deduplication Engine │
│(>85% sim) │
└──────────────┬─────────────┘
┌──────────────┴─────────────┐
│Cross-Reference Booster │
└──────────────┬─────────────┘
┌──────────────┴─────────────┐
│Final Ranking: recency × │
│relevance × source_authority│
└────────────────────────────┘
Unified Search Workflow
Step 1: Parse Query
Extract search intent and entity hints from natural language:
Input: "What pagination approach did database-engineer recommend?"
Parsed:
- query: "pagination approach recommend"
- entity_hints: ["database-engineer", "pagination"]
- intent: "decision" or "pattern"
Step 2: Execute Graph Query
Query Graph (entity search):
mcp__memory__search_nodes({
query: "pagination database-engineer"
})
Step 3: Normalize Results
Transform results to common format:
{
"id": "graph:original_id",
"text": "content text",
"source": "graph",
"timestamp": "ISO8601",
"relevance": 0.0-1.0,
"entities": ["entity1", "entity2"],
"metadata": {}
}
Step 4: Deduplicate (>85% Similarity)
When two results have >85% text similarity:
- Keep the one with higher relevance score
- Merge metadata
- Mark as "cross-validated" for authority boost
Step 5: Cross-Reference Boost
If a result mentions an entity that exists elsewhere in the graph:
- Boost relevance score by 1.2x
- Add graph relationships to result metadata
Step 6: Final Ranking
Score = recency_factor × relevance × source_authority
| Factor | Weight | Description |
|---|---|---|
| recency | 0.3 | Newer memories rank higher |
| relevance | 0.5 | Semantic match quality |
| source_authority | 0.2 | Graph entities boost, cross-validated boost |
Result Format
{
"query": "original query",
"total_results": 4,
"sources": {
"graph": 4
},
"results": [
{
"id": "graph:cursor-pagination",
"text": "Use cursor-based pagination for scalability",
"score": 0.92,
"source": "graph",
"timestamp": "2026-01-15T10:00:00Z",
"entities": ["cursor-pagination", "database-engineer"],
"graph_relations": [
{ "from": "database-engineer", "relation": "recommends", "to": "cursor-pagination" }
]
}
]
}
Entity Extraction
Memory Fabric extracts entities from natural language for graph storage:
Input: "database-engineer uses pgvector for RAG applications"
Extracted:
- Entities:
- { name: "database-engineer", type: "agent" }
- { name: "pgvector", type: "technology" }
- { name: "RAG", type: "pattern" }
- Relations:
- { from: "database-engineer", relation: "uses", to: "pgvector" }
- { from: "pgvector", relation: "used_for", to: "RAG" }
Load Read("references/entity-extraction.md") for detailed extraction patterns.
Graph Relationship Traversal
Memory Fabric supports multi-hop graph traversal for complex relationship queries.
Example: Multi-Hop Query
Query: "What did database-engineer recommend about pagination?"
1. Search for "database-engineer pagination"
→ Find entity: "database-engineer recommends cursor-pagination"
2. Traverse related entities (depth 2)
→ Traverse: database-engineer → recommends → cursor-pagination
→ Find: "cursor-pagination uses offset-based approach"
3. Return results with relationship context
Integration with Graph Memory
Memory Fabric uses the knowledge graph for entity relationships:
- Graph search via
mcp__memory__search_nodesfinds matching entities - Graph traversal expands context via entity relationships
- Cross-reference boosts relevance when entities match
Integration Points
With memory Skill
When memory search runs, it can optionally use Memory Fabric for unified results.
With Hooks
prompt/memory-fabric-context.sh- Inject unified context at session startstop/memory-fabric-sync.sh- Sync entities to graph at session end
Configuration
# Environment variables
MEMORY_FABRIC_DEDUP_THRESHOLD=0.85 # Similarity threshold for merging
MEMORY_FABRIC_BOOST_FACTOR=1.2 # Cross-reference boost multiplier
MEMORY_FABRIC_MAX_RESULTS=20 # Max results per source
MCP Requirements
Required: Knowledge graph MCP server:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@anthropic/memory-mcp-server"]
}
}
}
Error Handling
| Scenario | Behavior |
|---|---|
| graph unavailable | Error - graph is required |
| Query empty | Return recent memories from graph |
Related Skills
ork:memory- User-facing memory operations (search, load, sync, viz)ork:remember- User-facing memory storagecaching- Caching layer that can use fabric
Key Decisions
| Decision | Choice | Rationale |
|---|---|---|
| Dedup threshold | 85% | Balances catching duplicates vs. preserving nuance |
| Parallel queries | Always | Reduces latency, both sources are independent |
| Cross-ref boost | 1.2x | Validated info more trustworthy but not dominant |
| Ranking weights | 0.3/0.5/0.2 | Relevance most important, recency secondary |
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/yonatangross/orchestkit/memory-fabric">View memory-fabric on skillZs</a>