DeepSeek Harness 插件

margbug01/dsh-ma-plugins#dsh-librarian

Star 数 ★ 1 分类 Git 与代码评审 收录于 2026-08-26

带行号证据和内存缓存的 GitHub 只读调研子代理。

安装

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:margbug01/dsh-ma-plugins#path:/dsh-librarian

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

该插件的 README 只有英文版本。

Evidence-first GitHub repository research for DeepSeek Harness.

The main agent sees one librarian_explore tool. A fresh read-only child receives the low-level GitHub tools for code search, repository/ref resolution, numbered file reads, directory listing, recursive globbing, commit history, and diffs. Search snippets are treated as navigation hints; reports are instructed to cite verified file ranges and permanent GitHub links.

Install

dsh plugin --profile web add link:C:/path/to/dsh-ma-plugins/dsh-librarian

The bundle patch mounts the plugin with these defaults. Override by id in ~/.dsh/profiles/web/cordis.patch.yml, restating every config key you keep:

- id: dsh-librarian
  config:
    apiKeyEnv: GITHUB_TOKEN
    maxApiCalls: 36
    timeoutMs: 600000
    maxRetries: 1
    maxRetryDelayMs: 5000
    cache:
      enabled: true
      maxSizeMb: 100
      refTtlSeconds: 60
      searchTtlSeconds: 30
      disk: false

Do not - insert this plugin again after dsh plugin add; that double-mounts it.

agentOptions is optional. When omitted, the Librarian inherits the parent agent's provider and model.

The token resolves through the DSH credential service first, then the process environment. Keep credentials outside the repository.

The cache stays in memory and is cleared when DSH restarts. Immutable commit and tree reads remain cached until least-recently-used eviction. Branch, repository, and history reads use refTtlSeconds; complete search responses use searchTtlSeconds. Incomplete search responses, errors, rate-limit responses, credentials, and responses marked private, no-store, or no-cache are never cached. Matching in-flight requests from one Librarian run share a single GitHub request, while each caller keeps independent cancellation. Individual responses are capped at 16 MB before entering the memory layer.

disk: true is reserved for a future opt-in disk cache. Version 0.3.1 logs a notice and continues with memory only.

Development

npm run check
npm test

Requires Node.js 22 and DSH 0.1.0-rc.6.

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。