dsh-ssh-tui 0.7.1 → 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.
Files changed (106) hide show
  1. package/README.en.md +92 -8
  2. package/README.md +64 -8
  3. package/cordis.patch.yml +15 -0
  4. package/docs/terminals.md +113 -0
  5. package/lib/approval-cache.js +12 -9
  6. package/lib/approval-cache.js.map +1 -1
  7. package/lib/color-depth.js +10 -4
  8. package/lib/color-depth.js.map +1 -1
  9. package/lib/diag.js +76 -17
  10. package/lib/diag.js.map +1 -1
  11. package/lib/dialogs.js.map +1 -1
  12. package/lib/display-sock.js +304 -29
  13. package/lib/display-sock.js.map +1 -1
  14. package/lib/doctor.js +71 -37
  15. package/lib/doctor.js.map +1 -1
  16. package/lib/dsh-compat.js +206 -88
  17. package/lib/dsh-compat.js.map +1 -1
  18. package/lib/footer.js +39 -9
  19. package/lib/footer.js.map +1 -1
  20. package/lib/gateway-protocol.js +202 -0
  21. package/lib/gateway-protocol.js.map +1 -0
  22. package/lib/i18n/en.js +79 -41
  23. package/lib/i18n/en.js.map +1 -1
  24. package/lib/i18n/index.js +13 -7
  25. package/lib/i18n/index.js.map +1 -1
  26. package/lib/i18n/zh.js +79 -41
  27. package/lib/i18n/zh.js.map +1 -1
  28. package/lib/index.js +132 -31
  29. package/lib/index.js.map +1 -1
  30. package/lib/job-label.js +99 -17
  31. package/lib/job-label.js.map +1 -1
  32. package/lib/paint.js +5 -2
  33. package/lib/paint.js.map +1 -1
  34. package/lib/picker.js +5 -3
  35. package/lib/picker.js.map +1 -1
  36. package/lib/plan.js +269 -17
  37. package/lib/plan.js.map +1 -1
  38. package/lib/platform.js +373 -0
  39. package/lib/platform.js.map +1 -0
  40. package/lib/preset-authoring.js +10 -14
  41. package/lib/preset-authoring.js.map +1 -1
  42. package/lib/preset-compat.js +100 -0
  43. package/lib/preset-compat.js.map +1 -0
  44. package/lib/preset-picker.js +5 -1
  45. package/lib/preset-picker.js.map +1 -1
  46. package/lib/preset-rows.js +83 -13
  47. package/lib/preset-rows.js.map +1 -1
  48. package/lib/provider-catalog.js +7 -4
  49. package/lib/provider-catalog.js.map +1 -1
  50. package/lib/route-memory.js +11 -4
  51. package/lib/route-memory.js.map +1 -1
  52. package/lib/session-index.js +5 -0
  53. package/lib/session-index.js.map +1 -1
  54. package/lib/session-list.js +18 -1
  55. package/lib/session-list.js.map +1 -1
  56. package/lib/session-lock.js +79 -24
  57. package/lib/session-lock.js.map +1 -1
  58. package/lib/session-route.js +334 -0
  59. package/lib/session-route.js.map +1 -0
  60. package/lib/settings-routes.js +10 -0
  61. package/lib/settings-routes.js.map +1 -0
  62. package/lib/settings-subagent.js +10 -0
  63. package/lib/settings-subagent.js.map +1 -0
  64. package/lib/subagent-model.js +84 -6
  65. package/lib/subagent-model.js.map +1 -1
  66. package/lib/supergrok-token.js +4 -0
  67. package/lib/supergrok-token.js.map +1 -1
  68. package/lib/term-text.js +7 -4
  69. package/lib/term-text.js.map +1 -1
  70. package/lib/terminal-caps.js +358 -0
  71. package/lib/terminal-caps.js.map +1 -0
  72. package/lib/tool-present.js +46 -14
  73. package/lib/tool-present.js.map +1 -1
  74. package/lib/tui.js +1949 -371
  75. package/lib/tui.js.map +1 -1
  76. package/lib/types/color-depth.d.ts +3 -3
  77. package/lib/types/diag.d.ts +18 -1
  78. package/lib/types/dialogs.d.ts +4 -0
  79. package/lib/types/display-sock.d.ts +94 -2
  80. package/lib/types/doctor.d.ts +8 -1
  81. package/lib/types/dsh-compat.d.ts +141 -44
  82. package/lib/types/footer.d.ts +21 -5
  83. package/lib/types/gateway-protocol.d.ts +88 -0
  84. package/lib/types/i18n/index.d.ts +18 -12
  85. package/lib/types/index.d.ts +45 -0
  86. package/lib/types/job-label.d.ts +38 -7
  87. package/lib/types/picker.d.ts +3 -0
  88. package/lib/types/plan.d.ts +94 -4
  89. package/lib/types/platform.d.ts +215 -0
  90. package/lib/types/preset-authoring.d.ts +8 -14
  91. package/lib/types/preset-compat.d.ts +58 -0
  92. package/lib/types/preset-picker.d.ts +1 -1
  93. package/lib/types/preset-rows.d.ts +51 -9
  94. package/lib/types/route-memory.d.ts +17 -22
  95. package/lib/types/session-list.d.ts +5 -0
  96. package/lib/types/session-lock.d.ts +9 -0
  97. package/lib/types/session-route.d.ts +191 -0
  98. package/lib/types/settings-routes.d.ts +16 -0
  99. package/lib/types/settings-subagent.d.ts +24 -0
  100. package/lib/types/subagent-model.d.ts +60 -7
  101. package/lib/types/term-text.d.ts +3 -2
  102. package/lib/types/terminal-caps.d.ts +105 -0
  103. package/lib/types/tool-present.d.ts +2 -17
  104. package/lib/types/transcript-types.d.ts +44 -1
  105. package/lib/types/tui.d.ts +333 -9
  106. package/package.json +82 -55
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-ssh-tui",
3
- "version": "0.7.1",
3
+ "version": "0.7.3",
4
4
  "description": "SSH-friendly interactive terminal TUI plugin for DeepSeek Harness",
