返回插件市场

dsh-find-plugin

Agent 与工作流

awesome-dsh-plugin/dsh-find-plugin

在会话内搜索发现 DSH 插件——实时 GitHub dsh-plugin 主题搜索,按星标排序

  • deepseek-harness
  • dsh
  • dsh-plugin
GitHub Stars
177GitHub
浏览量
8DSH Plugin Hub
Forks
9GitHub
开放问题
10GitHub Issues
Manifest 版本
0.3.7dsh-find-plugin
最近推送
2026年9月25日GitHub
许可证
MITTypeScript
插件类型
Host运行于 DSH Host

验证与兼容性

这里展示目录实际采集到的证据;未声明的信息会明确标为未知。

静态检查通过
01精确来源: npm · dsh-find-plugin@0.3.702验证时间: 2026年8月21日03验证版本: 0.1.0-rc.7
当前版本兼容性
已在当前目录版本验证
声明的 Harness 范围
未声明
声明的平台
未声明
适用 Profile
web
构建授权
未知
权限声明
未声明
外部服务
未声明
遥测声明
未知
未发现已知风险标记

这不是安全背书;安装前仍应查看源码、权限和配置。

查看证据与判定范围

验证仅覆盖标出的来源、版本和 Harness 环境,不代表未来版本仍然兼容。

  • dsh-find-plugin@0.3.7
  • 插件通过清单与静态结构检查,尚未完成运行时加载检查。

README

查看源文件

dsh-find-plugin awesome · DSH plugin

English | 中文

A plugin that finds plugins — think /find-skills from skills.sh, for DSH.

Tell your agent what you want ("notify me on WeChat when a task finishes"), and it searches the DSH plugin ecosystem on GitHub for you — top results by stars, each with a one-line description and an install command.

Install

# from npm (prebuilt, recommended)
dsh plugin --profile web add dsh-find-plugin

# or from GitHub
dsh plugin --profile web add github:awesome-dsh-plugin/dsh-find-plugin

Usage

Restart dsh web after installing, then just talk to the agent — it calls find_dsh_plugin on its own whenever plugin discovery helps:

  • "What terminal TUI plugins are there?"
  • "I want to get a WeChat notification when a task finishes — any plugin for that?"
  • "Find me something for reviewing git diffs inside DSH."

Each result comes back with stars, a description, the repo link, and a ready-to-run dsh plugin add command — ask the agent to install one and it can run the command for you.

How it works

  • Live GitHub repository search scoped to the official dsh-plugin topic, re-ranked by stars (5-minute per-query cache).
  • When a result is also listed on awesome-dsh-plugin, its hand-written bilingual description from plugins.json replaces the GitHub one (the lang parameter picks the language) — ranking is untouched.
  • Every result comes with a ready-to-run dsh plugin add command. Plugins are third-party code — review the source and pin a commit.

Rate limits and offline fallback

GitHub's search API allows only 10 requests/minute per public IP when unauthenticated, and that quota is shared by every host behind the same egress IP (carrier CGNAT, corporate NAT, …), so a search can fail with HTTP 403 for reasons outside your control. The plugin therefore:

  • uses the GITHUB_TOKEN DSH credential when one is configured (30 req/min, account-scoped, immune to shared-IP exhaustion). Optional — without it the tool still works, just closer to the anonymous limit;
  • retries a rate-limited (403/429) or failed request once, then degrades instead of failing: it falls back to keyword matches from the curated list and says so in the result note;
  • caches the curated list on disk ($DSH_HOME/cache/dsh-find-plugin/) and revalidates it with If-None-Match / If-Modified-Since, so restarts and offline runs use the full ~3400-entry list instead of the small bundled snapshot.
  • says why a request failed. Node reports every transport failure as a bare fetch failed and hides the useful part in cause, so the plugin surfaces the chain (fetch failed ← certificate has expired (CERT_HAS_EXPIRED)) and names the one trap that otherwise looks like a plugin bug: a system proxy or VPN accelerator, which Node's fetch ignores unless DSH itself was started with NODE_USE_ENV_PROXY=1 (or --use-env-proxy). A browser has no such rule — which is why GitHub opens fine and this still fails.

Compatibility

DSH plugin APIs are prerelease-versioned, and node-semver only lets a prerelease satisfy a range that carries a prerelease on the same major.minor.patch — so a peer range pinned to one host line silently stops matching the next one. The declared @deepseek-ai/dsh-tools range therefore names every shipped line through 0.1.7, and npm run check:peers (run in CI) resolves the current latest/next host lines from the registry and fails the day a new one is not covered.

Development

npm run typecheck                     # tsc --noEmit
npm test                              # offline tests (mocked fetch)
FINDP_LIVE=1 npm run test:live        # opt-in real-network cases

License

MIT © awesome-dsh-plugin

评论

0
最新优先