dsh-ssh-tui 0.7.2 → 0.7.3
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.en.md +16 -1
- package/README.md +14 -1
- package/cordis.patch.yml +15 -0
- package/docs/terminals.md +113 -0
- package/lib/diag.js +35 -0
- package/lib/diag.js.map +1 -1
- package/lib/display-sock.js +259 -42
- package/lib/display-sock.js.map +1 -1
- package/lib/doctor.js +71 -37
- package/lib/doctor.js.map +1 -1
- package/lib/dsh-compat.js +206 -88
- package/lib/dsh-compat.js.map +1 -1
- package/lib/footer.js +4 -2
- package/lib/footer.js.map +1 -1
- package/lib/i18n/en.js +18 -0
- package/lib/i18n/en.js.map +1 -1
- package/lib/i18n/index.js +13 -7
- package/lib/i18n/index.js.map +1 -1
- package/lib/i18n/zh.js +18 -0
- package/lib/i18n/zh.js.map +1 -1
- package/lib/index.js +36 -11
- package/lib/index.js.map +1 -1
- package/lib/paint.js +5 -2
- package/lib/paint.js.map +1 -1
- package/lib/picker.js +5 -3
- package/lib/picker.js.map +1 -1
- package/lib/platform.js +296 -11
- package/lib/platform.js.map +1 -1
- package/lib/preset-authoring.js +10 -14
- package/lib/preset-authoring.js.map +1 -1
- package/lib/preset-compat.js +100 -0
- package/lib/preset-compat.js.map +1 -0
- package/lib/preset-picker.js +5 -1
- package/lib/preset-picker.js.map +1 -1
- package/lib/preset-rows.js +83 -13
- package/lib/preset-rows.js.map +1 -1
- package/lib/provider-catalog.js +4 -4
- package/lib/route-memory.js +3 -3
- package/lib/route-memory.js.map +1 -1
- package/lib/session-index.js +5 -0
- package/lib/session-index.js.map +1 -1
- package/lib/session-lock.js +4 -1
- package/lib/session-lock.js.map +1 -1
- package/lib/session-route.js +3 -0
- package/lib/session-route.js.map +1 -1
- package/lib/settings-routes.js +10 -0
- package/lib/settings-routes.js.map +1 -0
- package/lib/settings-subagent.js +10 -0
- package/lib/settings-subagent.js.map +1 -0
- package/lib/subagent-model.js +5 -5
- package/lib/subagent-model.js.map +1 -1
- package/lib/supergrok-token.js +4 -0
- package/lib/supergrok-token.js.map +1 -1
- package/lib/terminal-caps.js +358 -0
- package/lib/terminal-caps.js.map +1 -0
- package/lib/tui.js +184 -120
- package/lib/tui.js.map +1 -1
- package/lib/types/diag.d.ts +18 -1
- package/lib/types/display-sock.d.ts +63 -22
- package/lib/types/doctor.d.ts +8 -1
- package/lib/types/dsh-compat.d.ts +141 -44
- package/lib/types/footer.d.ts +3 -1
- package/lib/types/i18n/index.d.ts +18 -12
- package/lib/types/index.d.ts +45 -0
- package/lib/types/picker.d.ts +3 -0
- package/lib/types/platform.d.ts +175 -10
- package/lib/types/preset-authoring.d.ts +8 -14
- package/lib/types/preset-compat.d.ts +58 -0
- package/lib/types/preset-picker.d.ts +1 -1
- package/lib/types/preset-rows.d.ts +51 -9
- package/lib/types/settings-routes.d.ts +16 -0
- package/lib/types/settings-subagent.d.ts +24 -0
- package/lib/types/subagent-model.d.ts +7 -7
- package/lib/types/terminal-caps.d.ts +105 -0
- package/lib/types/tui.d.ts +41 -7
- package/package.json +82 -55
package/README.en.md
CHANGED
|
@@ -82,7 +82,7 @@ pins the palette (truecolor / 256 / 8 / none).
|
|
|
82
82
|
## Requirements
|
|
83
83
|
|
|
84
84
|
- Node.js >= 22.19
|
|
85
|
-
- `@deepseek-ai/dsh` CLI: `npm i -g @deepseek-ai/dsh` (
|
|
85
|
+
- `@deepseek-ai/dsh` CLI: `npm i -g @deepseek-ai/dsh` (CI covers `0.1.5-rc.1` / `0.1.5-rc.3` / `0.1.7-rc.1`: `0.1.5-rc.1` runs typecheck and the unit suite, the other two add the real-PTY probes. `0.1.5-alpha.1` / `0.1.5-alpha.2` / `0.1.3-alpha.2` share the same handle API + `agent/assistant-stream` shims as the 0.1.5-rc line. **`0.1.2-rc` and older are no longer supported** — if the install is refused, upgrade to `0.1.5-rc` or `0.1.7-rc` first. `0.1.3-alpha.1` exists only as a GitHub tag and was never published to npm)
|
|
86
86
|
- pnpm (used by `dsh plugin` to manage profile dependencies)
|
|
87
87
|
|
|
88
88
|
## Install
|
|
@@ -695,6 +695,15 @@ Find your symptom; each answer is what to do, not a change log.
|
|
|
695
695
|
- **Whole-row backgrounds are too loud on a dark terminal** — `DSH_TUI_COLOR_DEPTH=none`
|
|
696
696
|
drops them; diffs still read through `+`/`-`.
|
|
697
697
|
|
|
698
|
+
- **Terminal compatibility** — what each terminal is allowed and promised (Windows Terminal,
|
|
699
|
+
conhost, GNOME, XFCE, Konsole, xterm, tmux, screen, the Linux console) is tabulated in
|
|
700
|
+
[docs/terminals.md](docs/terminals.md); `/diag` prints the verdict it used, and
|
|
701
|
+
`DSH_TUI_TERM_CAPS` overrides it.
|
|
702
|
+
|
|
703
|
+
- **File permissions** — `env.sh`/`env.cmd` (API keys), `.credentials.yaml`, the SuperGrok token and the
|
|
704
|
+
lock/socket directories are `0600`/`0700` on POSIX, and on Windows a single-user ACL (`icacls` with
|
|
705
|
+
inheritance removed). That matters when `DSH_HOME` lives somewhere shared.
|
|
706
|
+
|
|
698
707
|
### Status line and quota
|
|
699
708
|
|
|
700
709
|
- **The quota widget shows `░░░░░░░░ ?%`** — no reading has arrived yet (the API is slow or
|
|
@@ -728,6 +737,12 @@ Find your symptom; each answer is what to do, not a change log.
|
|
|
728
737
|
a subagent): the turn is cancelled by default and the Host stays, so
|
|
729
738
|
`dsh --profile tui --resume` attaches to it; `/disconnect continue` lets it run to
|
|
730
739
|
completion instead. Do not start a second Host.
|
|
740
|
+
**Windows keeps it too, by a different route**: there the Host is started through the OS
|
|
741
|
+
PowerShell's `Start-Process -WindowStyle Hidden`, so it has a hidden console of its own —
|
|
742
|
+
it neither dies with your window nor makes tool calls flash a console. The one exception
|
|
743
|
+
is a machine with no PowerShell: the launcher then falls back to a direct child, and
|
|
744
|
+
closing the window ends a running turn as well (the session itself is not damaged and
|
|
745
|
+
`--resume` rebuilds it from the log).
|
|
731
746
|
- **After reconnecting there is an extra notice line, `^[[17;1R` flashes, and the link chip
|
|
732
747
|
goes hollow** — upgrade; the automatic retry stays in raw mode and drops queued bytes, so
|
|
733
748
|
those replies are no longer echoed.
|
package/README.md
CHANGED
|
@@ -98,7 +98,7 @@ dsh --profile tui
|
|
|
98
98
|
## 环境要求
|
|
99
99
|
|
|
100
100
|
- Node.js ≥ 22.19
|
|
101
|
-
- DeepSeek Harness CLI:`npm i -g @deepseek-ai/dsh
|
|
101
|
+
- DeepSeek Harness CLI:`npm i -g @deepseek-ai/dsh`(CI 覆盖 `0.1.5-rc.1` / `0.1.5-rc.3` / `0.1.7-rc.1`:`0.1.5-rc.1` 跑 typecheck 与单元套件,另两条连真 PTY 探针一起跑。`0.1.5-alpha.1` / `0.1.5-alpha.2` / `0.1.3-alpha.2` 与 0.1.5-rc 线共用同一套 handle API + `agent/assistant-stream` 兼容层。**`0.1.2-rc` 及更早的线不再支持**,装不上请先升到 `0.1.5-rc` 或 `0.1.7-rc`。`0.1.3-alpha.1` 只在 GitHub 有 tag,npm 未发布,无法本地装包验证)
|
|
102
102
|
- pnpm(`dsh plugin` 通过 pnpm 管理 profile 依赖)
|
|
103
103
|
- 支持 ANSI 的终端(推荐 SSH 直连;Windows 用 PowerShell / Windows Terminal)
|
|
104
104
|
- Windows:Host 与显示端之间的本地通道使用命名管道
|
|
@@ -140,6 +140,11 @@ dsh --profile tui # 必须在真实终端 / SSH 会话里
|
|
|
140
140
|
`--resume`);模型思考 / 回复 / 工具 / 子代理等忙碌状态则 **Host 留下**。
|
|
141
141
|
重新 SSH 后同一条命令会优先接入那个进程(选择器标「可接入」),不要再开第二份 Host:
|
|
142
142
|
|
|
143
|
+
Windows 上也一样保活,但走的路不同:宿主由系统 PowerShell 的 `Start-Process -WindowStyle Hidden`
|
|
144
|
+
拉起,因此有**自己的隐形控制台**(既不随用户的窗口关闭,也不会让工具调用闪窗)。唯一的例外是
|
|
145
|
+
机器上找不到 PowerShell:那时回退成直接子进程,关窗会连带结束正在跑的回合(会话不坏,
|
|
146
|
+
`--resume` 从日志重建),**并且启动横幅下面会有一行提示**说明这一点。见 [docs/platform.md](docs/platform.md) 的《四种死法》。
|
|
147
|
+
|
|
143
148
|
```bash
|
|
144
149
|
dsh --profile tui --resume # 选择器(活进程优先接入)
|
|
145
150
|
dsh --profile tui --resume <session-id> # 有活进程则接入,否则从日志恢复
|
|
@@ -597,6 +602,14 @@ npm run build
|
|
|
597
602
|
- **标题栏 / 铃声不生效**:终端需支持 OSC 0 与 BEL;`DSH_TUI_NO_BELL=1` 可关闭铃声。
|
|
598
603
|
- **深色终端下整行底色太抢眼**:`DSH_TUI_COLOR_DEPTH=none` 去掉底色,diff 仍用 `+`/`-` 区分。
|
|
599
604
|
|
|
605
|
+
- **终端兼容性**:每个终端允许发什么、承诺什么(Windows Terminal / conhost / GNOME / XFCE / Konsole /
|
|
606
|
+
xterm / tmux / screen / Linux 控制台)见 [docs/terminals.md](docs/terminals.md);
|
|
607
|
+
判定依据写在 `/diag` 的「终端」一行,判定错了用 `DSH_TUI_TERM_CAPS` 覆盖。
|
|
608
|
+
|
|
609
|
+
- **文件权限**:`env.sh`/`env.cmd`(含 API Key)、`.credentials.yaml`、SuperGrok token、锁与套接字目录
|
|
610
|
+
在 POSIX 上是 `0600`/`0700`,在 Windows 上是**只授权当前用户**的 ACL(`icacls` 去掉继承)。
|
|
611
|
+
`DSH_HOME` 放在共享目录时这一点尤其重要。
|
|
612
|
+
|
|
600
613
|
### 状态栏与额度
|
|
601
614
|
|
|
602
615
|
- **额度条显示 `░░░░░░░░ ?%`**:**还没拿到读数**(接口慢或不通),不是 0%。TUI 每 15 秒重试一次,拿到后自动替换成
|
package/cordis.patch.yml
CHANGED
|
@@ -25,3 +25,18 @@
|
|
|
25
25
|
color: !!js ctx.sshTuiStartup.noColor !== true
|
|
26
26
|
# Jump-host SSH: coalesce token ticks into one stdout write per frame.
|
|
27
27
|
paintIntervalMs: !!js Number.parseInt(process.env.DSH_TUI_PAINT_MS ?? '160', 10) || 160
|
|
28
|
+
|
|
29
|
+
# The TUI's two auxiliary settings namespaces.
|
|
30
|
+
#
|
|
31
|
+
# From 0.1.7 a settings form is projected out of a loader entry's own Config
|
|
32
|
+
# schema, and a write may only address an entry id — so each namespace needs
|
|
33
|
+
# a row. The row ids ARE the namespaces, and they match the sections the
|
|
34
|
+
# 0.1.5 line registered and the host imports a pre-0.1.7 `settings.yaml`
|
|
35
|
+
# section into, so `/model` routes and a `/submodel` pin survive an upgrade.
|
|
36
|
+
# On 0.1.5 these rows only carry their schema: the plugin registers both
|
|
37
|
+
# sections itself.
|
|
38
|
+
- id: ssh-tui-routes
|
|
39
|
+
name: 'dsh-ssh-tui/settings-routes'
|
|
40
|
+
|
|
41
|
+
- id: ssh-tui-subagent
|
|
42
|
+
name: 'dsh-ssh-tui/settings-subagent'
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# 终端兼容矩阵
|
|
2
|
+
|
|
3
|
+
> 这份文件回答一个问题:**这个 TUI 在你面前那块终端上,允许发什么、承诺什么。**
|
|
4
|
+
> 判定代码只有一处:`src/terminal-caps.ts`(`terminalCapabilities()`),
|
|
5
|
+
> 一张终端一个 fixture 的用例在 `tests/terminal-caps.test.mjs`,
|
|
6
|
+
> 端到端断言(每种终端真起一次 TUI,看它到底发了哪些转义序列)在 `scripts/tui-term-probe.mjs`。
|
|
7
|
+
|
|
8
|
+
## 为什么需要它
|
|
9
|
+
|
|
10
|
+
"能发"和"该发"是两件事,判错了两个方向都有代价:
|
|
11
|
+
|
|
12
|
+
| 判错的方向 | 实际后果 |
|
|
13
|
+
|---|---|
|
|
14
|
+
| **不该发却发了**(过度承诺) | `?1000h` 在不能识别 SGR 坐标的终端上会**吞掉鼠标**;OSC 52 没人接时 `/copy` 看起来成功了,用户粘贴时才发现是空的 |
|
|
15
|
+
| **该发却没发**(欠承诺) | 在其实支持的终端上悄悄少掉鼠标/拖选、少掉备用屏恢复、多行粘贴被拆成多次提交 |
|
|
16
|
+
|
|
17
|
+
所以规则是**按能力发**,而不是"保守全关"或"乐观全开":
|
|
18
|
+
模式设置类(鼠标、括号粘贴、备用屏)发错了最多被忽略,**发漏了会真的少功能**,因此默认给基线;
|
|
19
|
+
而**用户无法当场验证的承诺**(剪贴板、超链接)宁可不承诺,并在 `/copy` 之后明确说明。
|
|
20
|
+
|
|
21
|
+
## 矩阵
|
|
22
|
+
|
|
23
|
+
`✓` = 启用 · `—` = 不启用 · `?` = 启用但**不承诺**(可能生效,取决于配置)
|
|
24
|
+
|
|
25
|
+
| 终端 | 识别依据 | 配色 | 鼠标(1000/1002/1006) | 括号粘贴 | 备用屏 | OSC 52 剪贴板 | OSC 8 超链接 | 标题 |
|
|
26
|
+
|---|---|---|---|---|---|---|---|---|
|
|
27
|
+
| **Windows Terminal** | `WT_SESSION` | truecolor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
|
|
28
|
+
| **Windows 控制台(conhost)** | win32、无 `WT_SESSION`、`TERM` 为空 | 16 色(`TERM` 为空是正常的) | ✓ | — | ✓ | — | — | ✓ |
|
|
29
|
+
| **Git-Bash / MSYS2 / mintty** | win32 但 `TERM` 有名字(如 `xterm-256color`) | truecolor(`COLORTERM` 决定) | ✓ | ✓ | ✓ | ? | ✓ | ✓ |
|
|
30
|
+
| **GNOME Terminal** | `VTE_VERSION` 有值 | truecolor | ✓ | ✓ | ✓ | —(VTE 从未实现) | ✓ | ✓ |
|
|
31
|
+
| **XFCE Terminal / MATE / Tilix / Terminator** | 同上(同一套 VTE) | truecolor | ✓ | ✓ | ✓ | —(同上) | ✓ | ✓ |
|
|
32
|
+
| **旧 VTE(< 0.50)** | `VTE_VERSION` < 5000 | truecolor | ✓ | ✓ | ✓ | — | — | ✓ |
|
|
33
|
+
| **Konsole ≥ 24.12** | `KONSOLE_VERSION` ≥ 241200 | truecolor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
|
|
34
|
+
| **旧 Konsole(< 24.12)** | `KONSOLE_VERSION` < 241200 | truecolor | ✓ | ✓ | ✓ | — | ✓ | ✓ |
|
|
35
|
+
| **xterm / rxvt / kitty / wezterm / alacritty** | `TERM` 含对应名字 | truecolor(`COLORTERM` 决定) | ✓ | ✓ | ✓ | ?(xterm 受 `allowWindowOps` 限制) | ✓ | ✓ |
|
|
36
|
+
| **tmux** | `TMUX` / `TERM=tmux*` | 256(设了 `COLORTERM=truecolor` 则真彩) | ✓ | ✓ | ✓ | ?(需 `set -g set-clipboard on`) | ✓ | ✓ |
|
|
37
|
+
| **screen** | `STY` / `TERM=screen*` | 256(同上) | ✓ | ✓ | ✓ | — | — | ✓ |
|
|
38
|
+
| **Linux 虚拟控制台(tty1)** | `TERM=linux` | 8 色 | — | — | —(保留滚动回看) | — | — | — |
|
|
39
|
+
| **`TERM=dumb`/未标注** | `TERM=dumb` | 无 | ✓(基线) | ✓ | ✓ | — | — | — |
|
|
40
|
+
|
|
41
|
+
配色一列是**该终端在默认环境变量下的结果**:`COLORTERM=truecolor` 会把任何一行的真彩打开,`NO_COLOR` 会全部关掉
|
|
42
|
+
(判定在 `src/color-depth.ts`,与终端家族无关)。
|
|
43
|
+
|
|
44
|
+
关于最后三行的取舍:
|
|
45
|
+
|
|
46
|
+
- **Linux 虚拟控制台**关掉备用屏,是因为在那里进备用屏等于让用户丢掉 `Shift+PgUp` 的滚动回看,
|
|
47
|
+
而它本来也没有真正的备用屏;
|
|
48
|
+
- **`TERM=dumb` 与未知终端保留基线**:说自己是 dumb 的终端常常只是被包装层挡住了名字(CI 的 pty 也是如此),
|
|
49
|
+
而它不认识的模式设置序列会被忽略——此时"少发"才是真正的损失。剪贴板与超链接则反过来不承诺;
|
|
50
|
+
- **VTE(GNOME / XFCE / …)没有 OSC 52**:上游 issue 至今未实现(GNOME/vte#125),
|
|
51
|
+
而它是 Linux 桌面最常见的终端——所以这一格是 `—`,不是 `?`。Konsole 的写入支持要 **24.12** 才有。
|
|
52
|
+
- **`?` 的含义**:该终端*可能*生效但需要用户配置(xterm 的 `allowWindowOps`、tmux 的 `set-clipboard on`),
|
|
53
|
+
所以仍然**照发**;而 `—` 的终端上一次会话只提醒一次,告诉你剪贴板可能没写进去。
|
|
54
|
+
|
|
55
|
+
## 覆盖方式(用户可强制指定)
|
|
56
|
+
|
|
57
|
+
自动判定错了就手动覆盖,两个环境变量都长期有效:
|
|
58
|
+
|
|
59
|
+
```sh
|
|
60
|
+
# 单项开关:no-<能力> 或 <能力>=false;逗号/空格分隔
|
|
61
|
+
DSH_TUI_TERM_CAPS='no-mouse,osc52=false' dsh --profile tui
|
|
62
|
+
|
|
63
|
+
# 反过来:在判定为不支持的地方强行打开。两个真实场景:
|
|
64
|
+
# ① tmux 里配了 `set -g set-clipboard on`,OSC 52 其实能用 → 打开并取消提示;
|
|
65
|
+
# ② 老 conhost(无 VT 处理)反而要关掉,见下面「已知限制」。
|
|
66
|
+
DSH_TUI_TERM_CAPS='osc52' dsh --profile tui
|
|
67
|
+
DSH_TUI_TERM_CAPS='no-alternateScreen,no-mouse' dsh --profile tui # 无 VT 的旧控制台
|
|
68
|
+
|
|
69
|
+
# 先前的两个开关继续有效
|
|
70
|
+
DSH_TUI_NO_ALT_SCREEN=1 # 等价于 no-alternateScreen
|
|
71
|
+
DSH_TUI_OSC8=0 # 等价于 osc8=false
|
|
72
|
+
DSH_TUI_COLOR_DEPTH=none # 只影响配色(见 color-depth.ts)
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
可写的名字:`mouse`、`mouseSgr`、`mouseDrag`、`bracketedPaste`、`alternateScreen`、`osc52`、`osc8`、`title`。
|
|
76
|
+
`=` 两边的空格可有可无(`mouse = false` 等同 `mouse=false`);**看不懂的写法会被拒绝而不是猜**——
|
|
77
|
+
写错的名字/取值不会生效,但会出现在 `/diag` 的「终端」行末尾,好过默默无效:
|
|
78
|
+
|
|
79
|
+
- 打开 `mouse`(或 `mouseSgr`)会连带打开 `mouseSgr` 与 `mouseDrag`:输入解析器只认 SGR 报告,
|
|
80
|
+
只开 `?1000h` 会「吞掉鼠标却收不到事件」,比不开更糟;想只要点击不要拖拽就写 `mouse,no-mouseDrag`;
|
|
81
|
+
- 反过来,`no-mouseSgr`(或 `mouseSgr=false`)等于关掉鼠标——没有 SGR 就没有可用的事件;
|
|
82
|
+
- 提示只在 `osc52` 为假时出现,且每会话一次;`DSH_TUI_TERM_CAPS=osc52` 表示你确认终端支持,提示随之消失。
|
|
83
|
+
|
|
84
|
+
判断依据写在 `/diag` 里,报障时直接贴那一行:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
终端:gnome-terminal (VTE 7000)(vte)· 鼠标 是 · 括号粘贴 是 · 备用屏 是 · OSC52 是 · OSC8 是
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## 键盘与输入
|
|
91
|
+
|
|
92
|
+
键位这一侧不按终端分家:解析器同时吃传统 xterm 序列(`\x1b[H`、`\x1b[3~`、SS3 `\x1bO…`)
|
|
93
|
+
与 kitty/CSI-u 编码(例如 `\x1b[99;6u` 是 Ctrl+Shift+C,kitty、wezterm、foot 等默认或可开启),
|
|
94
|
+
粘贴走 `?2004h` 的括号标记(不支持的终端退化成逐行输入,见上表)。
|
|
95
|
+
Windows 与 Linux 的差异只在**改键**文件里:`/keys` 写出的键名与各终端实际发出的字节一一对应。
|
|
96
|
+
|
|
97
|
+
## 已知限制
|
|
98
|
+
|
|
99
|
+
- **PowerShell / cmd.exe 的 `TERM` 为空**:那正是 conhost 的特征;Git-Bash / MSYS2 / mintty 会设 `TERM`,因此走 xterm 基线。
|
|
100
|
+
- **旧版 Windows 控制台(无 VT 处理)**:Windows 10 之前的 conhost 不认这些转义序列,
|
|
101
|
+
用 `DSH_TUI_NO_ALT_SCREEN=1` 或 `DSH_TUI_TERM_CAPS=no-alternateScreen,no-mouse` 退到最朴素模式。
|
|
102
|
+
- **代码页不是 UTF-8 的 Windows 控制台**:框线与 emoji 会花。TUI 不改你的控制台代码页
|
|
103
|
+
(那是全局状态),请用 `chcp 65001` 或改用 Windows Terminal。
|
|
104
|
+
- **`/copy` 与拖选都依赖 OSC 52**:VTE 系(GNOME / XFCE / MATE / Tilix / Terminator)、conhost、screen、
|
|
105
|
+
Linux 控制台都不接收;Konsole 要 24.12+;xterm / tmux 需要自身配置。这些终端上 TUI 每会话提示一次,
|
|
106
|
+
并建议用 **Shift+拖选**——鼠标被 TUI 捕获时,Shift 是各家终端保留原生选择的方式。
|
|
107
|
+
- **旧版 Windows 控制台的括号粘贴**:`?2004` 到 2022-11(Windows 11 22H2)才进 conhost,
|
|
108
|
+
更早的 PowerShell/cmd 没有;粘贴仍然可用(多行 burst 会被当成一次粘贴),只是没有括号标记。
|
|
109
|
+
- **tmux / screen 里的鼠标**:需要 tmux `set -g mouse on`、screen 亦然;TUI 会照发,转发与否由它们决定。
|
|
110
|
+
- **不是 UTF-8 的 locale**:不做自动降级(本仓库没有 ASCII 回退渲染),见 `docs/platform.md` 的欠债清单。
|
|
111
|
+
- **`/diag` 的终端行来自 Host 的环境**:重新接入(reattach)后它描述的是 Host 启动时所处的终端。
|
|
112
|
+
退出时的「离开备用屏」序列因此**无条件发出**——它落在没进过备用屏的终端上会被忽略,
|
|
113
|
+
而漏发会把用户留在无法滚动的屏幕里。
|
package/lib/diag.js
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { readFile, readdir, stat } from 'node:fs/promises';
|
|
18
18
|
import { join } from 'node:path';
|
|
19
19
|
import { colorDepth } from './color-depth.js';
|
|
20
|
+
import { terminalCapabilities } from './terminal-caps.js';
|
|
20
21
|
import { t } from './i18n/index.js';
|
|
21
22
|
import { displaySockExists, isPipePath, legacySessionErrPath, resolveDshHome, sessionErrPath, sessionSockLookupPaths, sessionSockPath, } from './display-sock.js';
|
|
22
23
|
import { inspectLiveHost, sessionLockDisabled, sessionLockLookupPaths, sessionLockPath } from './session-lock.js';
|
|
@@ -92,6 +93,21 @@ export function diagVerdicts(snapshot) {
|
|
|
92
93
|
return verdicts;
|
|
93
94
|
}
|
|
94
95
|
/** The whole report as transcript lines. Pure. */
|
|
96
|
+
/** The terminal facts `/diag` reports, from the capability classifier. */
|
|
97
|
+
function describeTerminal() {
|
|
98
|
+
const caps = terminalCapabilities();
|
|
99
|
+
return {
|
|
100
|
+
family: caps.family,
|
|
101
|
+
label: caps.label,
|
|
102
|
+
mouse: caps.mouse,
|
|
103
|
+
bracketedPaste: caps.bracketedPaste,
|
|
104
|
+
alternateScreen: caps.alternateScreen,
|
|
105
|
+
osc52: caps.osc52,
|
|
106
|
+
osc8: caps.osc8,
|
|
107
|
+
title: caps.title,
|
|
108
|
+
ignoredOverrides: caps.ignoredOverrides,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
95
111
|
export function formatDiag(snapshot) {
|
|
96
112
|
const yes = t('diag.yes');
|
|
97
113
|
const no = t('diag.no');
|
|
@@ -115,6 +131,21 @@ export function formatDiag(snapshot) {
|
|
|
115
131
|
wt: snapshot.color.windowsTerminal ? yes : no,
|
|
116
132
|
}));
|
|
117
133
|
}
|
|
134
|
+
if (snapshot.terminal !== undefined) {
|
|
135
|
+
lines.push(t('diag.rowTerminal', {
|
|
136
|
+
label: snapshot.terminal.label,
|
|
137
|
+
family: snapshot.terminal.family,
|
|
138
|
+
mouse: snapshot.terminal.mouse ? yes : no,
|
|
139
|
+
paste: snapshot.terminal.bracketedPaste ? yes : no,
|
|
140
|
+
alt: snapshot.terminal.alternateScreen ? yes : no,
|
|
141
|
+
osc52: snapshot.terminal.osc52 ? yes : no,
|
|
142
|
+
osc8: snapshot.terminal.osc8 ? yes : no,
|
|
143
|
+
title: snapshot.terminal.title ? yes : no,
|
|
144
|
+
ignored: snapshot.terminal.ignoredOverrides.length === 0
|
|
145
|
+
? ''
|
|
146
|
+
: t('diag.terminalIgnored', { tokens: snapshot.terminal.ignoredOverrides.join(' ') }),
|
|
147
|
+
}));
|
|
148
|
+
}
|
|
118
149
|
lines.push(t('diag.rowSession', { session: snapshot.sessionId }));
|
|
119
150
|
lines.push(t('diag.rowRole', {
|
|
120
151
|
role: snapshot.hostProcess ? t('diag.roleHost') : t('diag.roleLauncher'),
|
|
@@ -253,6 +284,10 @@ export async function collectDiag(options) {
|
|
|
253
284
|
hostVersion: options.hostVersion,
|
|
254
285
|
nodeVersion: process.version,
|
|
255
286
|
platform: `${process.platform} ${process.arch}`,
|
|
287
|
+
// Classified here rather than passed in: /diag must describe the terminal
|
|
288
|
+
// this process is actually attached to, and the classifier only reads the
|
|
289
|
+
// environment.
|
|
290
|
+
terminal: describeTerminal(),
|
|
256
291
|
color: options.color ?? {
|
|
257
292
|
depth: String(colorDepth(process.env)),
|
|
258
293
|
...((process.env.TERM ?? '') === '' ? {} : { term: process.env.TERM }),
|
package/lib/diag.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diag.js","sourceRoot":"","sources":["../src/diag.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diag.js","sourceRoot":"","sources":["../src/diag.ts"],"names":[],"mappings":"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"}
|