10086ggqq/dsh_theme_Minecraft
把 DeepSeek Harness 变成 Minecraft Java Edition 风格——WebGL 旋转全景主菜单、存档式会话选择、四种游戏模式对应 Agent 预设、世界内 HUD 聊天台、像素风工具卡片与审批面板、AI 思考时触发跑酷小游戏、8-bit 合成音效与自定义背景音乐、五类互动桌宠与红石粒子特效。零侵入 DSH 核心源码,经典界面一键切回。
Project Overview项目介绍
dsh-theme-minecraft is a DSH theme plugin that wraps the web interface in Minecraft Java Edition visuals. It maps sessions to world saves and four gameplay modes to the standard, ptc, minimal, and cordis presets. The main menu, in-world chat, tool cards, approval pop-ups, and villager clarifying questions are all rendered from real DSH JSON-RPC and WebSocket calls, and AI thinking triggers a T-Rex runner mini-game. Use it when you want a gamified, pixel-art skin for your coding agent. Requires Node.js ^22.19 or >=24 and a valid DEEPSEEK_API_KEY. Minecraft name and assets belong to Mojang / Microsoft; non-commercial use only.
dsh-theme-minecraft 是 DSH 主题插件,把 Web 界面改造成 Minecraft Java 风格:会话变为世界存档,四种模式对应 standard、ptc、minimal、cordis 预设;主菜单、世界内聊天、工具调用、审批弹窗、村民提问等均通过 DSH 真实 JSON-RPC / WebSocket API 渲染,AI 思考时还会触发小恐龙跑酷小游戏。适合喜欢像素风格、想为编码 Agent 增添游戏化体验的开发者使用。需注意:依赖 Node.js ^22.19 或 >=24,需配置 DEEPSEEK_API_KEY,Minecraft 名称与官方素材版权归 Mojang / Microsoft,仅限非商用。
请帮我了解并安装插件:【dsh_theme_Minecraft】【https://github.com/10086ggqq/dsh_theme_Minecraft】
Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。
Or use CLI install (for developers)或使用命令行安装(适合开发者)
CLI Install命令行安装
dsh plugin --profile web add dsh-theme-minecraft
把 10086ggqq/dsh_theme_Minecraft 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-theme-minecraft
把 DeepSeek Harness 变成一个像 Minecraft Java Edition 一样使用的 AI Coding Agent —— 打开 dsh web,第一眼不是「AI 编程工具」,而是「我打开了 Minecraft,这个世界里住着一个 AI」。
工作原理:本主题是一个标准 DSH 插件(bundle),不修改 DeepSeek Harness 任何核心源码。 会话、消息流、工具调用、审批、预设、工作区、凭据等真实能力全部通过 DSH 现有 JSON-RPC / WebSocket API 完成,界面上的每一帧状态都有真实数据来源,没有任何伪造。
✨ 功能特性
- 原版主菜单 —— WebGL 旋转全景 + 像素 Logo + 黄色闪字 + 石板按钮,
dsh web打印的 URL 打开即是 - 会话即世界存档 —— 「继续对话」渲染成存档选择页,重命名 / 归档 / 刷新都走真实
session/*调用 - 模式选择 = Agent 预设 —— 生存 / 创造 / 冒险 / 专家四张像素皮肤,对应 DSH 的 standard / ptc / minimal / cordis 预设
- 世界内聊天台 —— Steve 与「AI him」对话:流式输出、思考过程可折叠、模型 / Token / 工作区实时面板
- 工具调用卡片 —— 📖 打开书、⚙️ 红石机关、⛏️ 挖掉方块……每个真实
tool/call/tool/result都有像素皮肤 - 危险操作审批 —— 审批面板弹出时跑酷小游戏自动暂停,允许 / 拒绝后恢复(
approval/requestwaterfall) - 村民提问 —— AI 的澄清问题以村民对话气泡呈现,回答直接回流 DSH(
user-questions/request) - AI 思考跑酷 —— Chrome 离线小恐龙跑酷(T-Rex Runner,Chromium BSD 许可)只由真实 THINKING / STREAMING / TOOL_CALLING 状态驱动,空闲时绝不假装在思考
- 五页设置中心 —— 游戏 / AI / 世界 / 音频 / 视觉:设置存 localStorage,音乐存 IndexedDB,API Key 存 DSH 凭据库
- 音效与音乐 —— WebAudio 合成 8-bit 音效,支持导入自己的背景音乐(MP3 / WAV / OGG / FLAC / M4A / AAC / OPUS)
- 桌宠与粒子 —— 互动桌宠(美西螈/猫/狼/苦力怕/恶魂,支持喂食、好感度、图鉴换宠)+ 经验球 / 红石粒子(限量 80 粒),独立开关
- 零侵入 —— 经典 DSH Web 界面原样保留,
/index.html一键切回
📦 安装与使用
1. 环境要求
| 依赖 | 要求 |
|---|---|
| Node.js | ^22.19 或 >=24(DeepSeek Harness 运行要求) |
| DeepSeek Harness | 已安装,且 dsh 命令可用 |
| 浏览器 | 支持 WebGL 与 WebSocket 的现代浏览器 |
| DEEPSEEK_API_KEY | 真实对话必需,见下方「配置」步骤 |
2. 安装主题
方式一:安装到 web profile(标准用法)
dsh plugin --profile web add dsh-theme-minecraft # npm 发布后
dsh plugin --profile web add ./dsh-theme-minecraft # 或本地目录安装
安装后插件进入 ~/.dsh/profiles/web,随 dsh web 自动挂载,无需其他步骤。
方式二:仓库内源码运行(开发调试)
在 DeepSeek Harness 仓库根目录执行:
pnpm dsh web --patch ./dsh-theme-minecraft/cordis.source.patch.yml --no-open
# 浏览器打开 http://127.0.0.1:3080/
3. 配置
- 登录:使用
dsh web打印的带?token=的 URL 完成登录(与原版一致的签名 Cookie 流程,主题复用了connection.authorizeIndex,没有绕过任何认证)。 - API Key(二选一):
- 主题内:主菜单 → 设置… → AI 设置 → 保存(走
credentials/set写入 DSH 凭据库,值只进不出); - 环境变量:在
.env里提供DEEPSEEK_API_KEY。
- 主题内:主菜单 → 设置… → AI 设置 → 保存(走
4. 启动
dsh web
打开终端打印的 URL,即看到 Minecraft 主菜单。想回到经典界面,直接访问
http://<host>:<port>/index.html。主菜单的「模型选择」可切换新对话使用的模型
(session/modelCatalog 列出部署内全部可路由提供方,含非 DeepSeek 厂家;选择经
session/selectModel 安装到新会话)。
🛠 技术栈
| 技术 | 用途 | 版本 / 兼容范围 |
|---|---|---|
| JavaScript(ESM) | 插件与前端全部逻辑,零运行时依赖 | ES2022+ |
| Node.js | 宿主运行环境 | ^22.19 或 >=24 |
| Cordis 插件框架 | 插件生命周期与依赖注入 | >=0.x(peer 依赖) |
| WebSocket + JSON-RPC | 与 DSH 的全部真实通信(RPC / 流 / 事件) | DSH 内置 API |
| WebGL | 主菜单全景立方体贴图 | 浏览器原生(无 three.js) |
| Canvas 2D | AI 思考跑酷小游戏渲染(iframe 内 T-Rex) | 浏览器原生 |
| Web Audio API | 8-bit 音效合成与背景音乐播放 | 浏览器原生 |
| IndexedDB / localStorage | 设置与音乐文件持久化 | 浏览器原生 |
📁 项目结构
dsh-theme-minecraft/
├── .github/
│ └── workflows/
│ └── static.yml # GitHub Pages 自动部署(demo/ 素材演示站)
├── demo/ # Minecraft-Panorama 素材演示站(GitHub Pages)
│ ├── index.html # 主菜单演示(three.js 高清全景背景)
│ ├── 404.html # Pages 404 页面
│ ├── asset/ # 全景立方体贴图 6 张 + 界面素材
│ ├── css/ # 演示站样式与像素字体
│ ├── figure/ # 角色头像(Steve / 村民 / 苦力怕)
│ ├── loading/ # 加载地形页演示
│ └── worlds/ # 选择世界页演示
├── docs/
│ └── 开发文档.md # 主题设计开发文档
├── screenshots/ # README 演示截图
├── web/ # 主题本体(单页应用)
│ ├── index.html # SPA 外壳
│ ├── manifest.webmanifest # PWA 清单
│ ├── css/
│ │ ├── minecraft.css # 主菜单 / 存档页 / 设置页视觉
│ │ └── hud.css # 游戏 HUD
│ ├── fonts/ # Minecraft 风格像素字体(ttf / woff)
│ ├── assets/ # 官方素材:全景图、GUI、头像
│ ├── js/
│ │ ├── rpc.js # 浏览器协议客户端(unary RPC + 流 + $events)
│ │ ├── panorama.js # 原生 WebGL 立方体贴图全景
│ │ ├── menu.js # 主菜单 / 存档 / 模式 / 设置
│ │ ├── world.js # 游戏 HUD、AI 状态机、审批与提问面板
│ │ ├── store.js # localStorage 设置 + IndexedDB 音乐
│ │ ├── audio.js # WebAudio 合成音效 + 背景音乐
│ │ ├── particles.js # 经验球 / 红石粒子(限量 80 粒)
│ │ ├── pet.js # 桌宠(iframe 挂载 web/pet/pet.html)
│ │ ├── ui.js # 对话框 / toast / 闪字库 / 模式风味命名
│ │ └── main.js # 路由与启动
│ ├── pet/ # 桌宠应用本体(pet.html + picture/ 素材)
│ └── mini-games/
│ ├── dino-runner.js # 跑酷封装(T-Rex iframe 适配,createDinoGame 工厂)
│ └── t-rex/ # Chrome 离线小恐龙跑酷本体(Chromium BSD 许可)
├── index.js # Host 插件:注册 / 与 /minecraft 两条路由
├── cordis.patch.yml # bundle 层挂载声明(DSH 插件标记)
├── cordis.source.patch.yml # 仓库内源码调试层
├── package.json # dsh.bundle.patch 声明(bundle 形态)
├── LICENSE # MIT
├── .gitignore
├── README.md
└── README_EN.md
📸 效果截图
主菜单 —— 下界全景旋转背景,黄色闪字是每个玩家的 reminder:

世界存档 —— 历史会话渲染为存档卡片,可直接进入、重命名或刷新:

模式选择 —— 四种游戏模式即四种 Agent 预设,右侧是 DSH 真实描述:

世界内对话 —— Steve 与「AI him」聊天,AI 思考时弹窗出现小恐龙跑酷小游戏:

工具与思考过程 —— 工具调用卡片、可折叠思考过程、完成时的经验球粒子:

设置中心 —— 游戏 / AI / 世界 / 音频 / 视觉五个标签页:

仓库另带一个独立的 three.js 全景演示站(
demo/目录,即 Minecraft-Panorama 素材站), push 到 main 后由 GitHub Pages 自动部署;主题本体不依赖 three.js,全景由原生 WebGL 实现。
📄 License 信息
本项目以 MIT 协议开源。
⚠️ 素材版权说明:
Minecraft名称与官方素材(全景图、GUI 贴图、角色头像、像素字体) 版权归 Mojang AB / Microsoft 所有,本项目仅作非商用粉丝主题使用。请勿将本仓库用于 商业产品;如需移除,Mojang 可随时提出要求。
🤝 贡献指南
欢迎 Issue 与 PR!为提高协作效率,请遵循以下约定。
提交 Issue
- Bug 报告请包含:
- 环境信息:操作系统、浏览器及版本、Node.js 版本、DeepSeek Harness 版本;
- 复现步骤(从哪条命令开始)、期望行为、实际行为;
- 浏览器控制台与
dsh web终端日志截图。
- 功能请求请说明:想解决的场景、期望的 Minecraft 表现形式、对应的 DSH 能力(若已知)。
提交 Pull Request
1. Fork 本仓库
2. 新建分支 git checkout -b feat/your-feature # 或 fix/your-fix
3. 提交变更 git commit -m "feat: 支持 xxx" # 遵循 Conventional Commits
4. 推送并建 PR Push 到你的 Fork,向 main 分支发起 Pull Request
5. 等待 Review 按评审意见修改,通过后由维护者合并
注意事项:UI 变更请附改动前后的截图;请勿在 PR 中引入对 DeepSeek Harness 核心源码 的修改——主题能力只应通过 DSH 现有插件机制与 API 实现。
flizzywine/dsh-tavern
Ayase34/gal-view
Jimmy0123-ux/dsh-token-pet
lhh010/dsh-ui-whale
JAdpp/dsh-whale-galgame
Yuuhann1999/dsh-bloub-mood
mengyun233/dsh-codex-pet