Dual knowledge-graph RAG for Markdown notes with half-life memory decay: prerequisite + similarity graphs (P/S-Agent traversal), paragraph chunking, n-gram/embedding hybrid search, and an explicit weight-feedback loop — a native Cordis plugin, npm-installable as @eqman00003/knowlp-rag.
Install
# from npm (prebuilt)
dsh plugin --profile web add @eqman00003/knowlp-rag
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:wly8691-jpg/knowlp-rag
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
type: KnowLP文档 文档状态: 引擎 日期: "2026-08-29" 说明: 引擎 README(v3.0.8 仓库版,dsh 优先)
KnowLP-RAG
Agent-first knowledge retrieval — turn your Markdown notes into a self-maintaining knowledge graph that is "use it or lose it". Agents (DSH / Claude Code) install, build the graph, and self-check it; only the vault path must be provided by the human. Retrieval returns reading paths: which notes to read, in what order, and which are similar substitutes.
Quick start (3 steps)
All three steps are agent-runnable; only KNOWLP_VAULT (your notes directory) must be provided by the human.
# 1. Install (official npm registry)
dsh plugin add "@eqman00003/knowlp-rag"
# 2. Set the two required env vars (without them the dual-graph engine idles and only full-text search works)
export KNOWLP_VAULT="$HOME/Notes" # your Markdown notes directory
export KNOWLP_GRAPH_DIR="$HOME/.knowlp-dsh" # writable index directory
# 3. Restart dsh web — the first search triggers Python env bootstrap (~30s, don't interrupt)
Six tools
| Tool | Purpose |
|---|---|
knowlp_search |
Four-engine fan-out retrieval (dual-graph P/S-Agent + vector + full-text) |
knowlp_get_note |
Read note content (read-only, path-traversal safe) |
knowlp_stats |
Engine/graph health self-check (first stop for troubleshooting) |
knowlp_record_feedback |
Explicit feedback (the only entry point of the weight loop) |
knowlp_record_correction |
Explicit preference pairs (chosen ≻ rejected) — the input to preference learning |
skill_search |
Skill index retrieval |
PixelRAG (optional cross-machine visual retrieval)
PixelRAG is an optional visual-retrieval engine — it embeds visual content for retrieval instead of relying on text tokens alone. It runs on a separate GPU machine on your network: the agent offloads the visual-embedding work to that box over Tailscale rather than computing it on the laptop. Retrieval falls back through three tiers:
- desktop GPU — the primary dedicated box (an RTX-class machine reachable over Tailscale)
- local — a same-machine fallback
- cloud API — a hosted PixelRAG endpoint
Configure it via KNOWLP_PIXELRAG_DESKTOP / pixelrag_local. Unconfigured, it stays off — retrieval still works in n-gram / embedding mode.
Reproducing this: it is deployment-specific — you need your own GPU machine running a PixelRAG service, a network path to it (e.g. Tailscale), and its endpoint address. No bundled service ships with KnowLP.
Documentation
- Install & usage guide: docs/usage.md
- Troubleshooting: docs/troubleshooting.md
- dsh integration details (env vars / Cordis plugin): dsh/README.md
Why KnowLP?
Grep for "RAG architecture" gives you 105 files. KnowLP gives you 3 ranked hits with dependency context.
grep |
Naive vector store | KnowLP | |
|---|---|---|---|
| Result ranking | ❌ | ✅ | ✅ |
| Dependency chain (P-Agent) | ❌ | ❌ | ✅ |
| Similar substitutes (S-Agent) | ❌ | ❌ | ✅ |
| Works without GPU | ✅ | ❌ | ✅ (n-gram mode) |
| Improves with use (feedback) | ❌ | ❌ | ✅ (weight loop) |
| Paragraph-level matching | ❌ | ❌ | ✅ |
| Decay & forgetting (use it or lose it) | ❌ | ❌ | ✅ (three half-life tiers) |
The difference: vector search finds documents that "contain keywords"; KnowLP finds documents you should read given your query, with reading paths. Edge weights between notes evolve with usage — consumed edges strengthen, unused edges decay by half-life (ephemeral 1 day / default 30 days / declarative never).
Works with Chinese note vaults out of the box (Chinese time-anchor queries and Chinese full-text search are supported).
Demo
$ knowlp_search "RAG architecture"
1. [HIT] RAG Architecture.md (score 0.77)
2. [LINK] Vector Database Selection.md (score 0.61) ← prerequisite chain
3. [LINK] Retrieval Eval Pitfalls.md (score 0.42)
4. [LINK] _Index-Reading Order (depth 1) ← tells you where to start reading
5. [LINK] _Index-Related Concepts.md (depth 2)
Local development
git clone https://github.com/wly8691-jpg/knowlp-rag.git
cd knowlp-rag
pip install -e . # provides knowlp-mcp / knowlp-build / knowlp-search
# configure vault in config.yaml → build graph → search
python build_graph.py
python knowlp_search.py "RAG architecture"
Links
More in this category
Tencent/WeKnora#dsh-weknora★ 30675
Four read-only tools over a WeKnora knowledge base: list knowledge bases, hybrid passage search, reassemble one document's chunks in order, and WeKnora's own cited RAG or ReAct-agent answer with a resumable session id.
superdesigndev/treg★ 3596
Tool catalog for agents: search ~2,600 external endpoints (SEO and SERP, backlinks, social, people and company enrichment, ad libraries, scraping) by the task you want done, read each one's parameters and per-call price, then call it with the credential injected server-side. Ships the skill plus an MCP row that stays disabled until TREG_TOKEN is set.
TencentCloudBase/CloudBase-AI-Toolkit#dsh-plugin★ 1126
Tencent CloudBase backend for DeepSeek Harness — scaffold and deploy full-stack apps from chat, render query results as table cards with paging, sorting and CSV export, preview a deployment on its domain, and call the CloudBase MCP toolset (`mcp__cloudbase__*`) with device-code login.
gitroomhq/postiz-agent#dsh-postiz★ 496
Connects DeepSeek Harness to Postiz over MCP: list connected social media channels, fetch per-platform posting rules, and schedule, draft, or publish posts to X, LinkedIn, Instagram, Facebook, Threads, TikTok, YouTube, Reddit, Bluesky, Mastodon, Discord, Slack, Telegram and more; adds a postiz workflow skill.
EthanYoQ/Invoice-Downloader#dsh-invoice-downloader★ 446
Local IMAP invoice download, OCR, archive, and Excel reimbursement summaries for DeepSeek Harness.
anysearch-team/anysearch-dsh★ 430
AnySearch-powered real-time web and vertical search provider for DeepSeek Harness.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.