跳到正文

Heyflyingpig/long-draft-input

30最近提交 2026年8月14日

long-draft-input DSH 插件

该插件监控 DSH 输入框的草稿长度。当文本超过可配置的阈值时,它会将可见的 textarea 替换为摘要卡片,显示首行预览、字符数和行数。卡片作为输入栏内部布局的一部分,将发送按钮向上推高,并在下方提供独立的补充输入区,提交时补充文本会追加到原草稿后。

如何安装 long-draft-input DSH 插件

dsh plugin --profile demo add /absolute/path/to/long-draft-input

复制不会执行命令。安装 long-draft-input DSH 插件前请核对仓库和版本。

long-draft-input DSH 插件数据来源

long-draft-input DSH 插件快照日期:2026年8月16日

discovered

long-draft-input DSH 插件能做什么

  • 检测草稿长度,超过阈值时触发 UI 扩展。
  • 显示摘要卡片,包含首行预览、字符数和行数。
  • 在卡片下方提供独立的补充输入区。
  • 支持通过“在文本框中显示”按钮折叠/展开完整文本。
  • 允许移除长草稿,同时保留补充文本。
  • 可通过 profile 配置阈值和预览字符数。

long-draft-input DSH 插件适合哪些场景

  • 当用户编写很长的草稿时,希望输入区保持简洁紧凑。
  • 当用户需要在长草稿后添加额外注释或修正,而不修改原文本。
  • 当用户想快速预览长草稿的开头部分,无需滚动。
  • 当用户希望保留原始草稿完整,同时仍能提交附加文本。

long-draft-input DSH 插件适合谁

  • 经常编写长消息的 DSH 用户。
  • 使用 DSH 并希望改善长草稿输入体验的开发者。

long-draft-input DSH 插件的限制

  • 依赖公开的 'conversation.input.dock' 扩展点,无法控制 'InputBar.tsx' 内部的私有渲染逻辑,因此不能阻止原组件继续构造 backdrop 和 mirror 节点。
  • 仅针对 DSH 0.1.0-rc.5 验证,与其他版本的兼容性未经测试。

long-draft-input DSH 插件的仓库 README 摘录

以下文字摘自 long-draft-input DSH 插件的上游仓库 Heyflyingpig/long-draft-input 的 README,版权归原作者,仅作引用。

一个面向 DeepSeek Harness `0.1.0-rc.5` 的独立插件:当输入框草稿超过阈值时,将发送框向上扩展并显示附件式摘要卡片,但不改变 DSH 原有的草稿状态、消息格式或发送路径。 ## 预览 ![alt text](readme_img/image.png) ## 行为 - 长文本仍完整保存在 DSH 的 `input.draft` 中。 - 摘要卡片展示首行预览、字符数和行数。 - 摘要卡片作为原发送框内部的正常布局子项,像附件一样将发送框向上撑高;折叠态隐藏原 textarea 的完整文本,保留原工具栏和发送按钮。 - 卡片下方保留独立的补充输入区;补充文字会追加到完整长文本后,继续通过原发送按钮提交。 - 点击“在文本框中显示”后恢复原 textarea,并将焦点交还给它。 - 点击 `×` 移除聚合的长文本;如果卡片下方已经输入补充正文,只保留这部分正文。 - 原 InputBar 的发送按钮仍调用原有 `inputActions.submit()`;插件不定义附件协议,也不改服务端消息格式。 - 未超过阈值的小文本不渲染插件 UI,因此保持原行为。 默认阈值为 2,000 个 JavaScript 字符,首行预览为 120 个 Unicode code point。可在 profile 的后续 patch 层覆盖;由于 patch 会替换整行配置,覆盖时请同时写出两个字段: ```yaml - id: long-draft-input config: threshold: 20000 previewChars: 160 ``` ## 安装 ### 在本地目录中执行 ```sh dsh plugin --profile demo add github: Heyflyingpig/long-draft-input dsh --profile web ``` GitHub 安装会执行 `prepare` 构建 TypeScript 和浏览器 bundle。pnpm 10+ 可能要求 profile 的 `pnpm-workspace.yaml` 显式允许该包的构建脚本;也可以发布 npm 包或 `pnpm pack` tarball,直接携带已构建的 `lib/`,减少安装时的构建权限。 在 项目源码 checkout 中本地验证: ```sh pnpm dsh plugin --profile demo add /absolute/path/to/long-draft-input pnpm dsh --profile demo --dump-config pnpm dsh --profile demo ``` ## 开发和验证 ```sh pnpm install pnpm test

阅读完整 README仓库许可: MIT

long-draft-input DSH 插件常见问题

如何安装 long-draft-input 插件?

使用 DSH 命令行安装:运行 `dsh plugin --profile demo add github:Heyflyingpig/long-draft-input`,然后启动 Web 界面 `dsh --profile web`。如果你有本地代码,也可以使用 `pnpm dsh plugin --profile demo add /absolute/path/to/long-draft-input`。

如何修改阈值或预览字符数?

你可以在 profile 的 patch 层覆盖默认配置。添加插件配置块,例如:`- id: long-draft-input` 并设置 `config: { threshold: 20000, previewChars: 160 }`。注意 patch 会替换整行配置,因此必须同时写出两个字段。

为什么我的草稿很长但摘要卡片没有显示?

插件仅在草稿长度超过配置的阈值(默认为 2000 字符)时激活。短草稿不会触发任何 UI。请确认你的文本长度超过阈值,并且阈值设置正确。

如何卸载 long-draft-input 插件?

使用 DSH 命令行:`dsh plugin --profile demo remove long-draft-input`。或者直接从 profile 的插件列表中删除对应条目。

这个插件能用于其他版本的 DSH 吗?

插件明确面向 DSH 0.1.0-rc.5 开发。它可能与其他版本兼容,但未经测试。如果遇到问题,请查阅 README 的兼容性说明,或考虑使用指定版本。