确定性时间轴
音符驱动的彩带与冲击来自共享时间线,绝不依赖 Math.random();环境微粒使用种子随机数,暂停、拖动、重播始终保持稳定的氛围。同一段乐谱,每一次都演奏得一模一样。
vibe coding 累了,让 Agent 弹一首钢琴。它弹得多好,就是模型的本事。
模型要读懂乐谱、算准节奏、安排好踏板。因为确定性时间轴,同一份乐谱,每次都是同一张考卷。
音符驱动的彩带与冲击来自共享时间线,绝不依赖 Math.random();环境微粒使用种子随机数,暂停、拖动、重播始终保持稳定的氛围。同一段乐谱,每一次都演奏得一模一样。
基于真实采样钢琴的多层力度,配合离线预载,播放即刻响应。
Sample-Based · Multi-Velocity琴身离线预渲染成静态图层,琴键缓存精灵;每帧只动画键位、彩带与冲击,帧成本恒定。
Sprite Cache · Opaque Static Layer落键化作流星、涟漪与金光;雾霭、水面倒影、胶片颗粒、流星雨随能量呼吸。
Comets · Reflection · Mist · Grain一个 <dsh-piano-view> 元素即可接入 DeepSeek Harness。设置乐谱、选择皮肤、请求沉浸式舞台,剩下的交给引擎。长段落可用紧凑音符对象,显著降低工具调用延迟。
皮肤是纯数据,材质、灯光与氛围都是令牌。渲染器只负责几何,新皮肤永远不会要求新的渲染分支。
黑色高光音乐会三角琴,立起琴盖,暖金内饰与金饰硬件。深色舞台之上,金色音板在落键时泛起鎏光。
珍珠白琴身配玫瑰金细节,樱花天之下漂浮着音符。轻雾与蜜桃地平线光,让演奏温柔而透亮。
npm 安装后注册 Web Component、设置乐谱即可演奏。DeepSeek Harness 用户把包装进 active profile 即可。
# 1 · 安装
npm install dsh-pianist
# 2 · 注册 Web Component,设置乐谱与皮肤
import { registerDshPianoView } from "dsh-pianist/demo";
registerDshPianoView();
const piano = document.querySelector("#piano");
piano.setPianistSettings({ skin: "lacquer-gold", renderMode: "immersive" });
piano.setScore(score);
piano.requestImmersive();
# 3 · 紧凑音符对象降低工具调用延迟
{ p: ["C4", "E4", "G4"], s: 0, d: 1, h: "r", v: 0.8 }
dsh-pianist 演奏短片已经上线:点击即可观看完整演奏。
Showreel · 点击播放
演奏短片已就绪
dsh-pianist 是 DeepSeek Harness 的钢琴插件。vibe coding 累了,让 AI 弹一首放松;它弹到什么水平,也是模型能力的一次测验。是玩具,也是考卷。
弹琴要求模型一次执行整段乐谱:读准音高、算准节奏、安排好力度与踏板。dsh-pianist 用确定性时间轴,同一份乐谱每次都是同一张考卷,模型的本事一弹便知。
The renderer is skin-driven: every color, material and atmosphere flag comes from a pure-data PianoSkin. The renderer owns geometry; skins own material, lighting and atmosphere tokens. New skins never require a new render branch.
Two families: 曜黑鎏金 Lacquer Gold, a black high-gloss concert grand with gold hardware; and 樱花珍珠 Sakura Pearl, a pearl-white grand with rose-gold details beneath a soft sakura sky.
Yes. Note-generated ribbons and impacts come from a shared timeline, never Math.random(); ambient motes use a seeded RNG, so pause, seek and replay keep a stable atmosphere.
Build the package with pnpm, import registerDshPianoView from the demo bundle, register it, then set a score and call requestImmersive. The README documents the full API.
交流用法、反馈问题,把模型弹的曲子发进来。扫码加入微信交流群。
微信交流群二维码
即将上线
微信扫码 · 交流与反馈