dsh-novel:小说创作台

DSH 插件生态中,长篇小说创作依赖明确的设定和进度管理。dsh-novel 解决了这一点:它给 Agent 提供了 5 个 novel_* 工具,同时也提供了一个宿主原生席位面板,用于管理大纲、角色关系、剧情任务和章节进度。

核心功能

该插件将工作流分为两部分:一部分供 Agent 调用工具进行创作,另一部分供人类用户管理项目结构。

Agent 工具
给 Agent 提供 5 个工具,用于读写设定和正文:
* novel_list:列出所有小说及其章节、角色数。
* novel_read:读取设定文件(设定.json)、大纲、世界观、人物卡或特定章节正文。
* novel_context:一次取全「续写下一章」所需的完整上下文(包含设定、大纲、世界观、角色关系及最近章节)。
* novel_save_chapter:保存章节,文件名自动按章节编号。
* novel_cast:读取、增删改角色与人物关系。

宿主原生席位面板
为用户提供可视化的管理界面:
* 开书向导:支持模板补全,支持先开书再慢慢补全设定。
* 小说库:记住每本小说的阅读进度,支持搜索、排序和切换。
* 角色关系图:支持力导向布局,可上传图片头像。
* 剧情任务栏:管理情节点、挂载章节、卷纲领,支持手动标记完成。
* 一键续写 + 流式直播:模型生成时实时显示在面板上。
* 导出功能:支持导出 EPUB 和 Word 格式。

安装

在终端执行以下命令安装:

dsh plugin --profile web add github:wbb316/dsh-novel

安装完成后,重启 DSH Web 进程以使插件生效:

dsh web

使用示例

在对话中调用 Agent 时,可以使用以下方式调用工具:

  • 使用 novel_context 获取续写下一章所需的完整上下文:
    { "tool": "novel_context", "novel": "小说名", "chapter_count": 3 }
  • 使用 novel_save_chapter 保存章节,文件名会自动编号:
    { "tool": "novel_save_chapter", "novel": "小说名", "content": "本章正文..." }
  • 使用 novel_cast 增删改角色和关系,或上传头像:
    { "tool": "novel_cast", "novel": "小说名", "addCharacters": [{ "name": "角色名", "role": "配角" }] }

系统要求与注意事项

  • DSH 版本:要求 >= 0.2.0-rc.1。
  • Node 版本:要求 >= 20。
  • 老宿主兼容:老版本宿主若无原生席位,面板会退回到 dsh-better-sidebar 页签。
  • 删除机制:删除操作为移入回收站,非真删除。
  • 改名风险:改角色名会进行全文替换,操作前需确认。单个字的名字不进行全文替换。

总结

dsh-novel 通过结构化的数据管理(JSON 设定、角色关系、剧情表)和可视化的面板,降低了长篇小说创作中上下文维护和进度管理的难度。对于需要在 DSH 中构建小说写作流程的开发者,这是一个直接的集成方案。

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

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

小夜