NovelNovel:用工作区文件写小说

DeepSeek Harness (DSH) 的理念是“一切皆插件”。在 Agent 开发中,处理非结构化数据(如小说章节、角色卡、世界观设定)通常需要手动维护文件。NovelNovel 旨在解决这一痛点:它将小说创作的核心逻辑(项目管理、章节管理、角色卡、世界观词条)封装为工具,直接操作工作区内的普通文件,让 Agent 专注于内容生成,而非文件管理。

功能

插件提供了 novel_* 系列工具,覆盖从项目初始化到内容生成的全流程:

  • novel_project:作品管理。支持新建、列表、详情、改设定(简介、世界观、写作要求、全书梗概、全书目标字数)、切换当前作品、删除。
  • novel_chapter:章节管理。支持列表(分页、精简)、读取、新建(可带目标)、追加(写正文)、覆写、改名、打标签、写本章目标与摘要、排序、检索、删除。
  • novel_character:角色卡管理。支持 SillyTavern 角色卡(PNG/JSON,V1/V2/V3)的导入、查看、参与开关、再导出 PNG、移除。
  • novel_source:资料源管理。支持导入现代社区卡或独立世界书,自动拆解并按通道分类(设定、文风、规则、状态、档案、素材),可注入的并入世界书并记录来源,状态与素材只读保留。支持列表、详情、启用/停用,以及世界书浏览。
  • novel_lorebook:世界观词条维护。支持带关键词匹配(命中才注入)和无关键词或 constant 常驻注入的词条管理。
  • novel_state:状态层管理。提供 MVU 兼容的变量树,支持查看、用资料源 [initvar] 初始化、手工 set/apply(JSON Patch)、查看变更日志。
  • 侧栏面板:提供一个类似书籍阅读器的界面,支持直接修改磁盘上的 Markdown 原文、章节拖拽排序、查看字数与体量条。

安装与启用

目前插件尚未发布到 npm,需从本地 tarball 安装。

dsh plugin --profile web add ./dsh-novelnovel-0.1.0.tgz

注意事项:
* 必须重开:插件注册表只在应用启动/插件层变动时构建一次,安装后必须重开才会生效。
* 不支持 Git 安装:不支持 dsh plugin add github:owner/repo,需先构建产物。
* 桌面端安装:桌面端需使用应用自带的 CLI wrapper(通常位于 <安装目录>\resources\runtime\cli\bin\dsh.cmd),且安装前需完全退出应用以更新 profile 清单。

典型用法

在安装了该插件的 profile 中开启会话,Agent 会根据系统提示词使用相应的工具。你可以直接用自然语言下达指令,例如“写第三章”或“查看当前作品列表”。

注意事项

  • 开发环境隔离:桌面端半边是 fail-closed 的:如果包声明了 dsh.client 但产物读不到,宿主启动时会同步抛错,导致所有客户端插件(含首方 UI)一起加载不出来。建议使用专用 profile(如 nn)进行开发迭代。
  • 桌面端工作区根:桌面端的工作区根 = 那次会话选定的目录。在小说目录开会话,数据才会落在那里。
  • 文件冲突:侧栏面板直接修改磁盘上的 Markdown 原文。如果另一窗口或模型在编辑期间修改了同一章节,保存会明确失败,提示重新加载。
  • 旧版依赖:工作树里不要留 node_modules/@deepseek-ai/* 的旧版本副本,解析链一旦命中它,插件就会加载第二份 harness。
  • 面板初始化:面板显示“尚未确定工作目录”是设计如此,需先让模型调用一次 novel_* 工具建立上下文。

链接

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

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

Xiaoye