Vai al contenuto principale
N

dsh-writing-desk

nousag/dsh-writing-desk

写作工作台:在 DeepSeek Harness 中随时查看并调用本地 .dsh-notes 笔记资料进行写作

Installazione

dsh plugin --profile web add github:nousag/dsh-writing-desk

README

dsh-writing-desk · 写作工作台

面向 DeepSeek Harness(DSH)的本地优先写作工作台插件:把工作区 .dsh-notes/ 目录里的 Markdown 笔记当作写作资料,随时查看调用;并内置正文编辑器 + 卷/章文件管理

工作台以半窗面板呈现:打开后占窗口右半边,DSH 对话窗口自动让位到左半边,两边可同时操作。

侧边栏底部新增「写作工作台」入口,打开后内含两个标签页:

「写作」标签 —— 卷/章文件管理 + 直接写正文

  • 卷/章文件管理:正文按「卷 → 章」两级组织在 <工作区>/写作/ 下:
    • 新建卷:自动得到 第一卷第二卷……(已有最大卷号 +1);
    • 新建章:在某个卷下自动得到 第一章第二章……,每一卷都从第一章重新开始
    • 默认章节名「第 X 章」(X 为中文数字,兼容阿拉伯数字),点 ✎ 可重命名章节或卷。
    • 示例:写作/第一卷/第一章.md写作/第一卷/第二章.md写作/第二卷/第一章.md
  • 输入文本框:点击章节即在编辑器写正文,Ctrl/Cmd+S 保存、停顿自动保存。
  • 边写边调用本地资源:编辑器下方「插入资料」搜索框,点「全文」整篇插入光标处、点「引用」插入 [标题](路径)

「资料」标签 —— 侧栏预览 + 选中即引用

  • 列表 + 预览双栏:左侧是资料列表(按工作区分组、可全文搜索),右侧是选中资料的实时预览(Markdown 渲染)。
  • 选中一段话 → 添加到正文:在预览中用鼠标选中一段文字,会在选区上方弹出「添加到正文中」,点击即以引用块(> …)形式直接写入当前章节的正文,无需切换标签。
  • 预览区顶部保留:调用到会话(把整篇资料发给 AI 续写)、插入到输入框复制全文 / 复制引用

设计

作用
host(lib/index.js通过 webServer 注册回环 HTTP API。资料list/read/search(只读 .dsh-notes/*.md);正文tree/readChapter/writeChapter/createVolume/createChapter/renameVolume/renameChapter(读写 <工作区>/写作/<卷>/<章>.md)。不注册额外 agent 工具——模型本身就有文件工具可读这些文件。
client(lib/client.js浏览器半:半窗覆盖层(portal + 给对话 frame 让位)+ 双标签,纯 React.createElement、无构建步骤。

目录约定:资料在 <工作区>/.dsh-notes/,正文在 <工作区>/写作/

安装

前置:已安装 dsh CLI,目标 profile 为 web

dsh plugin --profile web add dsh-writing-desk

本地开发(用绝对路径安装):

dsh plugin --profile web add <本目录绝对路径>

然后重启 dsh web(bundle 层与 client 元数据缓存在进程内,必须重启才生效)。

卸载:

dsh plugin --profile web remove dsh-writing-desk

功能一览

  • 书籍管理:多本书独立保存(写作/<书籍>/<卷>/<章>.md),新建 / 切换 / 重命名书籍
  • 正文编辑器:字号 / 中英文字体 + Markdown 格式工具栏(加粗 / 斜体 / 标题 / 引用 / 列表 / 代码)
  • 字数统计 + 写作目标:实时字数,每日目标打卡
  • 章节大纲:计划章节 + 情节走向,与已成稿分开
  • 导出:全书合并导出 Markdown / TXT / Word / PDF
  • 资料导入:输入路径或文件选择器,把外部文档导入笔记
  • 输出目录:一键打开 / 自定义正文储存目录
  • 布局预设:工作区尺寸多存档 + 双击重命名
  • 数据安全:原子写入、自动保存、切换防丢、草稿崩溃恢复、请求竞态防护

权限与数据

  • 文件系统:只各工作区 .dsh-notes/ 下的 .md 资料;读写各工作区 写作/ 下的卷目录与 .md 章节(名称强制 basename、禁目录穿越)。
  • 网络:仅本机回环 HTTP API(浏览器 ↔ 本地 dsh 服务)与同源图标请求;无外部网络、无遥测。
  • 凭据:不收集、不传输任何凭据。

Plugin correlati