Skip to content
dsh.fish
Bundle

@mutocenew/dsh-plugin-catalog

DSH 插件目录速查 (dsh-plugin catalog): periodically fetches repositories tagged topic:dsh-plugin from GitHub, categorizes them, stores Chinese descriptions locally, and exposes agent tools (plugin_query / plugin_catalog_update / plugin_categories) plus a web GUI panel to quickly look up relevant plugins.

Source
wemio
License
Apache-2.0
Updated
Updated 14 days ago

Readme

# dsh-plugin-catalog · DSH 插件目录速查

一个 DSH 插件工具:**定期从 GitHub `topic:dsh-plugin` 抓取**相关仓库,按分类组织并附**中文简述**存储到本地,并提供**快速查询**能力(agent 工具 + Web GUI 面板)。

## 功能

- **定期抓取**:通过 GitHub Search API(`topic:dsh-plugin`,按 star 排序)抓取插件仓库列表;默认每 **12 小时**自动更新一次。
- **本地存储**:数据写入 `~/.dsh/dsh-plugin-catalog.json`(原子写入)。
- **分类**:自动将插件归入 核心/框架、界面/皮肤、智能体/Agent、开发/工具、集成/连接、自动化、其他 等分类。
- **中文简述**:每个插件附带 `zh` 字段的中文概述(保留英文原文 `description` 作为权威描述)。
- **快速查询**:agent 工具 + GUI 面板按关键词/分类实时检索。

## Agent 工具

| 工具 | 说明 |
| --- | --- |
| `plugin_query` | 按关键词/分类查询插件,支持 `stars`/`name`/`recent` 排序,返回中文简述 |
| `plugin_categories` | 列出已有分类及各分类数量 |
| `plugin_catalog_update` | 手动抓取刷新最新插件列表 |

## GUI 面板

侧边栏「**插件目录**」入口 → 中部面板:分类筛选、关键词搜索、一键刷新。数据来自 `/api/dsh-plugin-catalog/*` 路由。

## 约束

- 抓取依赖 GitHub 公共 API 未认证限额(约 60 次/小时),控制手动刷新频率即可。
- 首次启动时若目录为空会自动抓取一次;随后按 `refreshIntervalHours`(默认 12)定时刷新。

## 结构

```
lib/index.js       宿主端:挂载抓取/存储/定时/工具/路由/系统提示
lib/fetcher.js     GitHub Search API 抓取
lib/categorize.js  分类 + 中文简述生成
lib/catalog.js     刷新编排 + 查询逻辑
lib/store.js       本地 JSON 存储
lib/tools.js       agent 工具
lib/routes.js      /api/dsh-plugin-catalog 路由
lib/client.js      浏览器端:侧边栏入口 + 目录面板
```

Install

dsh plugin --profile web add github:wemio/dsh-plugin-catalog

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source