Cross-ecosystem aggregation data layer: syncs the GitHub dsh-plugin topic and the npm registry into one open JSON index, queried by model tools, a CLI, and a minimal stdio MCP server.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:863683348/dsh-feed
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time. Only install sources you trust, and pin a commit (github:owner/repo#sha).
README
不直接做 UI,做开放数据层:把 GitHub dsh-plugin topic 和 npm registry 归一化成一份开放 JSON 索引,交给任何 Agent / CLI / MCP / 未来 UI 消费。你的插件只做"同步 + 查询"——别人基于这份数据再建 UI。
为什么需要它
- 现有市场各自抓数据、各自维护,闭源且重复。
dsh-feed成为数据源:同步一次,全生态可查。 - 一个插件,三种消费面:
- 模型工具:
feed_sync/feed_search/feed_stats - CLI:
dsh-feed sync|search|stats|mcp - MCP server(实验性):任何 MCP 客户端(Cursor、Claude Desktop…)都能查
- 模型工具:
- 索引是开放 JSON 文件(默认
.dsh/dsh-feed.json),明文、可 diff、可被任何工具读。
安装
dsh plugin --profile <profile> add dsh-feed
# 或只用 CLI(npm 全局):npm i -g dsh-feed
用法
模型侧
| 工具 | 说明 |
|---|---|
feed_sync |
拉取 GitHub topic + npm → 写索引(需网络) |
feed_search |
自然语言查索引(英文词 + 中文 2-gram) |
feed_stats |
索引统计:总数、来源、热门 topic、npm 覆盖 |
CLI
dsh-feed sync # 同步(可选 GITHUB_TOKEN 提升限额)
dsh-feed search "移动端 远程" # 查询
dsh-feed stats
dsh-feed mcp # 极简 stdio MCP server(实验性)
MCP 配置示例(任意 MCP 客户端)
{ "mcpServers": { "dsh-feed": { "command": "dsh-feed", "args": ["mcp"] } } }
索引格式(开放数据层)
{
"updated": "2026-08-16T...",
"sources": { "github": 200, "npm": 180 },
"count": 380,
"plugins": [
{ "name": "owner/repo", "url": "...", "description": "...", "stars": 42, "topics": ["dsh-plugin", "notify"], "npmName": "dsh-xxx" }
]
}
设计
lib/sync.js— 抓取 + 归一化(GitHub search API + npm search API,可注入 token)。lib/query.js— 纯查询逻辑(分词/评分/统计),零依赖可单测。lib/index-store.js— 索引文件读写(相对路径 + 防逃逸校验)。bin/dsh-feed.js— CLI + 极简 stdio MCP server(JSON-RPC 2.0)。- 安全:索引只写会话工作区内的
.dsh/;网络请求仅发生在feed_sync(显式触发)。
Roadmap
- 每小时定时同步(
dsh-schedule接入)。 - Web API 只读端点 + 更完整的 MCP 工具(分页/过滤/详情)。
- 与 dsh-need-finder / dsh-recipe 共享同一数据层(去重复抓取)。
测试
node test/feed.test.mjs
License
MIT
Links
More in this category
dsh-market/dsh-market★ 654
(Recommended) The plugin market inside DSH: a Settings page to browse and search the full community catalog by category, with confirmed one-click installs and an installed-plugins view.
bradeGithub/DSH-Plugins-Marketplace★ 99
GitHub-topic-driven plugin & skill marketplace: a Settings page that browses the auto-collected registry (the whole dsh-plugin topic plus the skills index, CI-refreshed every 2 hours) with one-click install, type detection, install-script and host-shadow-dependency safety confirmations, env-key management, and the STANDARD.md recognition spec.
Sanqi-normal/dsh-webui-market-plugin★ 66
In-harness plugin market for the dsh web GUI: browse the awesome-dsh-plugin.com catalog and install/uninstall plugins into a profile from Settings → Plugins → Plugin Market.
whyihaveyou/dsh-suite#plugin-manager★ 38
In-app plugin store for the DSH Web UI: browse, search, one-click install, compat badges.
Noob-stupid/dsh-plugin-hub★ 34
A plugin management panel: one-click enable/disable for installed plugins plus a GitHub dsh-plugin marketplace with details and one-click installs.
yyyyukari/dsh-plugin-workshop★ 26
Steam Workshop-style in-app plugin browser: search, hot/newest/trending (7/30/90-day) sorting, Chinese keyword mapping, bilingual descriptions and README translation, plugin-signature filtering, and one-click install/update.