5
5
  "keywords": [
6
6
  "deepseek-harness",
@@ -37,6 +37,14 @@
37
37
  "types": "./lib/types/startup.d.ts",
38
38
  "default": "./lib/startup.js"
39
39
  },
40
+ "./settings-routes": {
41
+ "types": "./lib/types/settings-routes.d.ts",
42
+ "default": "./lib/settings-routes.js"
43
+ },
44
+ "./settings-subagent": {
45
+ "types": "./lib/types/settings-subagent.d.ts",
46
+ "default": "./lib/settings-subagent.js"
47
+ },
40
48
  "./cordis.patch.yml": "./cordis.patch.yml",
41
49
  "./package.json": "./package.json"
42
50
  },
@@ -50,7 +58,8 @@
50
58
  "docs/screenshots/headless.png",
51
59
  "docs/screenshots/workspace.png",
52
60
  "docs/screenshots/slow-link.gif",
53
- "LICENSE"
61
+ "LICENSE",
62
+ "docs/terminals.md"
54
63
  ],
55
64
  "license": "MIT",
56
65
  "dsh": {
@@ -58,15 +67,17 @@
58
67
  "patch": "./cordis.patch.yml"
59
68
  },
60
69
  "compatibility": {
61
- "dsh": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
70
+ "dsh": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
62
71
  "dshReleases": {
63
- "0.1.2-rc.1": "compatible",
72
+ "0.1.2-rc.1": "incompatible",
64
73
  "0.1.3-alpha.1": "unknown",
65
74
  "0.1.3-alpha.2": "compatible",
66
75
  "0.1.5-alpha.1": "compatible",
67
76
  "0.1.5-alpha.2": "compatible",
68
77
  "0.1.5-rc.1": "compatible",
69
- "0.1.5-rc.2": "compatible"
78
+ "0.1.5-rc.2": "compatible",
79
+ "0.1.5-rc.3": "compatible",
80
+ "0.1.7-rc.1": "compatible"
70
81
  },
71
82
  "profiles": [
72
83
  "tui"
@@ -85,6 +96,8 @@
85
96
  "install:npm": "bash scripts/install-npm.sh",
86
97
  "uninstall:dsh": "bash scripts/uninstall.sh",
87
98
  "verify:dsh": "bash scripts/verify.sh",
99
+ "probe:home": "node scripts/probe-home.mjs --probe",
100
+ "probe:home:drop": "node scripts/probe-home.mjs --probe --script tui-drop-probe.mjs",
88
101
  "screenshots": "npm run build && node scripts/capture-readme-frames.mjs",
89
102
  "screenshots:slow": "npm run build && node scripts/capture-slow-link.mjs"
90
103
  },
@@ -92,31 +105,36 @@
92
105
  "node": ">=22.19"
93
106
  },
94
107
  "dependencies": {
95
- "@deepseek-ai/schemastery": "^3.18.1",
108
+ "@deepseek-ai/schemastery": "3.18.2 || ~3.18.4",
96
109
  "commander": "^14.0.0"
97
110
  },
