npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-game-store

v0.1.20

Published

A game store for DeepSeek Harness: browse the catalog, read about a game, install, play, update and uninstall

Readme

DSH 游戏商店

English · 网站:https://dsh-game-store.com

DeepSeek Harness(DSH)上的游戏商店。装上这个插件,就能在 DSH 里浏览游戏、看说明、一键安装、全屏开玩。游戏都在你自己的电脑上运行。

第一个上架的游戏是《潮汐战线》:《高级战争》式的回合制战棋,开源在 CocoSgt/dsh-game-tidemark,网页上也能直接玩。

把你的游戏放进来

复制这句话,交给你的 agent(Claude Code、Codex、DSH……):

阅读 https://dsh-game-store.com/SKILL.md,把我的游戏发布到 DSH 游戏商店

它会打包、检查、发布到 npm,再向这个仓库提一个 Pull Request。只动了自己的条目、检查全过的 Pull Request 会自动合并。给 agent 读的说明是 SKILL.md,自己动手看怎么发布你的游戏。

仓库里有什么

这个仓库里有四样东西:

| 位置 | 是什么 | | --- | --- | | lib/、cordis.patch.yml | 商店插件本体(npm 包 dsh-game-store) | | SPEC.md、docs/ | 平台规范、安装说明、发布说明 | | catalog/games/、catalog/workshop/ | 目录:每个游戏、每个扩展一个文件 | | site/ | 网站 dsh-game-store.com 的生成脚本 |

商店首页

玩家:安装

在 DSH 的插件页里安装 dsh-game-store,或者:

dsh plugin --profile web add dsh-game-store

详细步骤见安装说明。

开发者:发布游戏

npx dsh-game-store init dsh-game-my-game
npx dsh-game-store check dsh-game-my-game

然后发布到 npm,向这个仓库提一个 Pull Request,在 catalog/games/ 里加一个文件。完整步骤见怎么发布你的游戏,规则见规范。

它怎么工作

  • 一个游戏是一个 npm 包,里面有游戏文件、游戏清单 game.json、说明、封面和截图。它同时是一个不带任何代码的 DSH 插件,所以 DSH 的插件管理器能安装和卸载它。
  • 目录在 GitHub 上。catalog/games/<id>.json 指向一个游戏包的确切版本和校验值。上架、更新、下架都是改这个文件的 Pull Request。
  • CI 检查每个 Pull Request:条目格式、npm 上的校验值、游戏包的结构、说明、图片、大小、许可证。只下载,不运行。
  • 网站是静态的,从目录生成,同时生成商店读的 catalog.json。
  • 商店只装目录里登记的版本,装前装后各核对一次校验值。
  • 每个游戏在自己的本地地址里运行,占满窗口,碰不到 DSH 的数据;默认不联网,要联网得在清单里声明服务器。
  • 网站上也能玩:每个游戏在自己的子域名 <id>.play.dsh-game-store.com 里运行。
  • 插件工坊:一切皆插件。给游戏做的扩展(地图、指挥官、语言包……)也是 npm 包,登记在 catalog/workshop/<游戏>/,在游戏页的“插件工坊”里安装、启用、停用。见插件工坊说明。
  • 自动合并:只动自己的条目、账号是仓库主人、检查全过的 Pull Request 不用等人。日常巡检的安排见免维护方案。
  • 留言板用 GitHub issue,账号就是 GitHub 账号。

安全方面做到了什么、做不到什么,见规范第 9 节。

开发

没有构建步骤,没有依赖。需要 Node.js 22 以上。

npm test
node scripts/check-catalog.mjs
node scripts/patrol.mjs
node site/build.mjs

网站生成在 site/dist/(同时生成 vercel.json)。本地预览:

npx serve site/dist

游戏包还没发布到 npm 时,在 catalog/local.json 里写 { "包名": "本地 tarball 路径" },检查和生成脚本会用本地文件(校验值照样比对)。

部署网站(已经连到 Vercel 项目 dsh-game-store):

node site/build.mjs && cd site/dist && vercel deploy --prod --yes

发布插件前运行 node site/build.mjs --snapshot,更新插件自带的那份目录(catalog-snapshot/)。

在 DSH 里测试要用独立的家目录,做法和 DSH 的各项结论记在 docs/dsh-research.md。

许可证

商店的代码用 MIT 许可证。目录里每个游戏有自己的许可证,写在游戏页上。