🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

写作工作台 nousag/dsh-writing-desk

DeepSeek Harness
nousag72 天前有提交已提供中文文档扫描:含敏感能力

半窗管理卷章正文,随手引用本地笔记资料

28.4/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add nousag/dsh-writing-desk
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · ui
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/09/25·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/05·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 72 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件
查看扫描证据(共 38 处,展示前 14 条)
  • 读取本地文件
    lib/index.js:137
    const data = await readFile(filePath, 'utf8');
  • 读取本地文件
    lib/index.js:151
    const entries = await readdir(dir, { withFileTypes: true });
  • 读取本地文件
    lib/index.js:158
    const st = await stat(filePath);
  • 读取本地文件
    lib/index.js:201
    const content = await readFile(filePath, 'utf8');
  • 读取本地文件
    lib/index.js:209
    try { await stat(p); return true; } catch { return false; }
  • 读取本地文件
    lib/index.js:218
    const data = await readFile(sourcePath);
  • 写入本地文件
    lib/index.js:220
    await mkdir(notesDir, { recursive: true });
  • 写入本地文件
    lib/index.js:243
    await mkdir(notesDir, { recursive: true });
  • 执行外部命令来自配置/变量
    lib/index.js:279
    child = spawn(cmd, args, { detached: true, stdio: 'ignore' });
  • 写入本地文件
    lib/index.js:310
    await writeFile(tmp, data, 'utf8');
  • 写入本地文件
    lib/index.js:312
    await rename(tmp, filePath);
  • 删除本地文件
    lib/index.js:314
    try { await unlink(tmp); } catch { }
  • 写入本地文件
    lib/index.js:332
    await writeFile(path.join(wsPath, OUTPUT_CONFIG_FILE), JSON.stringify(cfg, null, 2), 'utf8');
  • 写入本地文件
    lib/index.js:420
    await mkdir(bookDir, { recursive: true });
扫描于 2026/11/5(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-primitives
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 半窗管理卷章正文
  • 引用本地笔记资料

README

由 DeepSeek 最新模型翻译生成
dsh-writing-desk · 写作工作台 面向 DeepSeek Harness(DSH)的本地优先写作工作台插件:把工作区 .dsh-notes/ 目录里的 Markdown 笔记当作写作资料,随时查看并调用;并内置正文编辑器 + 卷/章文件管理。 工作台以半窗面板呈现:打开后占窗口右半边,DSH 对话窗口自动让位到左半边,两边可同时操作。 侧边栏底部新增「写作工作台」入口,打开后内含两个标签页: 「写作」标签 —— 卷/章文件管理 + 直接写正文 - 卷/章文件管理:正文按「卷 → 章」两级组织在 /写作/ 下: - 新建卷:自动得到 第一卷、第二卷……(已有最大卷号 +1); - 新建章:在某个卷下自动得到 第一章、第二章……,每一卷都从第一章重新开始; - 默认章节名「第 X 章」(X 为中文数字,兼容阿拉伯数字),点 ✎ 可重命名章节或卷。 - 示例:写作/第一卷/第一章.md、写作/第一卷/第二章.md、写作/第二卷/第一章.md。 - 输入文本框:点击章节即在编辑器写正文,Ctrl/Cmd+S 保存、停顿自动保存。 - 边写边调用本地资源:编辑器下方「插入资料」搜索框,点「全文」整篇插入光标处、点「引用」插入 标题。
展开完整文档(README 剩余 1 节)
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 服务)与同源图标请求;无外部网络、无遥测。
- 凭据:不收集、不传输任何凭据。
预览分享卡片长什么样 ↓nousag/dsh-writing-desk
分享 · DeepSeek Harness Hub
nousag/dsh-writing-desk

半窗管理卷章正文,随手引用本地笔记资料

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部