98
111
  "peerDependencies": {
99
112
  "@deepseek-ai/cordis": "^4.0.1",
100
- "@deepseek-ai/dsh-agent": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
101
- "@deepseek-ai/dsh-agent-default-model": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
102
- "@deepseek-ai/dsh-agent-loop": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
103
- "@deepseek-ai/dsh-agent-presets": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
104
- "@deepseek-ai/dsh-cmdline": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
105
- "@deepseek-ai/dsh-commands": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
106
- "@deepseek-ai/dsh-credentials": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
107
- "@deepseek-ai/dsh-llm": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
108
- "@deepseek-ai/dsh-session": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
109
- "@deepseek-ai/dsh-session-persistence": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
110
- "@deepseek-ai/dsh-settings": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
111
- "@deepseek-ai/dsh-subagent": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
112
- "@deepseek-ai/dsh-user-approval": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6",
113
- "@deepseek-ai/dsh-user-questions": ">=0.1.2-rc.1 <0.1.6 || >=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6"
113
+ "@deepseek-ai/dsh-agent": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
114
+ "@deepseek-ai/dsh-agent-default-model": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
115
+ "@deepseek-ai/dsh-agent-loop": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
116
+ "@deepseek-ai/dsh-agent-preset": ">=0.1.7-rc.1 <0.1.8",
117
+ "@deepseek-ai/dsh-agent-preset-registry": ">=0.1.7-rc.1 <0.1.8",
118
+ "@deepseek-ai/dsh-agent-presets": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
119
+ "@deepseek-ai/dsh-cmdline": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
120
+ "@deepseek-ai/dsh-commands": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
121
+ "@deepseek-ai/dsh-credentials": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
122
+ "@deepseek-ai/dsh-llm": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
123
+ "@deepseek-ai/dsh-session": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
124
+ "@deepseek-ai/dsh-session-persistence": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
125
+ "@deepseek-ai/dsh-settings": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
126
+ "@deepseek-ai/dsh-subagent": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
127
+ "@deepseek-ai/dsh-user-approval": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8",
128
+ "@deepseek-ai/dsh-user-questions": ">=0.1.3-alpha.2 <0.1.6 || >=0.1.5-alpha.1 <0.1.6 || >=0.1.7-rc.1 <0.1.8"
114
129
  },
