dsh-web-speech-input
leozou320-ai
Voice-to-text for the DeepSeek Harness Web UI — live, editable, never auto-sends. | DeepSeek Harness 网页语音输入
PROJECT TOPICS
PROJECT README
一个运行在 DeepSeek Harness (DSH) Web GUI 右下角的 Minecraft 主题桌面宠物——史蒂夫(Steve)、苦力怕(Creeper)与奥特曼(Ultraman),根据当前 Agent 的工作状态实时切换动作,并在任务完成时播放专属音效。
A Minecraft-themed desktop pet in the bottom-right corner of the DSH Web GUI — Steve, Creeper and Ultraman react to the agent's working status with animations and per-pet completion sounds.
| 宠物 | 说明 | 皮肤 |
|---|---|---|
| ⛏ 史蒂夫 Steve | 左手拿钻石镐,像素画 | 普通 / 钻石甲 |
| 💥 苦力怕 Creeper | 侧视四腿,像素画 | — |
| 🦸 奥特曼 Ultraman | SVG 矢量,红银条纹 | 初代 / 赛文 / 泰罗 / 迪迦 / 泽塔 |
| 状态 | 动作 |
|---|---|
| 待机 idle | 轻微上下浮动 |
| 工作 working | 史蒂夫挥镐、奥特曼出拳 + 踏步、苦力怕渐进变红膨胀(蓄力) |
| 完成 completed | 专属必杀 + 音效 |
| 宠物 | 必杀 | 音效 |
|---|---|---|
| 史蒂夫 | 跳跃 + 矿石掉落粒子 | 「叮叮」上行琶音 |
| 苦力怕 | 爆炸光球 + 火光粒子 | 「嘶嘶 → Boom」 |
| 奥特曼·初代 | 斯派修姆光线(蓝白光) | 变身英雄登场 |
| 奥特曼·赛文 | 冰斧投掷(旋转飞出 + 命中闪光) | 变身英雄登场 |
| 奥特曼·泰罗 | 斯特利姆光线(五彩光束) | 变身英雄登场 |
| 奥特曼·迪迦 | 哉佩利敖光线(双手十字 + 紫光) | 变身英雄登场 |
| 奥特曼·泽塔 | 泽斯蒂姆光线(双手并拢 + 蓝光) | 变身英雄登场 |
| 操作 | 效果 |
|---|---|
| 左键点击 | 切换宠物(史蒂夫 → 苦力怕 → 奥特曼) |
| 右键点击 | 打开 / 关闭设置菜单 |
| 拖拽 | 移动宠物 |
| 菜单内 | 切换皮肤、四角定位、试听音效、静音、复位、隐藏 |
dsh-minecraft-pet/
├── README.md
├── LICENSE
├── package.json
├── .gitignore
├── src/
│ ├── host.js # Host 半:Agent 状态跟踪 + Client 私有 RPC
│ └── client.js # Client 半:宠物 UI / 动画 / 音效 / 交互
└── audio/
├── generate.js # 音效生成脚本(8-bit PCM WAV 程序化合成)
├── steve.wav
├── ultraman.wav
└── creeper.wav

更多宠物(苦力怕 / 奥特曼)与三态动作(待机 / 工作 / 完成)的动图可继续补充到
assets/目录。
npm run audio 重新生成音效交付物)本插件是一个 Cordis 动态插件(Dynamic Cordis Plugin),由「Host 半」和「Client 半」组成。
src/host.js 里 createHostHalf() 返回的 { ... } 作为 Host 代码(code.host),
将 src/client.js 里 createClientHalf() 返回的 { ... } 作为 Client 代码(code.client)。cordis_define 定义插件,再用 cordis_run 激活。这两个文件为了可读性被包装成了
module.exports工厂函数;实际作为动态插件使用时, 直接取函数体内return { ... }的部分即可(host.js/client.js的return行到结尾大括号)。
agent/status 事件(idle ⇄ running),按 Agent id 精确计数,避免子代理干扰;
通过 get-status 私有 RPC 边沿触发「已完成」。shell.overlay 槽位,用纯 React.createElement + 内联 SVG 绘制像素画/矢量宠物。styles.insert 注入 CSS keyframes,对 SVG <g> 局部元素(镐子、手臂、腿)做 transform 动画。AudioContext/fetch/文件访问,因此用纯 JS 程序化合成 8-bit PCM WAV 数据 URI,
渲染 <audio> 元素播放;audio/generate.js 用同一套合成算法生成可试听的 .wav 交付物。src/client.js 里的 PETS、ULTRA_SKINS 与对应的 Art 渲染函数即可扩展,欢迎 PR。欢迎提交 Issue 和 Pull Request。
src/host.js / src/client.js(纯 JavaScript,无 TypeScript / JSX / 打包)。main 分支。本项目仅用于学习与技术演示,为粉丝致敬性质,与 Mojang / Microsoft 及圆谷制作株式会社无关。
本项目不包含任何官方素材、音频或图像资源;所有宠物造型均为代码绘制的原创近似风格,音效为程序化合成。请勿将本项目用于任何商业用途。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。