为 DeepSeek Harness 打造的 Codebase Memory MCP 桥接插件:知识图谱代码搜索、AST 片段、架构分析、调用图追踪、自动启动的图谱界面、内置技能,还有 /cbm 命令。
30.8/100
综合分
1
GitHub 星标
265
npm 周下载
—/5
用户评分
数据截至 2026/10/4 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @lovedolove/dsh-codebase-memory-mcpnpm 源 · @lovedolove/dsh-codebase-memory-mcp 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · vision
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 30 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@lovedolove/dsh-codebase-memory-mcp @ 0.1.4
✓Node 引擎要求 >=18.0.0 <25.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/16 14:07:55
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件
查看扫描证据(共 26 处,展示前 23 条)
- 读取本地文件src/client.mjs:24
if (env.CBM_EXE && existsSync(env.CBM_EXE)) { - 读取本地文件src/client.mjs:27
if (env.CODEBASE_MEMORY_EXE && existsSync(env.CODEBASE_MEMORY_EXE)) { - 读取本地文件src/client.mjs:48
if (existsSync(c)) return c - 读取本地文件src/client.mjs:56
if (existsSync(target)) return target - 读取本地文件src/client.mjs:60
if (!isWin && existsSync('/proc/sys/fs/binfmt_misc/WSLInterop')) { - 读取本地文件src/client.mjs:65
if (existsSync(target)) return target - 执行外部命令来自配置/变量src/client.mjs:109
this.child = spawn(this.exePath, args, { - 读取本地文件src/discovery.mjs:167
if (existsSync(absTarget)) { - 读取本地文件src/discovery.mjs:200
if (!existsSync(absPath)) return false - 读取本地文件src/discovery.mjs:201
const fd = readFileSync(absPath, { flag: 'r' }) - 读取本地文件src/discovery.mjs:280
if (!existsSync(absRoot)) { - 读取本地文件src/discovery.mjs:286
if (existsSync(gitignorePath)) { - 读取本地文件src/discovery.mjs:288
gitignoreRules.push(...parseGitignoreContent(readFileSync(gitignorePath, 'utf8'))) - 读取本地文件src/engine.mjs:53
if (existsSync(metaPath)) { - 读取本地文件src/engine.mjs:54
return JSON.parse(readFileSync(metaPath, 'utf8')) - 写入本地文件src/engine.mjs:68
mkdirSync(dirname(metaPath), { recursive: true }) - 写入本地文件src/engine.mjs:69
writeFileSync(metaPath, JSON.stringify(data, null, 2), 'utf8') - 读取本地文件src/watcher.mjs:120
if (!existsSync(absPath)) { - 读取本地文件src/watcher.mjs:123
const st = statSync(absPath) - 读取本地文件src/skills.mjs:121
exists: existsSync(file), - 读取本地文件src/skills.mjs:137
const raw = await readFile(fileURLToPath(candidate.locator), 'utf8') - 读取本地文件src/skills.mjs:173
const raw = await readFile(file, 'utf8') - 读取本地文件src/skills.mjs:202
const raw = await readFile(file, 'utf8')
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-commands@deepseek-ai/dsh-skill@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 知识图谱代码搜索
- AST片段提取
- 调用图追踪
最近更新
在 GitHub 查看全部 →v0.1.52026-11-03
· 新增
· 从 Veyra 提取出完整的 Codebase Memory 核心:
- src/types.mjs:索引、新鲜度、实体、关系、方向的常量。
- src/client.mjs:stdio JSON-RPC 客户端、可执行文件发现、守护进程自动启动。
- src/discovery.mjs:路径遍历防护、gitignore 解析器、敏感/机密检测、仓库发现。
- src/engine.mjs:CodeIntelligenceEngine,负责索引、搜索、片段提取、架构和状态。
- src/watcher.mjs:RepositoryWatcher,做防抖的增量文件监听。
- src/tools.mjs:全部 6 个 cbm_* 工具的完整定义和执行处理器。
- src/redact.mjs:敏感模式擦除器和内容清洗器。
· 重新导出模块化 API(@lovedolove/dsh-codebase-memory-mcp/client、/discovery、/engine、/tools、/types、/watcher)。
· 覆盖所有已提取模块的完整单元测试。
v0.1.02026-10-01
· 新增
· 独立 DSH 插件,用来集成 codebase-memory-mcp。
· 插件初始化时自动启动后台守护进程(--ui=true)。
· Web 知识图谱可视化界面,托管在
· 6 个 MCP 工具全部注册进 DSH:
- cbm_projects:列出已索引项目。
- cbm_search:按名称、标签或路径搜索代码知识图谱。
- cbm_snippet:为限定符号取回精确源码片段。
- cbm_arch:目录架构摘要。
- cbm_trace:追踪入站和出站调用图路径。
- cbm_search_code:跨仓库文件快速文本搜索。
· 跨平台可执行文件检测(Linux、macOS、Windows 和 WSL)。
· 内置 codebase-memory 技能,供 DeepSeek Harness 智能体使用。
· 斜杠命令 /cbm,查看守护进程状态、可执行文件路径和已索引项目。
· 自动化 CI 与 npm 发布的 GitHub Actions 工作流。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成@lovedolove/dsh-codebase-memory-mcp
独立 Codebase Memory MCP 桥接插件,用于 DeepSeek Harness(DSH)。
注册六个知识图谱代码工具,自动启动 codebase-memory-mcp 守护进程及其图谱可视化 Web UI,并附带一个内置智能体技能和一个 /cbm 状态命令。
M8ven Score
功能
- 六个知识图谱代码工具,原生注册在 DSH 工具界面上(cbm_projects、cbm_search、cbm_snippet、cbm_arch、cbm_trace、 cbm_search_code)。内置技能的说明指出,图谱查询返回精确的结构化结果只需约 500 token,而 grep 需要约 80K。
- 自动启动的后台守护进程与 Web UI —— 插件加载时,以子进程方式启动 codebase-memory-mcp --ui=true,走 stdio JSON-RPC 2.0(MCP 握手 2025-03-26),并打印 codebase-memory UI is live: http://localhost:9749/。共享客户端会在守护进程退出时自动重启,并在插件关闭时将其释放。
展开完整文档(README 剩余 1 节)
@lovedolove/dsh-codebase-memory-mcp 独立 Codebase Memory MCP 桥接插件,用于 DeepSeek Harness(DSH)。 注册六个知识图谱代码工具,自动启动 codebase-memory-mcp 守护进程及其图谱可视化 Web UI,并附带一个内置智能体技能和一个 /cbm 状态命令。 M8ven Score 功能 - 六个知识图谱代码工具,原生注册在 DSH 工具界面上(cbm_projects、cbm_search、cbm_snippet、cbm_arch、cbm_trace、 cbm_search_code)。内置技能的说明指出,图谱查询返回精确的结构化结果只需约 500 token,而 grep 需要约 80K。 - 自动启动的后台守护进程与 Web UI —— 插件加载时,以子进程方式启动 codebase-memory-mcp --ui=true,走 stdio JSON-RPC 2.0(MCP 握手 2025-03-26),并打印 codebase-memory UI is live: http://localhost:9749/。共享客户端会在守护进程退出时自动重启,并在插件关闭时将其释放。 - 系统提示词引导 —— 注入一节 Codebase Memory — Knowledge Graph Policy,告诉模型何时优先使用图谱工具,而不是 grep/read。 - 内置智能体技能 —— skills/codebase-memory/SKILL.md 注册为原生内置技能服务商(codebase-memory,rank 600,模型和用户均可调用),因此面向模型的 skill 工具可以加载它。 - /cbm 斜杠命令 —— 报告解析出的可执行文件路径、Web UI 链接,以及守护进程中当前已索引的项目。 - 优雅降级 —— 只有 tools 是硬依赖(inject: ['tools']); systemPrompt、skills、commands 通过延迟的 ctx.inject() 挂载,所以宿主服务缺失时直接跳过对应功能。 - 跨平台可执行文件检测 —— 支持 CBM_EXE 覆盖、用户和系统目录、当前工作目录、PATH,以及 WSL 互操作回退,可从 Linux/WSL 定位到可访问的 codebase-memory-mcp.exe。 环境要求 | 组件 | 版本 | | DeepSeek Harness | >=0.1.2-rc.1 <0.3.0-0(dsh.compatibility.dshVersions) | | Node.js | >=18 <25(engines) | | codebase-memory-mcp 可执行文件 | 任意近期版本(已在 0.11.0 上测试) | 可选同级依赖(在 peerDependencies 中声明,存在时从 DSH 运行时解析):@deepseek-ai/cordis >=4.0.1-rc.1 <5.0.0-0,以及 @deepseek-ai/dsh-commands、@deepseek-ai/dsh-skill、 @deepseek-ai/dsh-system-prompt、@deepseek-ai/dsh-tools >=0.1.2-rc.1 <0.3.0-0. 启动 DSH 之前先安装可执行文件。 插件加载时会解析二进制文件;找不到就不会启动守护进程,cbm_ 工具也不会注册。之后再安装二进制文件,需要重新加载配置档。 安装 1. 安装 codebase-memory-mcp 可执行文件 插件只是一座桥——代码索引和查询由 codebase-memory-mcp 运行时完成(上游项目、文档): Installs the CLI and downloads/caches the native runtime for your platform npm install -g codebase-memory-mcp Verify it runs codebase-memory-mcp --version 也可以下载对应平台的发布二进制文件,放到插件会搜索的位置之一: - ~/.local/bin/codebase-memory-mcp(Linux/macOS 用户 bin 目录) - /usr/local/bin/ 或 /usr/bin/(系统目录) - 当前工作目录,或 PATH 上的任意位置 - %USERPROFILE%\AppData\Local\Programs\codebase-memory-mcp\codebase-memory-mcp.exe(Windows) 或者用 CBM_EXE=/path/to/codebase-memory-mcp 直接指定路径。 2. 把插件安装到 DSH 配置档 dsh plugin --profile web add @lovedolove/dsh-codebase-memory-mcp (把 web 换成你的配置档名——web、headless、sdk、acp……) 这条命令会把包安装转发到配置档目录。由于包声明了 dsh.bundle.patch,DSH 会把 @lovedolove/dsh-codebase-memory-mcp 追加到配置档的 dsh.profile.bundles 列表,自动激活 bundle。 其他安装方式: - Web 侧边栏 → Plugins 页面:搜索这个包并安装(Creator 模式下 plugin_manager 工具提供同样的操作)。 - 手动接线:把包加到配置档 $DSH_HOME/profiles/<name>/package.json 的 dependencies 里,并在 dsh.profile.bundles 下列出它,然后在该目录执行一次包安装。随包发布的 bundle 补丁(cordis.patch.yml,声明为 dsh.bundle.patch)会挂载插件: - insert: - id: codebase-memory name: '@lovedolove/dsh-codebase-memory-mcp' 3. 启动 DSH 插件加载时你会看到: [codebase-memory] 🔍 codebase-memory UI is live: http://localhost:9749/ 日志里还有: [codebase-memory] registered tools: cbm_projects, cbm_search, cbm_snippet, cbm_arch, cbm_trace, cbm_search_code [codebase-memory] registered system prompt guidance [codebase-memory] registered /cbm command [codebase-memory] registered skill: codebase-memory 用法 让智能体用它 插件会把知识图谱策略注入系统提示词,并打包 codebase-memory 技能,让智能体自己挑对工具。 典型工作流: 1. cbm_projects() —— 确认项目已建索引(默认从工作区推断项目)。 2. cbm_search(name_pattern=".auth.") —— 按名称/标签/路径查找符号。 3. cbm_trace(symbol="login", direction="both", max_depth=3) —— 追踪调用方与被调用方。 4. cbm_snippet(qualified_name="app.auth.login") —— 读取精确定义,不用加载整个文件。 5. cbm_arch(directory="src") —— 获取目录级组件概览。 快速决策表(来自内置技能): | 问题 | 工具调用 | | 谁调用了 X? | cbm_trace(symbol="...", direction="inbound") | | X 调用了什么? | cbm_trace(symbol="...", direction="outbound") | | 完整调用上下文 | cbm_trace(symbol="...", direction="both") | | 按名称模式查找 | cbm_search(name_pattern="...") | | 读取源码片段 | cbm_snippet(qualified_name="...") | | 目录架构 | cbm_arch(directory="...") | | 在仓库中做文本搜索 | cbm_search_code(query="...") | | 列出已建索引的项目 | cbm_projects() | 用 /cbm 查看状态 🔍 Codebase Memory MCP • Executable: /home/you/.local/bin/codebase-memory-mcp • Web UI: http://localhost:9749/ Indexed Projects: home-you-my-repo 如果找不到可执行文件,/cbm 会报告: ⚠️ codebase-memory-mcp executable not found. Install codebase-memory-mcp or set CBM_EXE. Web UI 守护进程启动时带了 --ui=true,所以会在 http://localhost:9749/ 提供 HTTP 图可视化 UI(这是运行时的默认端口;上游二进制接受 --port=N 并会持久化该设置 —— 插件的提示词和 /cbm 都按默认的 9749 处理)。 可用工具 六个工具都接受 project(显式项目 slug)和/或 repo(仓库根路径,自动转成 slug),并且都标记为并发安全。 结果以文本返回。 | 工具 | 描述 | 参数(★ = 必填) | | cbm_projects | 列出守护进程中已建索引的所有项目 | (无)* | | cbm_search | 在知识图谱中搜索符号或文件 | name_pattern、label(Function \| Class \| Interface \| File)、file_path_pattern、limit(默认 50)、project、repo | | cbm_snippet | 获取符号的精确源码片段 | qualified_name、file_path、start_line、end_line、project、repo | | cbm_arch | 目录的架构摘要(组件、入口点、依赖) | directory(相对于仓库根目录)、depth(默认 2)、project、repo | | cbm_trace | 沿图谱追踪入向/出向调用路径 | ★ symbol、direction(inbound \| outbound \| both,默认 both)、max_depth(默认 3)、project、repo | | cbm_search_code | 对已建索引的文件做快速文本正则搜索 | ★ query、file_pattern、limit(默认 50)、project、repo | 每个工具都会转发到守护进程的 MCP tools/call 方法(list_projects、search_graph、get_code_snippet、get_architecture、 trace_path、search_code),超时 120 秒;工具级错误会作为失败的工具结果返回。 配置 环境变量 | 变量 | 作用 | | CBM_EXE | 显式指定 codebase-memory-mcp 可执行文件的路径(必须存在;优先级高于其他所有查找方式)。 | | CBM_DEFAULT_PROJECT | 当工具调用既没传 project 也没传 repo 时,用作兜底的项目 slug。 | 项目解析顺序 调用工具时,项目按以下顺序解析: 1. 显式传入的 project 参数, 2. repo 参数对应的 slug, 3. CBM_DEFAULT_PROJECT, 4. 当前工作目录对应的 slug。 slug 映射规则:/home/user/my-repo → home-user-my-repo;Windows 路径保留盘符前缀,例如 C:\Users\me\app → C-Users-me-app。 守护进程自动启动 插件生效时守护进程会立即启动(除非进程运行在 node --test 下),并且每次工具调用都会确保它处于运行状态,所以子进程挂掉后会被透明地重启。插件销毁时,守护进程会连同所有待处理的请求一起终止。 开发与测试 Unit + integration test suite (node --test) npm test Verify npm package packing npm run pack:check 测试套件覆盖路径 slug 化、findExe/CBM_EXE 查找、stdio JSON-RPC 客户端(启动、握手、工具调用、错误)、工具注册、针对模拟 Cordis 上下文执行完整的 apply(),以及——当宿主机安装了真实可执行文件时——一次实时的 list_projects 往返调用(否则跳过该测试)。CI 在 Ubuntu 上使用 Node 20、22、24 运行测试套件。 仓库结构: src/index.mjs # Cordis plugin: apply(), system prompt, /cbm command src/bridge.mjs # stdio JSON-RPC client, executable discovery, cbm_* tools src/skills.mjs # bundled skill provider registration skills/codebase-memory/SKILL.md # agent-facing skill cordis.patch.yml # bundle patch that mounts the plugin 发布 每次推送到 main 都会运行 Publish 工作流:它先跑测试套件,然后通过 Trusted Publishing(OIDC)把包发布到 npm。如果当前版本已存在,工作流会递增补丁版本号,并用 [skip publish] 提交回去,避免死循环;提交信息里任何位置包含 [skip publish] 都会完全跳过发布运行。 许可证 MIT © 2025 LoveDoLove
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
LoveDoLove/dsh-codebase-memory-mcp
为 DeepSeek Harness 打造的 Codebase Memory MCP 桥接插件:知识图谱代码搜索、AST 片段、架构分析、调用图追踪、自动启动的图谱界面、内置技能,还有 /cbm 命令。
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,359已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,514已汉化DSH
71.8
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,289已汉化DSH
71.6
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 92,675已汉化DSH
71.2
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,522已汉化DSH
71
这是你的仓库?认领条目