web-casa/dsh-plugin-pkgseek
PkgSeek Linux 软件包、命令和 CVE 情报,作为原生 DeepSeek Harness(dsh)工具。
项目介绍Project Overview
dsh-plugin-pkgseek 是 PkgSeek 的 DSH 适配插件,将其 Linux 软件包、命令与 CVE 情报注册为 22 个只读原生工具(pkgseek_ 前缀),并附使用提示。适合查包、诊断命令、查漏洞和发行版迁移时使用。调用经托管 MCP-over-HTTP API,无需密钥;离线时用内置快照,实际调用仍会失败。
dsh-plugin-pkgseek adapts PkgSeek into DeepSeek Harness, registering 22 read-only native tools (prefixed pkgseek_) for Linux packages, commands, errors, distro lifecycle, and CVE intelligence, plus prompt guidance. Use it to resolve installs, lint commands, search packages/vulnerabilities, or plan migrations. Calls go to a hosted MCP-over-HTTP API with no API key; if tools/list is unreachable, a bundled snapshot loads but live calls fail.
请帮我了解并安装插件:【dsh-plugin-pkgseek】【https://github.com/web-casa/dsh-plugin-pkgseek】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add dsh-plugin-pkgseek
把 web-casa/dsh-plugin-pkgseek 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-plugin-pkgseek
PkgSeek Linux package, command and CVE intelligence as native DeepSeek Harness (DSH) tools — plus a system-prompt segment that tells the agent when to use them.
The plugin is a thin adapter over PkgSeek's public MCP-over-HTTP endpoint: at
load time it fetches tools/list and registers one native DSH tool per
definition (names prefixed pkgseek_), so tools go through the same approval,
guard and logging pipeline as built-in tools. Every call is forwarded as
tools/call to the hosted API — all tools are read-only and need no API key.
Install
# interactive (web) profile
dsh plugin --profile web add dsh-plugin-pkgseek
# one-shot (headless) profile — dsh run uses this one
dsh plugin --profile headless add dsh-plugin-pkgseek
web and headless are separate profiles; install into both if you use both.
The package is published on npm as
dsh-plugin-pkgseek;
dsh plugin add resolves it from the registry. Installing from the GitHub
source also works (dsh plugin --profile web add github:web-casa/dsh-plugin-pkgseek).
The published manifest declares support for DSH >=0.1.0-rc.7 <0.2.0 on both
the web and Desktop clients. That declaration lets a strict Cordis v4 catalog
verify exact registry evidence; it does not by itself grant marketplace or
Microsoft Store approval.
Verification
The plugin was smoke-tested against a live dsh 0.1.0-rc.7 headless
profile: it loaded, fetched tools/list from the production API,
registered pkgseek_resolve_install, the model called it, and the session
log shows the API answer (sudo apt install ripgrep) flowing back through
tools/call. Unit tests cover the JSON-RPC client, the schema adapter, the
offline snapshot and the config surface (npm test).
Configuration
All settings are optional and live in the plugin's config: row:
- id: pkgseek
name: dsh-plugin-pkgseek
config:
apiBase: https://api.pkgseek.com # any PkgSeek API deployment
timeoutMs: 20000 # per-request timeout
promptGuidance: true # register the usage-guidance prompt section
refreshTools: true # refresh tools/list at load (snapshot fallback)
enabledTools: [] # allowlist of unprefixed names; empty = all
If the live tools/list fails at load time (offline, API down), the plugin
registers from its bundled snapshot and tool calls fail individually with a
clear error instead of breaking the profile.
Tools
22 read-only tools, registered with the pkgseek_ prefix:
- Command/tool intelligence:
pkgseek_search_tools,pkgseek_get_tool,pkgseek_resolve_install,pkgseek_identify_binary,pkgseek_query_file_provides,pkgseek_compare_distros,pkgseek_get_context - Error & command doctor:
pkgseek_diagnose_linux_error,pkgseek_lint_command,pkgseek_explain_command,pkgseek_suggest_fix - Packages:
pkgseek_search_packages,pkgseek_get_package,pkgseek_compare_package_versions,pkgseek_get_package_history - Vulnerabilities:
pkgseek_search_vulnerabilities,pkgseek_get_vulnerability - Lifecycle & migration:
pkgseek_check_release_lifecycle,pkgseek_get_distro_lifecycle,pkgseek_compare_distro_releases,pkgseek_plan_distro_migration - Meta:
pkgseek_get_repository_health
Development
npm install
npm run sync-tools # refresh tools.snapshot.json from the live endpoint
npm test # build + node --test
Layout: src/mcp-client.ts (JSON-RPC over HTTP), src/adapter.ts (MCP tool
definitions → defineTool), src/prompt.ts (guidance section),
src/index.ts (wiring, config schema).
Release
Releases are deliberately manual. An authorized maintainer dispatches the
publish.yml workflow from main, enters the exact unpublished
package.json version, and types PUBLISH. The workflow installs locked
dependencies without lifecycle scripts, runs the tests, packs the tested
artifact, then publishes it through npm Trusted Publishing (GitHub Actions
OIDC). It has no npm write token and does not run for pushes or tags.
The npm trusted-publisher binding is restricted to
web-casa/dsh-plugin-pkgseek, publish.yml, and the npm-publish
environment. Configure required reviewers for that GitHub environment and
protect the default branch before delegating release authority; the workflow's
manual confirmation is not a substitute for an independent review policy.
License
MIT
nexu-io/open-design
freestylefly/awesome-gpt-image-2
anywhere-labs/dsh-desktop
walkinglabs/learn-harness-engineering
awesome-dsh-plugin/awesome-dsh-plugin
MemTensor/MemOS