DeepSeek Harness 插件

dsh-bishu-novel

Bishu Novel 纯本地小说生产工作流引擎(移植自 DeterminFlow bishu-novel):build/character/story-plan/outline/mvp/polish/post-hoc 七条工作流 DAG(LLM agent 节点 + python 脚本节点 + 并行/条件/循环网关)+ bishu_* 工具 + writing-assistant skill。(英文原文)

跳到安装方式

来源信息

GitHub 仓库
charlesnty612/dsh-bishu-novel
最近更新
2026年8月20日
分类
自动化与任务
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/charlesnty612/dsh-bishu-novel
插件名:dsh-bishu-novel
作者:charlesnty612

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器3 个文件
README.md来源说明 · 只读预览

dsh-bishu-novel

把 DeterminFlow 的 bishu-novel 小说生产工作流引擎移植为 DSH 静态插件。 插件在宿主进程里提供 7 条本地工作流 DAG(LLM agent 节点 + python 脚本节点 + 并行/条件/循环网关), 注册 10 个 bishu_* 模型工具、若干 /api/dsh-bishu-novel/* HTTP 路由,以及一份 bishu-novel-writing-assistant 写作协作 skill。

> 同一本书的所有工作流必须使用同一个 workspace 目录;落盘文件全部在该工作区里管理。

---

致谢 / Credits

本项目是 alikon-art/DeterminFlow-Pluginsbishu-novel 工作流引擎向 DeepSeek Harness(DSH)的非官方移植插件

  • 原作工作台(DeterminFlow 引擎):<https://github.com/alikon-art/DeterminFlow>
  • 原作插件(bishu-novel):<https://github.com/alikon-art/DeterminFlow-Plugins/tree/main/plugins/bishu-novel>
  • 原作者:alikon-art

承袭范围:本仓库中 7 条工作流定义(build / character / story-plan / outline / mvp / polish / post-hoc)、agent 提示词(resources/agents.jsonresources/prompts.json)、脚本库(resources/script-library/)以及写作协作 skill 包(resources/skill-bundles/writing-assistant/)的设计与内容均来自原作;本仓库的贡献集中在 DSH 适配层——引擎移植(lib/index.js)、工作台 UI(lib/client.js)、HTTP 路由、持久化偏好与挂载声明(cordis.patch.yml)。

许可证:原作 DeterminFlowDeterminFlow-Plugins 均以 GNU Affero General Public License v3(AGPL v3)发布。本仓库根目录附带完整的 LICENSE(来自原作)与 THIRD_PARTY_NOTICE.md。本移植的发布遵循同条款;若您分发本插件或对其修改,请遵循 AGPL v3 条款。如有原作者的额外要求,请在本仓库开 issue 联系,我们会配合处理。

---

1. 安装与挂载

插件放在 DSH 的「workspace 插件目录」下,通过 cordis.patch.yml 把自己作为一行挂到宿主组合里:

  • 入口:lib/index.js(默认 package.jsonmain
  • 客户端:lib/client.js(侧边栏抽屉 UI)
  • 资源:resources/(workflows / prompts.json / agents.json / script-library)
  • 挂载声明:cordis.patch.ymlid: bishu-novel,作为一行 host 插件)

推荐安装方式(与 DSH workspace 插件安装流程一致):

1. 在 DSH 安装目录下创建 plugins/(或任何 DSH 扫描为 «workspace plugins» 的目录)。 2. 把本仓库内容符号链接(或直接拷贝)到 plugins/dsh-bishu-novel/。 3. 启动 DSH,宿主会自动加载 cordis.patch.yml 并注册 bishu-novel 这一行。 4. 平台自带的 verify-plugin.mjs 校验脚本会校验插件基本结构(package.json / lib/index.js / lib/client.js / cordis.patch.yml / resources)以及 node --check 语法。

不需要修改宿主 cordis.yml;一切挂载点都来自自身的 cordis.patch.yml

---

2. 10 个 bishu_* 工具

工具在宿主进程里通过 ctx.tools.register 注册,对所有使用 DSH 的 Agent / 主会话直接可见。 工具输出附带 JSON 渲染器,便于在 Tool 卡片里直接展示。

工具用途
bishu_list_workflows列出本地可用工作流(ID / 名称 / 版本 / 节点数 / 必填变量)。
bishu_get_workflow读取某条工作流的定义:变量、节点、网关。运行前用它核对必填项。
bishu_run_workflow在指定 workspace 启动一条工作流;返回 run_id 后异步执行。
bishu_workflow_status轮询运行进度:状态、当前节点、每节点状态与错误。
bishu_workflow_result读取已结束运行的结果:耗时、产物文件、节点终态。
bishu_approve_node审批处于「逐节点审批」模式的当前节点产出(通过 / 拒绝带反馈)。
bishu_read_artifact读取书籍工作区内的一个相对文件(设定 / 正文 / 角色档案等)。
bishu_edit_artifact写入或覆盖书籍工作区内的一个相对文件。
bishu_book_status列出书籍工作区里已存在的关键文件,用于判断当前阶段。
bishu_list_models列出 DSH 当前可用的 Provider / 模型,用于工作流模型覆盖。

---

3. 7 条工作流与推荐顺序

工作流定义位于 resources/workflows/<id>/definition.json,配套 script/*.py 节点脚本。

阶段工作流作用
建书build生成世界观、风格、叙事人设等长程设定。
建书character抽取 / 完善角色档案。
建书story-plan全书故事规划(卷级)。
建书outline卷纲 + 近纲。
章节mvp单章节内容生产(核心)。
章节polish对已有章节正文进行润色(会覆盖 story/<n>/chapter.md)。
章节post-hoc章节后验,登记伏笔 / 债务等元信息。

新书前置顺序build → character → story-plan → outline

每章推荐循环mvp → polish(可选)→ post-hoc → 下一章 mvp

  • post-hoc 必须在进入下一章前完成;若先做 post-hoc、随后润色又改变了情节事实,应重新跑该章 post-hoc;纯措辞调整不必重复。
  • polish 会覆盖 story/<章节号>/chapter.md,运行前确认已有章节正文、清空风险已向用户说明。

---

4. 工作台(侧边栏抽屉)

DSH 的 Web GUI 侧边栏出现「Bishu Novel」入口。该抽屉提供了三个 Tab:

  • 书籍:浏览 / 查看 / 编辑书籍工作区文件,检测已落盘的关键产物(与 bishu_book_status 等价)。
  • 工作流:选工作流、定稿创作参数、挑运行模型、启动运行(与 POST /api/dsh-bishu-novel/run 等价)。
  • 运行:历史运行列表(/runs),支持状态过滤、轮询状态、重做。

抽屉与后端通过 /api/dsh-bishu-novel/* 路由通信;/models/runs/approve/tree/open-workspace/pick-workspace 等端点强制 loopback-only,浏览器侧走同源代理。

---

5. 使用方式

推荐:直接在新主会话中与 Bishu Novel 对话。

普通 DSH 主会话已经具备全部 bishu_* 工具和 bishu-novel-writing-assistant skill, 用户在新会话里说一句「我想写一本……」即可由加载了 skill 的 Agent 接手:

1. 调 bishu_list_workflows / bishu_get_workflow 核对要跑的工作流与必填变量。 2. 调 bishu_book_status 看当前书籍已落到哪一步。 3. 与用户确认参数后调 bishu_run_workflow 启动;保存返回的 run_id。 4. 用 bishu_workflow_status 轮询进度;失败时先读错误与节点信息。 5. 终态后用 bishu_workflow_result 拿结果、bishu_read_artifact 看落盘文件。

工作台抽屉用于「不想打字、或想直接选参数」的浏览器侧使用方式;它是同一组工具与路由的 UI 封装, 并不是运行所必须。

---

6. 逐节点审批

启动运行时若把 approval 设为 true,每个 agent 节点产出后会暂停等待审批:

  • 工作流状态变为 awaiting_approval
  • 调用 bishu_approve_node(或同一会话里点抽屉审批按钮 / POST /api/dsh-bishu-novel/approve)决定通过 / 拒绝:

- approved=true → 通过,继续流水线。 - approved=false + feedback → 节点带反馈重新生成(最多 node.max_reject_count 次尝试)。

审批可在抽屉的「运行」Tab 中逐节点弹窗预览(首 2000 字),也可在主会话里由 Agent 总结后带反馈调用工具。

---

7. 模型选择

支持三级覆盖,优先级从高到低:

1. 节点级覆盖bishu_run_workflownode_models 字段,按 agent_type 单独指定模型({"novel-director": {"provider": "...", "model": "..."}}),最高优先。 2. 运行级覆盖bishu_run_workflowmodel 字段,本次运行所有 agent 节点共用一个模型。 3. 持久化偏好:运行成功后,按 workflow_id 写回 ~/.dsh/dsh-bishu-novel-preferences.json;下次同一条工作流运行会读取这些偏好。 4. 缺省:继承主会话默认模型(可用 bishu_list_models 查 Provider / 模型列表)。

后端会校验 providermodel 字段均为非空字符串,否则忽略该覆盖。

---

8. 持久化文件

路径内容
~/.dsh/dsh-bishu-novel-preferences.json每个工作流的运行级 / 节点级模型偏好。
~/.dsh/dsh-bishu-novel-history.json历史运行列表(最多 200 条,跑完或失败时追加)。

两文件都和 DSH 同源,写入失败只打 console 错误,不会影响工作流本身的运行。

---

9. 开发

  • 修改 lib/index.js 后用 node --check lib/index.js 校验语法。
  • 工作流定义、提示词、脚本节点由 resources/ 下的 JSON / Python / md 文件承载;插件启动时一次性加载并缓存。
  • python 解释器默认 python,可通过环境变量 DSH_BISHU_PYTHON 覆盖。