dsh-plugin-verified-search
f0909172434
Verified current-source search workflow for DeepSeek Harness
PROJECT TOPICS
PROJECT README
A workspace-scoped, local-first LLM Wiki plugin for DeepSeek Harness. It imports text from the active Harness workspace, builds a disposable local search index, and gives the main agent explicit tools to search and maintain sourced Wiki pages.
exec.agent.session.header.cwd.[[wikilink]] graph signals with reciprocal-rank fusion.^22.19.0 or >=24.0.00.1.0-rc.6 or a compatible releaseInstall the plugin into a Harness profile:
dsh plugin --profile headless add github:wangning19940904/dsh-llm-wiki
The repository ships TypeScript source and uses prepare to produce dist/ during a GitHub install. pnpm blocks unreviewed dependency build scripts. If installation reports that the plugin build was ignored, review it and add this entry to the profile's pnpm-workspace.yaml before installing again:
allowBuilds:
dsh-llm-wiki: true
The bundle patch mounts dsh-llm-wiki and defaults dataRoot to dshHomePath('llm-wiki').
llm_wiki_search searches existing knowledge before the agent answers.llm_wiki_import copies relative .md, .markdown, and .txt files from the current workspace into raw/docs.llm_wiki_ingest updates the derived index. New or changed sources attach a logged maintenance notice for the agent.llm_wiki_read and writes sourced pages under wiki/sources, wiki/entities, or wiki/concepts with llm_wiki_write.llm_wiki_graph explores entities, mentioning pages, relations, and paths up to three hops.Search results include plugin-relative paths, source line ranges, excerpts, the fused score, and each signal's contribution. A successful write is indexed immediately.
Each canonical workspace gets a separate directory:
<dataRoot>/workspaces/<workspace-id>/
├── workspace.json
├── purpose.md
├── schema.md
├── raw/docs/
├── wiki/
│ ├── index.md
│ ├── log.md
│ ├── sources/
│ ├── entities/
│ └── concepts/
└── .index/
raw/docs and wiki are durable knowledge. .index only contains derived PGlite data and is safe to remove; the next full llm_wiki_ingest rebuilds it.
The included patch supplies all defaults:
- insert:
- id: llm-wiki
name: dsh-llm-wiki
config:
dataRoot: !!js dshHomePath('llm-wiki')
chunkSizeChars: 1600
chunkOverlapChars: 200
embeddingDimensions: 384
importMaxFiles: 50
importMaxBytesPerFile: 2000000
readMaxBytes: 100000
searchDefaultLimit: 8
searchMaxLimit: 20
rrfK: 60
vectorWeight: 1
keywordWeight: 1
graphWeight: 0.6
maintenanceBatchSize: 5
Invalid integer bounds, negative or non-finite weights, an overlap greater than or equal to the chunk size, and a default search limit greater than its maximum stop plugin activation.
WIKI_WORKSPACE_REQUIRED.raw/docs and wiki and bounded by readMaxBytes.wiki. Creating a page needs no digest; replacing a page requires the latest digest returned by llm_wiki_read. Missing and stale observations return WIKI_NOT_OBSERVED and WIKI_STALE.This release intentionally has no Web UI, MCP server, trace system, background model task, PDF/image conversion, standalone CLI, or npm publication. It supports local UTF-8 Markdown and text files only. Feature-hashing embeddings favor predictable offline behavior over semantic quality from a neural embedding model.
pnpm install
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm pack
pnpm verify:package
verify:package packs the project, installs the tarball into a temporary Harness profile, and confirms that --dump-config contains the mounted plugin.
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。