🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

代码符号索引 lonelymoon87/dsh-code-intel

DeepSeek Harness
lonelymoon8775 天前有提交已提供中文文档扫描:含敏感能力

为代码建立符号级索引,支持词法与向量混合检索

28.1/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add lonelymoon87/dsh-code-intel
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · dev
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 75 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 4 处,展示前 4 条)
  • 读取本地文件
    src/indexer.ts:207
    if (existsSync(gitignore)) ignored.add(readFileSync(gitignore, 'utf8'))
  • 读取本地文件
    src/indexer.ts:207
    if (existsSync(gitignore)) ignored.add(readFileSync(gitignore, 'utf8'))
  • 发起网络请求
    src/indexer.ts:248
    const response = await fetch(embedding.endpoint, {
  • 写入本地文件
    src/store.ts:76
    mkdirSync(dirname(path), { recursive: true })
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-credentials@deepseek-ai/dsh-fs@deepseek-ai/dsh-jobs@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 建立符号级索引
  • 词法与向量混合检索

面向 DeepSeek Harness 的符号感知代码索引与混合搜索。

README

由 DeepSeek 最新模型翻译生成
dsh-code-intel CI 最新 DSH 兼容性 Release License 面向 DeepSeek Harness 的符号级代码大纲、持久工作区索引,以及明确区分词法与 embedding 的代码检索插件。 v0.1.3 已针对 DSH 0.1.0-rc.8 与 0.1.1-rc.1 验证,同时保留兼容 rc.6 的 peer 范围。项目继续通过 GitHub Release 分发预构建包,npm 发布已经准备完成但尚未上线。 MVP - code_search 对 AST 符号块和有界模块窗口排序,返回文件、行号、符号信息、片段、分数和实际检索模式; - code_outline 可直接解析单个文件,也可从持久索引投影目录大纲; - 工作区第一次检索会启动可取消的 code-index 后台 job,不阻塞当前 agent turn; - 索引以 SQLite 保存到 .dsh/code-index/,并用 DSH 文件版本增量更新; - fs/observed 标记 DSH 文件操作带来的变更,Chokidar watcher 覆盖本地 shell、IDE 和外部修改;
展开完整文档(README 剩余 1 节)
dsh-code-intel

CI
最新 DSH 兼容性 Release License

面向 DeepSeek Harness 的符号级代码大纲、持久工作区索引,以及明确区分词法与 embedding 的代码检索插件。

v0.1.3 已针对 DSH 0.1.0-rc.8 与 0.1.1-rc.1 验证,同时保留兼容 rc.6 的 peer 范围。项目继续通过 GitHub Release 分发预构建包,npm 发布已经准备完成但尚未上线。

MVP

- code_search 对 AST 符号块和有界模块窗口排序,返回文件、行号、符号信息、片段、分数和实际检索模式;
- code_outline 可直接解析单个文件,也可从持久索引投影目录大纲;
- 工作区第一次检索会启动可取消的 code-index 后台 job,不阻塞当前 agent turn;
- 索引以 SQLite 保存到 .dsh/code-index/,并用 DSH 文件版本增量更新;
- fs/observed 标记 DSH 文件操作带来的变更,Chokidar watcher 覆盖本地 shell、IDE 和外部修改;
- TypeScript、TSX、JavaScript、JSX、Python、Go、Rust 和 Java 使用 VS Code 发布的 Tree-sitter WASM grammar,不需要安装脚本;
- 可选的 OpenAI-compatible embedding 端点会把余弦相似度加入词法排序。未配置时结果会明确标记 mode: lexical。

DeepSeek 官方 API 目前没有公开 embedding endpoint。本插件不会虚构默认端点,也不会把纯词法结果包装成语义检索。

索引生命周期

第一次调用 code_search 或目录级 code_outline 时,工具会返回 indexing 状态和 job id。可用内置 jobs 工具查看或等待任务,完成后再次调用。单文件大纲不依赖完整工作区索引。

缓存只保存由源码派生的文本和可选向量,位于工作区内部,并排除 .dsh 自身。它随时可以删除并完整重建。embedding 端点或模型变化时,检索配置指纹会自动使旧向量失效。

源码遍历和读取都经过 DSH filesystem service。SQLite 和 Chokidar 要求 provider 的 processPath() 能由插件宿主访问,因此 MVP 面向标准本地 filesystem execution world。远程 provider 如果返回宿主无法访问的路径,缓存创建会明确失败,不会错误索引另一处目录。

Node 22 仍把内置 SQLite 模块标记为 experimental。索引缓存可丢弃并带有 schema version,源码始终是唯一事实源。

检索模式

词法模式根据完整查询、查询词、符号名和路径计分。混合模式再加入 endpoint 向量的余弦相似度。已经配置的 endpoint 或 credential 如果失效,索引 job 或查询会明确失败。只有完全未配置 embedding 时才运行词法模式。

YAML 中只保存 credential reference,不保存秘密值。插件会在每次索引或查询操作中通过 ctx.credentials 解析,并且不会持久化 credential。

权限与数据

- Code Intel 通过 DSH filesystem service 读取受支持的源码文件,监听解析后的本地工作区,并默认在 .dsh/code-index/ 下写入可重建的 SQLite 索引。
- 词法模式不发起网络请求。混合模式会把提取的代码块与查询发送到显式配置的 OpenAI-compatible embedding endpoint,并且只解析指定的 credential reference。
- 索引可能包含从源码派生的片段和可选向量。插件不发送遥测,也不注册自定义持久会话事件;删除索引目录即可清除其持久数据。

安装

当前代码支持 DSH >=0.1.0-rc.6 =24。

dsh plugin --profile web add https://github.com/lonelymoon87/dsh-code-intel/releases/download/v0.1.3/dsh-code-intel-0.1.3.tgz

Release tarball 已预构建,不需要构建权限。也可以固定版本从源码安装。

dsh plugin --profile web add github:lonelymoon87/dsh-code-intel#v0.1.3

源码安装会运行本包的 prepare 构建。pnpm 10 及以上版本默认拒绝执行,第一次安装失败时请按 DSH 输出的提示,将准确的包键加入 profile 的构建白名单,然后重新执行同一条命令。需要装进一次性 Agent profile 时,把命令中的 web 换成 headless。

升级时用新版本的 Release URL 再执行一次 dsh plugin add。卸载时执行

dsh plugin --profile web remove dsh-code-intel

配置

词法模式不需要 provider。

- id: code-intel
name: dsh-code-intel
config:
indexDir: .dsh/code-index
include: [.ts, .tsx, .js, .jsx, .py, .go, .rs, .java]
exclude: [.dsh, .git, node_modules, dist, build, coverage, vendor]
maxFileSize: 1000000
maxChunkChars: 12000
maxResults: 20
watch: true
embedding: false

混合模式使用完整的 OpenAI-compatible embeddings URL。

embedding:
provider: openai-compatible
endpoint: https://embedding.example/v1/embeddings
model: your-embedding-model
credentialRef: EMBEDDING_API_KEY
batchSize: 32

indexDir 和排除项必须是工作区内的相对路径。MVP 只接受已经接入 parser 的扩展名。

发布验证

测试使用真实临时工作区和 SQLite,覆盖所有 parser、后台索引、词法检索、文件大纲、fs/observed 更新、混合排序、凭据缺失、向量持久化、缓存替换和非法配置。

- v0.1.3 tarball 已从 HTTPS Release URL 直接安装进全新的 DSH 0.1.0-rc.8 与 0.1.1-rc.1 profile;
- pack 产物与固定版本 GitHub 源码安装均通过 dsh --dump-config 检查;
- CI 覆盖 Node 22.19 与 Node 24,兼容矩阵会分别使用 DSH 0.1.0-rc.8、npm latest 与 next 标签重跑真实安装;
- bug 与兼容性问题统一进入 GitHub Issues。

许可证

MIT
预览分享卡片长什么样 ↓lonelymoon87/dsh-code-intel
分享 · DeepSeek Harness Hub
lonelymoon87/dsh-code-intel

为代码建立符号级索引,支持词法与向量混合检索

这是你的仓库?认领条目

回到顶部