# 第一版实施方案 日期:2026-10-16。目标运行环境:本机 DeepSeek Harness;精确兼容版本以实际安装包和验收记录为准。 ## 目标与边界 构建原生 dsh 插件,统一管理 Grok 连接、模型分类、聊天提供方及媒体工具。不要求用户在通用“自定义模型”中逐个维护模型。不实现或共享 OAuth:第一版连接用户已经运行的 CLIProxyAPI 等兼容网关,使用用户自己的调用密钥。npm 发布和现有日常配置迁移在功能验收后进行。 ## 结构 1. 连接与模型目录:统一 Base URL、凭据引用、测试连接和刷新;原始目录加能力规则与手动覆盖。未知模型不自动认定为聊天模型;能力来源和验证状态分开记录。 2. 聊天提供方:通过受支持 dsh LLM 适配器注册原生路由,复用可维护的协议实现,支持流式文本及工具往返。图片、视频、TTS 不进入聊天模型选择器。 3. 媒体工具:图片生成/编辑、视频生成/查询、TTS、任务查询和下载恢复。只开放上游实际接受的参数。编辑/延长可单独声明未验证状态。 4. 持久任务:提交、排队、生成、下载、保存、失败、提交未知等阶段;任务 ID 与文件记录落盘,不记录凭据。非幂等请求不自动重发;查询和已有结果下载可以有限重试。 5. 交付与界面:复用 dsh 图片附件和文件交付;补充任务列表及音视频控件。媒体使用鉴权后的本地文件访问,避免把上游临时 URL 当作持久结果。 ## 数据与恢复 任务记录保存在插件数据目录;按会话关联,生成物使用任务目录和稳定文件名。下载先写临时文件并校验,再原子提交。源链接可能含签名,禁止回显到普通日志。重启恢复必须保留原始任务身份;无任务 ID 的提交超时标记为未知,不能假定失败后重发。上游不支持取消时只能停止等待。 ## 实施顺序与验收 ### A. 可安装插件与模型接入 - 明确依赖、生命周期和设置;使用 dsh 凭据引用。 - 自动拉取模型,分类与覆盖;验证媒体模型不进入聊天目录。 - 独立测试 profile 加载,真实聊天及工具调用往返。 ### B. 媒体与持久任务 - 先完成图片、视频、TTS 的完整生成与本地交付。 - 使用 mock 服务测试超时、提交未知、下载失败、任务恢复和密钥隔离。 - 用现有本地网关进行有限真实请求验收,不批量生成。 ### C. 展示与发布准备 - 在 Web/桌面实际支持范围内验证设置、任务状态和媒体播放;未验收的能力明确列出。 - npm 打包检查确保无凭据、日志、生成物和本机地址。 - 更新 README、兼容版本与发布说明。取得 npm 登录后才可发布;不发布占位空包。 ## 完成标准 每项功能区分“实现”“自动测试”“本机实测”“未验证”。不将源码通过视作界面通过,不将视频已提交视作生成完成,不将上游已生成视作文件已保存。第一版尚未覆盖的规划功能保留为显式待办。