Repository navigation
Releases
Releases · yuloong07-star/dsh-prompt-system
1.0.1
1.0.1
修复:点击 ✨ 报 HTTP 404
- 症状:按钮与设置页都在、插件条目也显示「运行中」,但点击 ✨ 固定失败:
client api: promptOptimizer/optimizePrompt failed: transport failure for /api/promptOptimizer/optimizePrompt: HTTP 404。 - 根因(两条链条叠加):
- 条目级
Config校验把strength等字段解析成Volatile<T>引用后,apply(ctx, config)又把这份已解析的 config 原样交给ctx.plugin(PromptOptimizerGateway, config);子 fiber 再拿OptimizerConfig校验一次,等于拿引用对象去匹配z.union(["light", …]),抛invalid config: $.strength expected "light" | … but got {}。 - 该错误只经
ctx.logger.error输出、宿主端看不见 → 子 fiber 静默FAIL,promptOptimizer服务从未构造 → 网关collectSrcClaims()无从发现 →claimsEndpoint()返回 false →/api共享通道回not found404。(插件清单显示「运行中」只代表模块条目 fiber,内部派生的子 fiber 失败是看不到的。)
- 条目级
- 修复:
PromptOptimizerGateway去掉static Config—— 配置校验只由模块导出的Config承担一次;子 fiber 继承已解析的 config,readSettings()经.get()现读,设置页改档仍可热更新。- 新增
HOST_TYPERT严格调用描述符,构造函数里ctx.typert.register()写入ctx.typert.local,使claimsEndpoint()走实时读取的首个分支,认领不再依赖只计算一次的 SRC 快照与插件挂载顺序。注册失败时捕获并退回 SRC 路径、留下告警,不连累插件本体。
- 验证:从 asar 解出真实
dsh-typert-registry@0.2.0-rc.2、dsh-api-gateway、@deepseek-ai/cordis、dsh-typert-protocol跑端到端:修复前子 fiberstate=FAIL、服务undefined、local.get(endpoint)为undefined(即 404 条件);修复后 9/9 通过 ——claimsEndpoint() === true、resolveDescriptor()返回描述符、prepareInvocation()解出 wire 参数、invokePrepared()真实跑通optimizePrompt并返回{ok:true, optimized, route, template}、恰好一次llm.stream调用、结果经严格 codec + JSON 往返无损。
分发收敛
- 收敛分发渠道:README 的安装说明只保留 GitHub 源与本地包两种方式,移除包管理器的发布配置与自动化发布工作流。
1.0.0
1.0.0
首个稳定版本:宿主半(Typert Remote 服务 promptOptimizer + 设置命名空间 prompt-optimizer)与浏览器半(composer 按钮 + 设置页)的接口按本版本定型。本版本相对 0.2.0 是一次重构级更新。
通用模板:四档强度与自定义骨架
- 强度定义为输出段落集合,逐档在前一档上加段:
- 轻(2 段):Goals、Constrains
- 中(4 段):+ Background、Attention
- 高(7 段):+ Role、Workflow、OutputFormat —— 默认档
- 最高(9 段):+ Skills、Suggestions
- 任何档位都不输出
Profile与Initialization,并保持紧凑纯文本契约:逐行连续、无空行、无#号、双花括号占位符逐字保留。 - 「自定义」由用户在设置页直接编辑段落骨架:可用段名标签点选追加(已存在的不会重复添加),也可完全跳过点选、自行手写段落名与内容;骨架留空回落到默认档。
图片模板:标准 / 自定义
- 图片模板不设强度档位,只有两种模式:「标准」(内置硬约束保真(第一原则)+ 句式结构 + 修饰词密度 + 输出要求)与「自定义」(逐字替换系统指令)。
- 两种模式都保留收尾的「保留全部硬约束与双花括号占位符」要求,作为占位符保护的安全网。
设置页
- 宿主新增设置命名空间
prompt-optimizer(ctx.settings.installSection),浏览器半在设置面板注册「优化提示词」页(settings.section)。 - 「通用模板」「图片模板」两个区域下方各有一个只读信息框(浅灰底、细边框、低对比度辅助文字),呈现当前模板的段落构成,不含任何编辑入口;选「自定义」时信息框变为编辑框。
- 页面标题带一颗 ✨,与 composer 按钮使用同一视觉标识。
- 改动即时生效,无需重启;缓存键包含模板变体,换档不会命中旧档结果。
交互
- composer 按钮三态:idle 只显示 ✨;优化中显示旋转指示 + 秒数;成功后显示红色「撤销」。三态都保留无障碍名与 tooltip。
- 点击 ✨ → 用当前会话选定的模型,结合对话历史与工作区文件优化草稿;「撤销」无条件还原原文;发送提示词后自动复位。
- 单次优化有
timeoutMs上限(默认 300 秒),到点中止底层流并返回「优化超时」错误,不会停在无限等待。
意图路由
- 按草稿意图在通用/图片模板间做确定性关键词路由,无额外模型调用、零延迟;草稿含「动画 / 视频 / 分镜」时,「画」不作为图片创作的强判定。
许可证
- 以 AGPL-3.0-only 分发。通用模板改编自 linshenkx/prompt-optimizer 的
analytical-optimize,图片模板改编自其general-image-optimize(Copyright (C) 2025 linshenkx)。