dsh-diceframe:DSH AI 跑团插件

DeepSeek Harness (DSH) 是一个插件化系统。默认情况下,AI 更多扮演对话者而非主持人。dsh-diceframe 填补了这一空白,为 DSH 添加了骰子、检定判定、世界书和角色卡,以便 AI GM 能够主持结构化的 TRPG 会话,而不是无结构的闲聊。

环境要求

  1. 已安装 DSH CLI (dsh)。
  2. Node.js ≥ 22。

安装

使用官方安装命令添加插件:

dsh plugin --profile <名字> add dsh-diceframe

核心功能

骰子与检定

插件提供两个核心工具:roll_dice 和 resolve_check。

  1. roll_dice 工具
    - 支持常见骰子格式:3d6、d20、d100、3d6+2。
    - 支持高级规则:2d20kh1(优势)、2d20kl1(劣势)、4d6dl1。
    - 支持特殊机制:1d6!(爆炸骰)。
    - 提供加密随机数生成与逐骰明细。

  2. resolve_check 工具
    - 支持模式:d100、d20、求和。
    - 包含判定结果:大成功、成功、失败、大失败,以及判定 margin。

世界书与角色卡

  • 支持 Markdown 格式的世界书与键值格式的角色卡。
  • 支持将内容注入系统提示词,作为 AI 主持的依据。

DiceFrame 互通

插件支持直接导入 DiceFrame 生态内容,无需转换。

  • 单个文件导入:支持单个世界书 JSON 或角色卡 JSON,自动识别路径。
  • 内容包导入:支持导入包含 plugin.json 的整个内容包目录,一键全量导入(含 worlds、characters、npc、items、spells、classes、rules)。

斜杠命令与会话状态

  • 斜杠命令:
  • /trpg:开团,GM 会用已加载世界书的「起始场景」直接开场。
  • /roll:掷骰,直接执行不经过模型。
  • /check:检定,直接执行不经过模型。
  • /state:查看当前桌台状态。
  • 会话状态追踪:通过 table_state 与 table_update 工具,记录世界、玩家角色卡、NPC、场景与先攻顺序。

存档互通

插件实现了 DiceFrame 与 DSH 之间的关键状态搬运。

  • 导入:使用 save_import 工具,可读取 DiceFrame 的 state.json 或可移植 zip,将世界、角色、场景载入当前会话。
  • 导出:使用 save_export 工具,将当前进度导出为 DiceFrame 可识别的存档格式(state.json + chatlog.jsonl + zip)。

配置

在 profile 的 cordis.patch.yml 中配置六个独立插件行(dsh-diceframe/dice、gm、lore、commands、table、save)。

通用配置示例:

- id: dsh-diceframe-lore
  config:
    enabled: true
    world_book: |
      ## 迷雾王国
      大陆被永雾笼罩,只有灯塔之城仍有人烟。
    character_card: |
      姓名: 艾琳
      职业: 游侠

注意事项

  • 纯 ESM、无构建步骤,运行时零依赖(仅 Node 核心与自身模块)。
  • 不内置任何第三方/IP 同人内容包。
  • 仅搬运关键状态(世界/角色/场景/历史)互通,非完整机制复刻。

参考资料

  • 插件目录:https://www.skillhub.cn/plugins/diceframe/dsh-diceframe
  • GitHub 仓库:https://github.com/diceframe/dsh-diceframe
羽毛球分组比赛记分
小程序二维码

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

小夜