dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Persistent project intelligence and memory plugin for DSH: architecture analysis, cross-session context, TODOs, and optional hybrid retrieval
English · 简体中文
A persistent project intelligence and memory plugin for DSH. It analyzes the active workspace, explains the architecture, preserves decisions and development history, and restores the right context in future sessions.
Instead of making every new conversation rediscover the repository, dsh-project-brain stores structured knowledge inside the project itself and keeps getting more useful as the project evolves.
Current release: 1.4.0 — the release that makes project memory actually usable: deictic references are resolved before a memory is stored, memories can be edited / pinned / archived / deleted from the dashboard, concurrent writes no longer silently drop rows, and Core has configurable capacity with pinning. Data format stays backward-compatible with v1.3.x.v1.3.1 新特性:📦 导入导出 / 备份恢复
.project-brain.backup-/;可随时回滚到任一历史备份project_export / project_import / project_rollback_backup / project_cleanup_backupsGitHub release · DSH community showcase · MyDSH listing
AI coding sessions are usually short-lived, while real software projects are not. Important context gets scattered across conversations: why an architectural choice was made, which workaround fixed a production bug, what is currently in progress, and which files form the critical path.
dsh-project-brain turns that context into a local, workspace-scoped knowledge layer:
Active DSH Session
│ trusted live Session cwd
▼
Workspace scanner ───────► project facts and source evidence
│
├──► current DSH LLM ───► semantic architecture report
│ │ unavailable / timeout / invalid output
│ └────────────► local architecture fallback
│
├──► .project-brain/ ───► memory, TODOs, timeline, architecture
│
├──► context injector ──► next Session system prompt
│
└──► Connection RPC ────► Dashboard and TodoStripThe browser-side UI cannot choose arbitrary filesystem paths. Runtime actions are resolved by the Host against the active DSH Session.
Each workspace owns its data:
.project-brain/
├── project.json # project metadata, stack, languages, and entry points
├── architecture.json # purpose, layers, components, flows, and evidence
├── memory.jsonl # long-term structured project memories
├── todo.jsonl # project tasks and status
├── timeline.jsonl # scans, memory events, TODO events, and sessions
├── codegraph.json # optional legacy AST graph
└── cache/
└── embeddings.jsonl # optional, derived, and safe to rebuildProject data survives plugin upgrades and conversation changes. Uninstalling the plugin does not delete .project-brain/.
Memories can represent decision, requirement, architecture, change, bug, lesson, issue, or context.
Every new V2 memory includes importance, confidence, lifecycle status, source, timestamps, optional tags, and related files. Archived, superseded, and deleted memories are excluded from normal retrieval, automatic prompt injection, status counts, and the Dashboard.
The plugin writes memories through three paths:
project_memory_add.The Organize Memory action first previews merge and archive candidates. It only writes changes after confirmation.
Session extraction is configurable with sessionSemanticMemoryEnabled, sessionSemanticMaxChars, sessionSemanticMaxItems, and sessionSemanticTimeoutMs. Disable it to keep Session summarization Git-only.
The default local retriever uses BM25 over titles, content, tags, related files, and types. Ranking also considers importance, confidence, recency, stable memory types, and result diversity.
Optional hybrid retrieval combines keyword and vector scores. Enable it in the plugin settings:
retrievalMode: hybrid
vectorEnabled: true
embeddingBaseURL: https://your-provider.example/v1
embeddingModel: your-embedding-model
embeddingApiKeyEnv: PROJECT_BRAIN_EMBEDDING_API_KEYEmbedding indexes are updated lazily by content hash. Missing credentials, network errors, invalid vectors, or dimension mismatches automatically fall back to local keyword retrieval.
Enabling a remote embedding service sends memory titles, content, tags, and related file names to that service. Use a local model or a trusted provider for confidential repositories.
Initialization and rescans first collect deterministic local facts. When the current DSH Session has an available model route, the plugin sends bounded project evidence—README content, manifests, relative paths, symbols/imports, and selected source excerpts—to generate a conceptual architecture report.
Safety and reliability controls include:
Set architectureLlmIncludeSource: false to send structure only, or architectureLlmEnabled: false for fully local analysis.
Install the tagged public beta into the DSH profile you use:
dsh plugin --profile web add github:yj-liuzepeng/dsh-project-brain#v0.7.0-beta.2For example, use --profile web with dsh web, or --profile desktop when your Desktop distribution runs that profile. Restart the active DSH process after installation or upgrade; for DSH Desktop, quit and reopen the application completely. The package contains prebuilt Host and Client bundles, so users do not need Node.js or a local build.
project_* tools, persistent memory, context injection, TODOs, and architecture analysis to a compatible DSH profile.platform: web). They work in DSH Web and in Desktop distributions that host the DSH Web client.For source development, Node.js 22.19+ or 24+ is required:
git clone https://github.com/yj-liuzepeng/dsh-project-brain.git
cd dsh-project-brain
npm install
npm test
npm run build
npm run verify:release
npm run verify:installSource contributors can link the repository into a target DSH profile workspace and enable dsh-project-brain in its bundle configuration.
After installation:
See INSTALL.md for detailed setup and troubleshooting.
Capability · Tool Initialize or rescan · project_init, project_rescan Status and continuation · project_status, project_continue Long-term memory · project_memory_add, project_memory_list TODO management · project_todo_add, project_todo_list, project_todo_update, project_todo_done Query and maintenance · project_ask, project_dream Git + LLM architecture diff · project_diff
Dashboard quick actions run these workflows in the background and provide loading, confirmation, success, error, and retry states.
/.project-brain/ unless an explicitly enabled model capability sends bounded content to its configured provider.sessionSemanticMemoryEnabled: false to disable it..project-brain/ may contain internal decisions and bug history. Review it before committing it to Git.npm test
npm run build
npm run verify:release
npm run verify:install
npm auditThe automated suite covers runtime workspace resolution, cross-workspace isolation, cross-Session memory, architecture local/LLM paths, Memory V2, BM25/hybrid retrieval, Session deduplication, scanner behavior, Dashboard/TodoStrip contracts, theme tokens, Git pack/delta handling, and LLM protocols.
verify:release validates package metadata, entry points, the npm file allowlist, and scans release files for local paths, Session IDs, credentials, private keys, logs, archives, and project-brain data. verify:install then packs the exact release artifact and installs it in a clean temporary project to catch peer-dependency or missing-build failures before users do.
project_diff uses its own OpenAI/Anthropic-compatible configuration; architecture initialization uses the current DSH Session model.