@yfwu2020/dsh-selection-explain 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,7 +8,7 @@ DSH 中的翻译、上下文解读与语音追问。
8
8
 
9
9
  [快速安装](#install) · [语音输入](#voice) · [功能一览](#read) · [使用与设置](#settings)
10
10
 
11
- `DSH 插件` · `v0.12.0` · `MIT`
11
+ `DSH 插件` · `v0.13.0` · `MIT`
12
12
 
13
13
  </div>
14
14
 
@@ -81,12 +81,25 @@ DSH 中的翻译、上下文解读与语音追问。
81
81
 
82
82
  追问时可以把图片或文件**拖进小窗**,也可以直接粘贴(`⌘V`)或用输入框左下角的 **+** 选择。一次最多 **10 件**,单件不超过 **20 MB**。
83
83
 
84
- - 图片显示为缩略图(点开看原图),文件显示为可下载的卡片。**发送后仍留在消息气泡里**,关掉小窗再打开也在 —— 存的是引用而不是字节,历史文件不会因为几张截图变胖。
84
+ - 图片显示为缩略图:**点一下就在当前窗口里放大预览**(输入框上方的待发送图与已经发出的气泡图一致;一组图里用 `←` / `→` 或两侧按钮左右翻,`Esc` / 点空白处 / 点 ✕ 关闭;`⌘`/中键仍可新标签打开)。文件显示为可下载的卡片。**发送后仍留在消息气泡里**,关掉小窗再打开也在 —— 存的是引用而不是字节,历史文件不会因为几张截图变胖。
85
85
  - 拖到小窗上的文件**只会进小窗**,不会同时落进主会话的输入框;拖到小窗外面则照常归主会话。
86
86
  - 模型可以直接读取你附带的文件(读它的只读副本),不必你复制路径过去。
87
87
  - 追问时最近 **2 张图片**会重新带给模型,更早的图片自动降级成一行文字说明(避免请求超限);文件不占这个额度。
88
88
  - **升格**时这些附件会一并带进正式会话,继续在主会话里追问同一张图、同一个文件。
89
89
 
90
+ ### 截图提问(`⌘⇧X`)
91
+
92
+ 按 `⌘⇧X` 框选屏幕上的任意区域,松手后可以直接提问;小窗开着时,截图会直接进入输入框的待发送附件。截图范围在 **设置 → 截图** 里按两种触发方式分别设置:
93
+
94
+ | 范围 | 发给模型的图 |
95
+ | --- | --- |
96
+ | 全屏 | 选区中心所在的那块屏幕 |
97
+ | 整窗 | 选区所属的整个窗口(默认:截图后弹语音卡时) |
98
+ | 选区 + 留白 | 选区向四周外扩「留白」指定的逻辑像素 |
99
+ | 仅选区 | 选区本身(默认:截图直接进输入框时) |
100
+
101
+ 留白两模式共用,默认 **48pt**;外扩不会超出选区中心所在的那块屏。仅选区不画红框(图就是选区),其余范围会在图里用红色实线框标出问题焦点。需要 macOS 的屏幕录制权限。
102
+
90
103
  不必每次从头来:
91
104
 
92
105
  | 想做什么 | 入口 |
@@ -98,7 +111,7 @@ DSH 中的翻译、上下文解读与语音追问。
98
111
 
99
112
  长对话默认显示最近 **40 条消息**,点击消息区顶部的 **显示更早的消息** 可继续往前查看。收起小窗会释放回答区域的网页预览,重开后恢复显示;完整对话、输入草稿和待发送附件仍会保留。
100
113
 
101
- 小窗追问按**容量预算**组织模型上下文,不再固定截取最近 20 条消息。预算内保留原文和图片顺序;接近上限时,将较早的完整问答分批整理为摘要,最近问答保持原文。可在 **设置 → 模型 → 对话记忆** 调整输入预算,默认 32,768 tokens;宿主能提供模型容量时还会自动收紧,并预留回答与工具空间。用量为估算,整理摘要会产生额外模型调用;摘要失败会明确报错,不静默丢弃原文。
114
+ 小窗追问按**容量预算**组织模型上下文,不再固定截取最近 20 条消息。预算内保留原文和图片顺序;接近上限时,将较早的完整问答分批整理为摘要,最近问答优先保持原文;最近一组也无法容纳时,会将其一并整理为摘要。可在 **设置 → 模型 → 对话记忆** 调整输入预算,默认 200,000 tokens;宿主能提供模型容量时还会自动收紧,并预留回答与工具空间。用量为估算,整理摘要会产生额外模型调用;摘要失败会明确报错,不静默丢弃原文。
102
115
 
103
116
  图片与文件保存在宿主附件库,历史只存引用。图片不再按“两张/4 MiB”、文件不再按“八个”滚动淘汰,而是随上下文段一起保留或压缩。启用工具时,模型可用小窗材料工具重新取得旧图、旧文件路径或已压缩的原始消息;文件正文仍由宿主读取工具按需解析。附件丢失或格式不支持时会说明原因。引用保留选中原文;较早的小窗引用会补充附近内容,主会话引用在加入时取得一次上下文快照。
104
117
 
@@ -120,11 +133,11 @@ dsh plugin --profile web add @yfwu2020/dsh-selection-explain
120
133
  <details>
121
134
  <summary>安装 Release 构建包</summary>
122
135
 
123
- 将下载的 `.tgz` 放到当前目录,以 v0.12.0 为例:
136
+ 将下载的 `.tgz` 放到当前目录,以 v0.13.0 为例:
124
137
 
125
138
  ```bash
126
139
  mkdir -p ~/.dsh/plugins/dsh-selection-explain
127
- tar -xzf yfwu2020-dsh-selection-explain-0.12.0.tgz -C ~/.dsh/plugins/dsh-selection-explain --strip-components=1
140
+ tar -xzf yfwu2020-dsh-selection-explain-0.13.0.tgz -C ~/.dsh/plugins/dsh-selection-explain --strip-components=1
128
141
  dsh plugin --profile web add ~/.dsh/plugins/dsh-selection-explain
129
142
  ```
130
143
 
@@ -71,12 +71,14 @@ export function contextBudget(configured, window, output = 8192, tools = 2048) {
71
71
  return configured;
72
72
  return Math.floor(Math.min(configured, window * 0.8, window - output - tools));
73
73
  }
74
- /** A cut is always before a user message; at least the newest complete pair stays verbatim. */
75
- export function chooseCompactionEnd(turns, target, price) {
74
+ /** Prefer retaining the latest pair; pressure may allow summarizing all complete pairs. */
75
+ export function chooseCompactionEnd(turns, target, price, preserveLatestPair = true) {
76
76
  let remaining = turns.reduce((n, t) => n + price(t), 0);
77
- for (let i = 0; i < turns.length - 2; i++) {
77
+ const end = preserveLatestPair ? turns.length - 2 : turns.length;
78
+ for (let i = 0; i < end; i++) {
78
79
  remaining -= price(turns[i]);
79
- if (i + 1 > 0 && turns[i + 1].role === 'user' && remaining <= target)
80
+ const boundary = i + 1 < turns.length ? turns[i + 1].role === 'user' : turns[i].role === 'assistant';
81
+ if (boundary && remaining <= target)
80
82
  return i + 1;
81
83
  }
82
84
  return -1;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-context.js","sourceRoot":"","sources":["../src/chat-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-context.js","sourceRoot":"","sources":["../src/chat-context.ts"],"names":[],"mappings":"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"}