尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证跨生态 AI 插件聚合市场 — 一个搜索框找到 dsh / Claude Code / MCP 的所有插件 · Plug in. The world is ready.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
The cross-ecosystem AI plugin marketplace — one search box for every plugin and skill across DeepSeek Harness (dsh), Claude Code, MCP and Agent Skills, with unified quality and security scores.
Plug in. The world is ready. · www.pluginworld.ai查看完整 README ↗The cross-ecosystem AI plugin marketplace — one search box for every plugin and skill across DeepSeek Harness (dsh), Claude Code, MCP and Agent Skills, with unified quality and security scores.
Plug in. The world is ready. · www.pluginworld.ai
DATABASE_URL → snapshot mode: reads src/data/seed/, deployable with zero configDATABASE_URL → Postgres mode (Supabase/Neon + Drizzle): FTS search, claims, events, trendingscripts/sync/, GitHub Actions cron at 02:00 UTC) over the
world's mainstream plugin communities:
dsh-plugin / claude-code-plugin / mcp-server, top 500 by stars each)dsh-plugin, cordis-plugin, claude-code, mcp-server, ranked by monthly downloads)/api/v1/*): built for AI agents, CORS open, 60 req/min rate limitThe scanner (src/lib/security.ts) checks: malicious install-script patterns,
code-obfuscation signals, typosquatting against popular names (edit-distance +
adoption-gap heuristic), suspicious URLs (shorteners / raw IPs / punycode),
leaked credentials in docs (also auto-redacted), insecure http:// MCP remotes,
and star-velocity anomalies (star farming).
| Grade | Meaning | Rule |
|---|---|---|
| A+ | Trusted | Zero findings + verified publisher (official org / claimed owner / registry-listed) |
| A | Safe | Zero findings |
| B | Low risk | Minor findings only (missing license/manifest, isolated warnings; score ≥ 70) |
| C | Caution | Accumulated warnings (score < 70) |
| D | Blocked | Critical findings — never listed, written to src/data/seed/quarantine.json |
Scoring: 100 − (critical 60 / warning 15 / info 5). Grades surface on every
plugin card, detail page and in the API (security_grade, security_findings).
npm install
npm run dev # snapshot mode works out of the box (real seed data included)
Refresh plugin data (crawls live ecosystem data, ~5 minutes):
npm run sync # snapshot only
GITHUB_TOKEN=xxx npm run sync # higher API limits; also enriches registry-only entries
www.pluginworld.ai domain at itexport DATABASE_URL=postgres://… # Supabase / Neon
npm run db:generate && npm run db:migrate # create tables (spec §4)
npm run db:seed # load the snapshot
Set DATABASE_URL in Vercel and redeploy — the site switches to DB mode automaticallyDATABASE_URL and REVALIDATE_SECRET to the repo's Actions secrets
and SITE_URL to its variables — .github/workflows/sync.yml runs the full
community scan daily at 02:00 UTC.
Also set Settings → Actions → Workflow permissions to Read and write so the
cron job can commit refreshed snapshotshttps://www.pluginworld.ai/api/auth/callback), then set
GITHUB_CLIENT_ID / GITHUB_CLIENT_SECRET / AUTH_SECRET| Dimension | Weight | Basis |
|---|---|---|
| Maintenance | 30 | Commit recency decay (full within 30 days, 180-day half-life) |
| Popularity | 25 | Star/download percentile within the ecosystem (cross-ecosystem comparable) |
| Compliance | 20 | Manifest passes the official ecosystem schema |
| Security | 15 | License + install-script static scan + owner verification |
| Docs | 10 | README length, structure, code examples |
Implementation: src/lib/scoring.ts (pure functions + unit tests);
the three ecosystem validators live in src/lib/validators/.
GET /api/v1/plugins?q=&ecosystem=&category=&sort=score|stars|trending|updated&page=
GET /api/v1/plugins/{ecosystem}/{owner}/{name}?include=readme
GET /api/v1/stats
Docs: https://www.pluginworld.ai/docs/api
npm run dev # development
npm run build # production build (SSG for all detail pages)
npm test # vitest unit tests (scoring + validators + search + redaction)
npm run typecheck # tsc --noEmit
npm run lint # eslint
npm run sync # indexing pipeline → snapshot
npm run sync:db # indexing pipeline → snapshot + Postgres upsert
npm run db:generate # generate drizzle migrations
npm run db:migrate # run migrations
npm run db:seed # load snapshot into DB