115
130
  "peerDependenciesMeta": {
116
- "@deepseek-ai/dsh-user-approval": {
131
+ "@deepseek-ai/dsh-agent-preset": {
117
132
  "optional": true
118
133
  },
119
- "@deepseek-ai/dsh-user-questions": {
134
+ "@deepseek-ai/dsh-agent-preset-registry": {
135
+ "optional": true
136
+ },
137
+ "@deepseek-ai/dsh-agent-presets": {
120
138
  "optional": true
121
139
  },
122
140
  "@deepseek-ai/dsh-credentials": {
@@ -124,42 +142,51 @@
124
142
  },
125
143
  "@deepseek-ai/dsh-settings": {
126
144
  "optional": true
145
+ },
146
+ "@deepseek-ai/dsh-user-approval": {
147
+ "optional": true
148
+ },
149
+ "@deepseek-ai/dsh-user-questions": {
150
+ "optional": true
127
151
  }
128
152
  },
129
153
  "devDependencies": {
130
- "@deepseek-ai/cordis": "^4.0.1",
131
- "@deepseek-ai/cordis-plugin-loader": "^1.0.3",
132
- "@deepseek-ai/dsh": "0.1.5-rc.2",
133
- "@deepseek-ai/dsh-agent": "0.1.5-rc.2",
134
- "@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.2",
135
- "@deepseek-ai/dsh-agent-loop": "0.1.5-rc.2",
136
- "@deepseek-ai/dsh-agent-presets": "0.1.5-rc.2",
137
- "@deepseek-ai/dsh-atomic-write": "0.1.5-rc.2",
138
- "@deepseek-ai/dsh-attachment": "0.1.5-rc.2",
139
- "@deepseek-ai/dsh-brand": "0.1.5-rc.2",
140
- "@deepseek-ai/dsh-cmdline": "0.1.5-rc.2",
141
- "@deepseek-ai/dsh-commands": "0.1.5-rc.2",
142
- "@deepseek-ai/dsh-credentials": "0.1.5-rc.2",
143
- "@deepseek-ai/dsh-home-paths": "0.1.5-rc.2",
144
- "@deepseek-ai/dsh-invariants": "0.1.5-rc.2",
145
- "@deepseek-ai/dsh-jobs": "0.1.5-rc.2",
146
- "@deepseek-ai/dsh-llm": "0.1.5-rc.2",
147
- "@deepseek-ai/dsh-llm-mock-server": "0.1.5-rc.2",
148
- "@deepseek-ai/dsh-sandbox": "0.1.5-rc.2",
149
- "@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.2",
150
- "@deepseek-ai/dsh-scope": "0.1.5-rc.2",
151
- "@deepseek-ai/dsh-session": "0.1.5-rc.2",
152
- "@deepseek-ai/dsh-session-persistence": "0.1.5-rc.2",
153
- "@deepseek-ai/dsh-session-projection": "0.1.5-rc.2",
154
- "@deepseek-ai/dsh-session-projection-cache": "0.1.5-rc.2",
155
- "@deepseek-ai/dsh-settings": "0.1.5-rc.2",
156
- "@deepseek-ai/dsh-subagent": "0.1.5-rc.2",
157
- "@deepseek-ai/dsh-system-prompt": "0.1.5-rc.2",
158
- "@deepseek-ai/dsh-timeout": "0.1.5-rc.2",
159
- "@deepseek-ai/dsh-tools": "0.1.5-rc.2",
160
- "@deepseek-ai/dsh-typert-protocol": "0.1.5-rc.2",
161
- "@deepseek-ai/dsh-user-approval": "0.1.5-rc.2",
162
- "@deepseek-ai/dsh-user-questions": "0.1.5-rc.2",
154
+ "@deepseek-ai/cordis": "4.0.2",
155
+ "@deepseek-ai/cordis-plugin-hmr": "1.0.17",
156
+ "@deepseek-ai/cordis-plugin-include": "1.0.7",
157
+ "@deepseek-ai/cordis-plugin-loader": "1.0.3",
158
+ "@deepseek-ai/cordis-plugin-timer": "1.1.4",
159
+ "@deepseek-ai/dsh": "0.1.5-rc.3",
160
+ "@deepseek-ai/dsh-agent": "0.1.5-rc.3",
161
+ "@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.3",
162
+ "@deepseek-ai/dsh-agent-loop": "0.1.5-rc.3",
163
+ "@deepseek-ai/dsh-agent-presets": "0.1.5-rc.3",
164
+ "@deepseek-ai/dsh-atomic-write": "0.1.5-rc.3",
165
+ "@deepseek-ai/dsh-attachment": "0.1.5-rc.3",
166
+ "@deepseek-ai/dsh-brand": "0.1.5-rc.3",
167
+ "@deepseek-ai/dsh-cmdline": "0.1.5-rc.3",
168
+ "@deepseek-ai/dsh-commands": "0.1.5-rc.3",
169
+ "@deepseek-ai/dsh-credentials": "0.1.5-rc.3",
170
+ "@deepseek-ai/dsh-home-paths": "0.1.5-rc.3",
171
+ "@deepseek-ai/dsh-invariants": "0.1.5-rc.3",
172
+ "@deepseek-ai/dsh-jobs": "0.1.5-rc.3",
173
+ "@deepseek-ai/dsh-llm": "0.1.5-rc.3",
174
+ "@deepseek-ai/dsh-llm-mock-server": "0.1.5-rc.3",
175
+ "@deepseek-ai/dsh-sandbox": "0.1.5-rc.3",
176
+ "@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.3",
177
+ "@deepseek-ai/dsh-scope": "0.1.5-rc.3",
178
+ "@deepseek-ai/dsh-session": "0.1.5-rc.3",
179
+ "@deepseek-ai/dsh-session-persistence": "0.1.5-rc.3",
180
+ "@deepseek-ai/dsh-session-projection": "0.1.5-rc.3",
181
+ "@deepseek-ai/dsh-session-projection-cache": "0.1.5-rc.3",
182
+ "@deepseek-ai/dsh-settings": "0.1.5-rc.3",
183
+ "@deepseek-ai/dsh-subagent": "0.1.5-rc.3",
184
+ "@deepseek-ai/dsh-system-prompt": "0.1.5-rc.3",
185
+ "@deepseek-ai/dsh-timeout": "0.1.5-rc.3",
186
+ "@deepseek-ai/dsh-tools": "0.1.5-rc.3",
187
+ "@deepseek-ai/dsh-typert-protocol": "0.1.5-rc.3",
188
+ "@deepseek-ai/dsh-user-approval": "0.1.5-rc.3",
189
+ "@deepseek-ai/dsh-user-questions": "0.1.5-rc.3",
163
190
  "@types/node": "^24.0.0",
164
191
  "@xterm/headless": "^6.0.0",
165
192
  "semver": "^7.8.5",