dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
ChromaDB Vector + BM25 Hybrid MemoryProvider Plugin for Hermes Agent
Multilingual Semantic Search · RRF Fusion · A-Res Weighted Sampling · Context Chunk Stitching · Zero-Lag Incremental Cache
🇨🇳 中文说明 | 🇺🇸 English
Two implementations live in this repo — pick by platform. This page documents the Hermes (Python) implementation (
mihaji/, default fp32 PyTorch embeddings). DSH users should use the sibling DSH bundle (dsh-mihaji/, default INT8 q8 ONNX quantized embeddings, ~113MB file / ~450MB in-process, ≥0.992 agreement with fp32): see dsh-mihaji/README.md. Architecture & port decisions:docs/dsh-port-design.md.
chunk_idx ± 1) are seamlessly stitched together, avoiding fragmented sentences.bm25_cache.json. New memories are incrementally appended without blocking user interactions.mihaji_memory tool: remember, search, delete, and count.maintenance.py script: noise filtering, cross-bucket Jaccard deduplication, and JSON backups.flowchart TB
subgraph AgentLoop ["🤖 Hermes Agent Loop"]
direction TB
UserMsg["👤 User Message"]
subgraph Retrieval ["🔍 Retrieval & Prompt Injection"]
Prefetch["⚡ prefetch(query)"]
Hybrid["🧠 Hybrid Search (Vector + BM25)"]
RRF["⚖️ RRF Rank Fusion"]
Stitch["🧵 Context Stitching (chunk ± 1)"]
PromptBlock["📋 System Prompt Injection"]
end
Assistant["✨ LLM Response"]
subgraph Memorization ["💾 Storage Phase"]
SyncTurn["📥 sync_turn() hook"]
Chunker["✂️ 300-char chunking (50 overlap)"]
DB[("🗄️ ChromaDB Vector Store")]
BM25Cache["⚡ Incremental BM25 & Disk Cache"]
end
UserMsg -->|"before turn"| Prefetch
Prefetch --> Hybrid --> RRF --> Stitch --> PromptBlock
PromptBlock --> Assistant
Assistant -->|"after turn"| SyncTurn
SyncTurn --> Chunker --> DB & BM25Cache
end
mihaji_memory)| Action | Description | Parameters | Use Case |
|---|---|---|---|
search | Search memory | query, limit (default 5) | "Find notes about mango sticky rice" |
remember | Store important facts | text, strength (1-100), memory_type, tags | "Remember user moved to Shanghai" |
delete | Delete outdated memories | query, doc_id, or group_id | "Remove memory about old address" |
count | Count stored chunks | none | Check total memory items |
git clone https://github.com/Miyamiz39/mihaji-memory.git
cd mihaji-memory
ln -s $(pwd)/mihaji ~/.hermes/plugins/mihaji
uv pip install -r requirements.txt --python ~/.hermes/hermes-agent/venv/bin/python3
memory:
provider: mihaji
[!NOTE] About the Embedding Model: Mihaji Memory standardizes on
paraphrase-multilingual-MiniLM-L12-v2(supporting 50+ languages with balanced semantic recall). Model inference is hosted directly in Python for 100% offline local execution, featuring background warmup for a seamless out-of-the-box experience.
Restart Hermes and verify:
hermes memory status
Built with ❤️ by Miyamiz39 & Hina (Beijing, 2026). Licensed under the MIT License.