gal-view:把 DSH 会话页变成 Galgame 舞台的 Web 插件

前言

DeepSeek Harness(简称 DSH)把智能体开发拆成可组合的插件层,Web GUI 负责会话、轨迹与工具调用,界面清晰但偏工程化。如果你长期在浏览器里跟 Agent 对话,偶尔会觉得「像在盯终端日志」,缺少一点沉浸感。

社区插件 gal-view(维护者 Ayase34)走了一条有趣的路:不改对话逻辑,只在 DSH Web 会话页增加一个 「GAL视窗」 标签,把同一会话渲染成 16:9 的 Galgame 舞台——立绘、大对话框、打字机台词和玩家输入框一应俱全,还自带场景可视化编辑器。该插件在 SkillHub 插件库 归类为「趣味换装」,GitHub 上约 125 stars、7 forks(截至 2026-08-25),采用 MIT 许可证。

需要说明的是:SkillHub 等社区目录由第三方维护,与 DeepSeek / 幻方无官方从属关系;安装前仍建议自行阅读仓库源码与许可证。

这是什么

gal-view 是一个面向 DSH Web profile 的官方 bundle 格式插件。它在会话标签栏(「对话」与「轨迹」之间)插入 「GAL视窗」,点击后会话区域切换为 Galgame 风格视图。

根据仓库 README 与 package.json(当前版本 0.3.3),插件定位可以概括为:

  • Galgame 风格对话视图:占位立绘、对话框、打字机效果、玩家输入,映射现有会话内容;
  • 场景可视化编辑器:内置「编辑模式」,可拖拽元素、修改属性、调整图层,编辑结果实时同步回游戏模式;
  • 默认预设场景:仓库根目录的 gal-scene.json 随包分发,首次打开且本地无存档时自动加载,「重置」也回到该预设。

Node 侧(.dsh-plugin/index.mjs)极为精简,几乎不消费宿主服务;场景状态、编辑历史等主要保存在浏览器的 localStorage / IndexedDB 中,符合「前端 Demo 形态」的设计。

核心功能与亮点

结合 GitHub README 与 SkillHub 目录信息,已核实的能力包括:

  1. 会话视图换装,不改 Agent 行为
    插件只扩展 Web GUI 的展示层,底层仍走 DSH 原有会话与轨迹数据,适合想换皮、不想动工作流的开发者。

  2. 16:9 Galgame 舞台
    打开「GAL视窗」后,界面呈现横屏游戏舞台布局,对话以打字机方式呈现,输入框对应玩家台词区。

  3. 内置场景编辑器
    编辑模式下可像轻量场景工具一样操作:拖拽、改属性、换图层;Ctrl+S 可导出场景 JSON,便于备份或贡献默认预设。

  4. 本地持久化
    场景布局、素材图片、字体与阅读进度存在浏览器侧。README 明确说明:重装或卸载插件不会丢失这些数据;只有清除浏览器站点数据才会重置。

  5. 社区验证与关注度
    SkillHub 标记为 verified 可安装;GitHub topics 含 deepseek-harnessdsh-plugin,说明面向 DSH 生态,而非独立前端项目。

安装与启用

前置条件

  • 本机已安装 DeepSeek Harness,终端可执行 dsh 命令;
  • 目标环境使用 Web GUI(插件通过 --profile web 安装);
  • 若从 Harness 源码 checkout 运行(日常用 pnpm dsh),需先 cd 到仓库根目录,并将下文命令中的 dsh 替换为 pnpm dsh

从 GitHub 安装

仓库 README 给出的官方安装命令如下(#main 表示跟踪 main 分支;也可换成具体 commit 哈希以锁定版本):

dsh plugin --profile web add github:Ayase34/gal-view#main

安装完成后必须重启 Web——bundle 层在启动时合成,不重启不会加载新插件。重启后打开 Web GUI 会话页,标签栏应在「对话」与「轨迹」之间出现 「GAL视窗」

可选验证:执行下列命令,输出中若能看到 # == gal-view 层,说明插件已进入组合配置。

dsh --profile web --dump-config

更新与卸载

# 更新到新版本(更新后同样需要重启 web)
dsh plugin --profile web update gal-view

# 卸载(卸载后同样需要重启 web)
dsh plugin --profile web remove gal-view

典型用法示例

1. 切换 GAL 视窗

  1. 启动 DSH Web GUI,打开任意会话;
  2. 在标签栏点击 「GAL视窗」(位于「对话」「轨迹」之间);
  3. 会话内容以 Galgame 舞台呈现,可照常阅读 Agent 回复并通过底部输入区发送消息。

2. 使用编辑模式定制场景

  1. 在 GAL 视窗内进入「编辑模式」;
  2. 拖拽立绘、对话框等元素,在属性面板调整位置、图层与样式;
  3. 满意后按 Ctrl+S 导出场景 JSON;若要为仓库贡献默认预设,可用导出文件替换根目录 gal-scene.json,再执行 npm run build:client 并提交(面向插件贡献者)。

3. 恢复默认预设

本地尚无自定义存档,或希望放弃当前编辑时,可使用编辑模式下的「重置」,回到仓库自带的 gal-scene.json 默认场景。

适用场景与注意事项

适合谁用

  • 经常在 DSH Web 里长时间对话、演示或录屏,希望界面更有「视觉剧」感的开发者;
  • 做 Galgame / 视觉小说风格 Demo、教学展示,需要快速把 Agent 会话包装成游戏 UI 的场景;
  • 愿意动手调场景 JSON、换立绘与字体,做个性化「会话皮肤」的用户。

注意事项

  1. 仅作用于 Web profile
    安装命令带 --profile web;TUI 或其他 profile 不会自动获得该视图。

  2. 安装后务必重启 Web
    这是 bundle 插件的加载机制要求,漏掉重启是最常见的「装了却看不到标签」原因。

  3. 数据在浏览器本地
    换机器或换浏览器不会自动同步场景;重要定制建议用 Ctrl+S 导出 JSON 备份。

  4. 安全与权限
    DSH 插件以当前 dsh 进程权限运行;尽管 gal-view 的 Node 半部分几乎无宿主行为,安装任何社区插件前仍应阅读源码、确认许可证(本插件为 MIT),并只从可信仓库安装。

  5. 能力边界
    这是界面换装与场景编辑插件,不提供模型推理、工具调用等新能力;Agent 能力仍取决于你所用的 DSH 配置与其它插件。

结语

如果你已经用 DSH 跑通 Web 会话,又想让界面从「工程面板」变成「Galgame 舞台」,gal-view 是目前社区里定位清晰、安装路径简单的一条路:一行 dsh plugin 命令、重启 Web、点「GAL视窗」即可体验。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