Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
工具与能力 #deepseek-harness#deepseek-harness-plugin#dsh-floating-tetris#floating-tetris

dsh-floating-tetris

🕹️ DeepSeek Harness Web 端的悬浮毛玻璃俄罗斯方块 — 宿主常驻 Cordis 客户端插件,支持深浅色主题、最近 10 局排行榜、键盘/屏幕双操控。实测版本:@deepseek-ai/dsh 0.1.2-rc.1。

leeguanwei-a @leeguanwei-a ⬇ 2 ★ 0 master

安装

dsh plugin --profile web add github:leeguanwei-a/dsh-floating-tetris
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

🕹️ DeepSeek Harness Web 端的悬浮毛玻璃俄罗斯方块 — 宿主常驻 Cordis 客户端插件,支持深浅色主题、最近 10 局排行榜、键盘/屏幕双操控。实测版本:@deepseek-ai/dsh 0.1.2-rc.1。

该插件未提供要点说明,请参考仓库 README。

deepseek-harnessdeepseek-harness-plugindsh-floating-tetrisfloating-tetris
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/leeguanwei-a/dsh-floating-tetris
许可证MIT
主要语言master
下载量2
GitHub 星标0
最近推送2026-09-07
收录日期2026-09-19
分类工具与能力

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# 🕹️ dsh-floating-tetris — DeepSeek Harness 悬浮俄罗斯方块

![screenshot](pic.png)

在 **DeepSeek Harness Web GUI** 上运行的毛玻璃风格、可拖动的悬浮俄罗斯方块,宿主常驻 Client 插件。**安装一次,Web 会话始终可用**——无需每会话 `cordis_define` / `cordis_run`。

功能:
- ☀️/🌙 深浅色主题切换
- 🏆 最近 10 局排行榜(按分数降序,localStorage 持久化,可清空)
- ▁ / ✕ 收起为标题条(自动暂停)、□ 还原
- 键盘全局操控 + 屏幕按钮双输入

## ✅ 运行环境(版本标识)

| 组件 | 版本 |
|---|---|
| `@deepseek-ai/dsh`(Harness CLI / Web GUI) | **`0.1.2-rc.1`**(开发与实测版本) |
| Web GUI 地址 | `http://127.0.0.1:3080` |
| 宿主接口依赖 | `shell.overlay`、`sidebar.footer.action`、`timer`(`inject: ['timer']`) |
| 插件形态 | **Host-resident Client Plugin**(node 半区空 apply + 浏览器半区 `./client`) |

> ⚠️ `dsh.client` 元数据 + `window.__ModuleLoader__.load` 浏览器产物 + 宿主组合行扫描机制**绑定本版本 harness**。新版本装配前请核对三个插槽名、`timer` 契约与 `dsh-client-modules` 的 roster 扫描约定。

## 🚀 安装(一条命令)

本仓库根目录就是 npm 包,`lib/` 已构建并提交,可直接从 GitHub 安装:

```sh
dsh plugin --profile web add github:LeeGuanWei-a/dsh-floating-tetris
```

等价于在 profile 目录执行 `pnpm add github:LeeGuanWei-a/dsh-floating-tetris`。安装时 `dsh.bundle.patch`(`cordis.patch.yml`)会把插件行自动插入 profile 层叠:

```yaml
# cordis.patch.yml(包内自带,自动应用)
- insert:
    - id: dsh-floating-tetris
      name: 'dsh-floating-tetris'
```

重启 Web 后,悬浮窗随页面出现。

**回滚**:

```sh
dsh plugin --profile web remove dsh-floating-tetris
```

## 📦 仓库结构

```
dsh-floating-tetris/
├── package.json          # npm 包:dsh.bundle.patch + dsh.client 元数据 + exports
├── cordis.patch.yml      # 自注册插件行(安装自动插入 profile)
├── src/                  # 可读源码
│   ├── index.js          # node 半区:空 apply(纯 UI 插件)
│   └── client.js         # 浏览器半区源码:引擎 + UI + inject/apply
├── lib/                  # 已构建产物(提交在仓库,克隆即装)
│   ├── index.js          # node 半区(= src/index.js)
│   └── client.js         # 浏览器半区(ModuleLoader.load 注册形态)
├── scripts/build-lib.mjs # src → lib 构建脚本(改源码后 npm run build)
├── README.md / LICENSE / pic.png
```

`src/client.js` 是唯一的游戏实现源(无 TS、无 JSX、仅依赖 `react`)。修改后:

```sh
npm run build   # 重新生成 lib/,记得一并提交
```

## 🎮 操作方式

| 键盘 | 屏幕按钮 | 操作 |
|---|---|---|
| `←` / `→` | ← → | 左右移动 |
| `↓` | ▼ | 软降(+1/格) |
| `↑` 或 `X` | ↻ | 旋转(带墙踢) |
| `Z` | — | 反向旋转 |
| `空格` | ⤓ | 硬降(+2/格) |
| `P` | Ⅱ | 暂停 / 继续 |

窗口标题栏:`▁`/`✕` 收起为标题条(自动暂停)、`🏆` 排行榜、`☀️/🌙` 深浅色;标题条上 `✕` 才是彻底隐藏(从侧栏或凭窗口状态恢复)。

键盘在悬浮窗打开期间**全局生效**,输入框 / 文本框打字不受干扰。

> 注:`sidebar.footer.action` 入口可能与宿主自带的 `cordis-panel` 同行而显得拥挤;主恢复路径依赖窗口自带收起/还原(收起后仍保留可见标题条)。

## 🏆 排行榜规则

- 每局 Game Over 自动记录 `{ 分数, 消行, 等级, 时间戳 }`;
- 保留最近 10 局,显示按分数从高到低,本局带 `←` 高亮;
- 存储于浏览器 `localStorage`(key `dsh.tetris.records.v1`);清站点数据 / 无痕 / 换浏览器会丢(界面已注明);
- 排行榜视图可一键清空(两次点击确认)。

## 🧱 实现要点(供二次开发)

- 棋盘 10×20;7-bag 随机出块;旋转矩阵 + 简单墙踢(偏移 [0,-1,1,-2,2]);
- 计分:消 1/2/3/4 行 = 100/300/500/800;软降 +1/格、硬降 +2/格;
- 每消 10 行升 1 级,下落间隔 = `max(90, 760 - (level-1)*70)` ms;
- 游戏循环用 `ctx.interval`(timer 服务,`inject: ['timer']`);
- 渲染前 `normState` 归一化 state,防残缺数据崩溃;
- 窗口为 `position: fixed` 覆盖层(挂 `shell.overlay`),标题栏 pointer-capture 拖拽,边界限制在视口内。

## 📄 许可证

MIT。

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。