@xiaoqiong0v0/opencode-ssh-tool 0.6.0 → 0.6.2
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/dist/agent.d.ts +2 -2
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +17 -23
- package/dist/agent.js.map +1 -1
- package/dist/base-session.d.ts +34 -14
- package/dist/base-session.d.ts.map +1 -1
- package/dist/base-session.js +55 -26
- package/dist/base-session.js.map +1 -1
- package/dist/constants.d.ts +3 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -1
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/local-session.d.ts +2 -0
- package/dist/local-session.d.ts.map +1 -1
- package/dist/local-session.js +2 -0
- package/dist/local-session.js.map +1 -1
- package/dist/server-manager.d.ts.map +1 -1
- package/dist/server-manager.js +101 -9
- package/dist/server-manager.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +15 -3
- package/dist/server.js.map +1 -1
- package/dist/shell-adapter.d.ts +18 -14
- package/dist/shell-adapter.d.ts.map +1 -1
- package/dist/shell-adapter.js +230 -106
- package/dist/shell-adapter.js.map +1 -1
- package/dist/utils.d.ts +6 -6
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +60 -236
- package/dist/utils.js.map +1 -1
- package/dist/web/app.js +10 -9
- package/package.json +2 -1
package/dist/utils.js
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
// 工具函数:命令回显定位、模型文本清理、ANSI 清洗、CR 覆盖合并、完成标记剥离
|
|
2
|
-
import
|
|
2
|
+
import headless from "@xterm/headless";
|
|
3
|
+
import { PTY_COLS, PTY_ROWS, TERM_SCROLLBACK_LINES } from "./constants.js";
|
|
3
4
|
import { findLastEndOfBefore } from "./last-match.js";
|
|
5
|
+
import { stripMarkers } from "./shell-adapter.js";
|
|
6
|
+
/** headless 终端构造器(@xterm/headless 为 CommonJS,Node ESM 无法静态识别其具名导出,故从默认导出解构) */
|
|
7
|
+
const { Terminal: TerminalCtor } = headless;
|
|
8
|
+
/** headless 写入回调等待上限(毫秒):超时按已解析内容读取,避免极端情况下永久挂起 */
|
|
9
|
+
const HEADLESS_WRITE_TIMEOUT_MS = 10_000;
|
|
4
10
|
/** 正则转义文本 */
|
|
5
11
|
const escRe = (s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
6
12
|
/** 命令回显匹配的宽松字符间隙(ANSI 序列或普通空白/换行,可插在命令字符之间;容忍终端列宽自动换行) */
|
|
@@ -55,7 +61,7 @@ export function extractOutputStart(raw, command, endBound = raw.length) {
|
|
|
55
61
|
* 命中后切到"命令文本结束处":zsh 下程序输出可能直接粘连在回显尾(无换行),不能按换行截断。
|
|
56
62
|
* @param raw 原始终端流(含 ANSI)
|
|
57
63
|
* @param command 本次执行的命令文本
|
|
58
|
-
* @returns 纯程序输出原始流(保留程序自身的 ANSI 颜色/进度条,供 web
|
|
64
|
+
* @returns 纯程序输出原始流(保留程序自身的 ANSI 颜色/进度条,供 web HeadlessScreen 与模型 toModelText)
|
|
59
65
|
*/
|
|
60
66
|
export function extractOutput(raw, command) {
|
|
61
67
|
const end = extractOutputStart(raw, command);
|
|
@@ -64,245 +70,63 @@ export function extractOutput(raw, command) {
|
|
|
64
70
|
return raw.slice(end).replace(/^[\r\n]+/, "");
|
|
65
71
|
}
|
|
66
72
|
/**
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* 行内重绘、进度条 \r 覆盖等场景。
|
|
73
|
+
* 把原始终端流转为给模型看的干净文本:用 xterm headless 引擎忠实模拟终端屏幕
|
|
74
|
+
* (处理光标移动/清行/清屏/覆盖/退格/SGR/OSC,含 scrollback),再逐行去尾空白并剔除空行。
|
|
75
|
+
* 比纯文本正则更鲁棒地处理 PSReadLine 行内重绘、进度条 \r 覆盖等场景。
|
|
70
76
|
* @param raw 原始终端流(含 ANSI)
|
|
71
|
-
* @returns
|
|
77
|
+
* @returns Promise:纯文本输出(供模型消费 / exec 返回值 / read 命令);write 为异步,故返回 Promise
|
|
72
78
|
*/
|
|
73
|
-
export function toModelText(raw) {
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
79
|
+
export async function toModelText(raw) {
|
|
80
|
+
const term = createHeadlessTerminal();
|
|
81
|
+
try {
|
|
82
|
+
await writeHeadless(term, stripMarkers(raw));
|
|
83
|
+
const buf = term.buffer.active;
|
|
84
|
+
const lines = [];
|
|
85
|
+
// 从最早仍保留的行(含 scrollback)读到末行;行尾去尾空白、保留行内空白
|
|
86
|
+
for (let i = 0; i < buf.length; i++)
|
|
87
|
+
lines.push(buf.getLine(i)?.translateToString(true) ?? "");
|
|
88
|
+
return lines
|
|
89
|
+
.map((l) => l.replace(/\r/g, "").trimEnd())
|
|
90
|
+
.filter((l) => l !== "")
|
|
91
|
+
.join("\n");
|
|
92
|
+
}
|
|
93
|
+
finally {
|
|
94
|
+
term.dispose();
|
|
95
|
+
}
|
|
80
96
|
}
|
|
81
97
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* @param s 原始字节流(含 ANSI、\b、\r 等)
|
|
85
|
-
* @returns 按行拼接的纯文本(行间 \n 分隔,行内保留空格)
|
|
98
|
+
* 建一个 headless 终端:固定 PTY 尺寸 + scrollback,并开启 proposed API(访问 term.buffer 必需)
|
|
99
|
+
* @returns 新的 headless Terminal 实例
|
|
86
100
|
*/
|
|
87
|
-
function
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
if (i + 1 < n && s[i + 1] === "]") {
|
|
117
|
-
let j = i + 2;
|
|
118
|
-
while (j < n && s[j] !== "\x07" && !(s[j] === "\x1b" && j + 1 < n && s[j + 1] === "\\"))
|
|
119
|
-
j++;
|
|
120
|
-
if (j >= n)
|
|
121
|
-
break;
|
|
122
|
-
i = s[j] === "\x07" ? j + 1 : j + 2;
|
|
123
|
-
continue;
|
|
124
|
-
}
|
|
125
|
-
// CSI: ESC [ params... final
|
|
126
|
-
if (i + 1 < n && s[i + 1] === "[") {
|
|
127
|
-
let j = i + 2;
|
|
128
|
-
const start = j;
|
|
129
|
-
while (j < n && !/[A-Za-z@]/.test(s[j]))
|
|
130
|
-
j++;
|
|
131
|
-
if (j >= n)
|
|
132
|
-
break;
|
|
133
|
-
const body = s.slice(start, j);
|
|
134
|
-
const final = s[j];
|
|
135
|
-
const p = (d) => { const v = parseInt(d, 10); return Number.isFinite(v) && v > 0 ? v : 1; };
|
|
136
|
-
const va = (d) => { const v = parseInt(d, 10); return Number.isFinite(v) && v >= 0 ? v : 0; };
|
|
137
|
-
if (final === "m") {
|
|
138
|
-
// SGR:忽略颜色
|
|
139
|
-
}
|
|
140
|
-
else if (final === "A") {
|
|
141
|
-
r = Math.max(0, r - p(body));
|
|
142
|
-
}
|
|
143
|
-
else if (final === "B") {
|
|
144
|
-
r += p(body);
|
|
145
|
-
}
|
|
146
|
-
else if (final === "C") {
|
|
147
|
-
c = Math.min(COLS - 1, c + p(body));
|
|
148
|
-
}
|
|
149
|
-
else if (final === "D") {
|
|
150
|
-
c = Math.max(0, c - p(body));
|
|
151
|
-
}
|
|
152
|
-
else if (final === "H" || final === "f") {
|
|
153
|
-
const m = body.split(";");
|
|
154
|
-
r = Math.max(0, (p(m[0]) - 1));
|
|
155
|
-
c = Math.max(0, (p(m[1]) - 1));
|
|
156
|
-
}
|
|
157
|
-
else if (final === "G" || final.charCodeAt(0) === 96) {
|
|
158
|
-
c = Math.max(0, p(body) - 1);
|
|
159
|
-
}
|
|
160
|
-
else if (final === "d") {
|
|
161
|
-
r = Math.max(0, p(body) - 1);
|
|
162
|
-
}
|
|
163
|
-
else if (final === "s") {
|
|
164
|
-
sr = r;
|
|
165
|
-
sc = c;
|
|
166
|
-
}
|
|
167
|
-
else if (final === "u") {
|
|
168
|
-
r = Math.min(sr, rows.length - 1);
|
|
169
|
-
c = sc;
|
|
170
|
-
}
|
|
171
|
-
else if (final === "h" && body.startsWith("?")) {
|
|
172
|
-
// 私有模式 set:?1049h 进入备屏(保存主屏+光标,清屏)
|
|
173
|
-
if (va(body.slice(1)) === 1049) {
|
|
174
|
-
altRows = rows.map((x) => ({ maxCol: x.maxCol, cols: new Map(x.cols) }));
|
|
175
|
-
sr = r;
|
|
176
|
-
sc = c;
|
|
177
|
-
rows.length = 0;
|
|
178
|
-
r = 0;
|
|
179
|
-
c = 0;
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
else if (final === "l" && body.startsWith("?")) {
|
|
183
|
-
// 私有模式 reset:?1049l 退出备屏(恢复主屏+光标)
|
|
184
|
-
if (va(body.slice(1)) === 1049 && altRows) {
|
|
185
|
-
rows.length = 0;
|
|
186
|
-
rows.push(...altRows);
|
|
187
|
-
altRows = null;
|
|
188
|
-
r = Math.min(sr, rows.length - 1);
|
|
189
|
-
c = sc;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
else if (final === "K") {
|
|
193
|
-
const mode = va(body);
|
|
194
|
-
const curRow = row(r);
|
|
195
|
-
if (mode === 2) {
|
|
196
|
-
curRow.cols.clear();
|
|
197
|
-
curRow.maxCol = 0;
|
|
198
|
-
}
|
|
199
|
-
else if (mode === 1) {
|
|
200
|
-
for (let ci = 0; ci <= c; ci++) {
|
|
201
|
-
curRow.cols.delete(ci);
|
|
202
|
-
}
|
|
203
|
-
;
|
|
204
|
-
curRow.maxCol = 0;
|
|
205
|
-
}
|
|
206
|
-
else {
|
|
207
|
-
for (let ci = c; ci < COLS; ci++) {
|
|
208
|
-
curRow.cols.delete(ci);
|
|
209
|
-
}
|
|
210
|
-
;
|
|
211
|
-
curRow.maxCol = Math.min(curRow.maxCol, c);
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
else if (final === "J") {
|
|
215
|
-
const mode = va(body);
|
|
216
|
-
if (mode === 2 || mode === 3) {
|
|
217
|
-
rows.length = 0;
|
|
218
|
-
r = 0;
|
|
219
|
-
c = 0;
|
|
220
|
-
}
|
|
221
|
-
else if (mode === 1) {
|
|
222
|
-
rows.length = 0;
|
|
223
|
-
r = 0;
|
|
224
|
-
c = 0;
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
const cur = row(r);
|
|
228
|
-
for (let ci = c; ci < COLS; ci++)
|
|
229
|
-
cur.cols.delete(ci);
|
|
230
|
-
cur.maxCol = Math.min(cur.maxCol, c);
|
|
231
|
-
rows.length = r + 1;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
// 其余 CSI(滚动/插入/删除等)忽略
|
|
235
|
-
i = j + 1;
|
|
236
|
-
continue;
|
|
237
|
-
}
|
|
238
|
-
// ESC 7 保存光标 / ESC 8 恢复光标
|
|
239
|
-
if (s[i + 1] === "7") {
|
|
240
|
-
sr = r;
|
|
241
|
-
sc = c;
|
|
242
|
-
i += 2;
|
|
243
|
-
continue;
|
|
244
|
-
}
|
|
245
|
-
if (s[i + 1] === "8") {
|
|
246
|
-
r = Math.min(sr, rows.length - 1);
|
|
247
|
-
c = sc;
|
|
248
|
-
i += 2;
|
|
249
|
-
continue;
|
|
250
|
-
}
|
|
251
|
-
// 其他 ESC 序列忽略
|
|
252
|
-
i += 2;
|
|
253
|
-
continue;
|
|
254
|
-
}
|
|
255
|
-
if (ch === "\r") {
|
|
256
|
-
c = 0;
|
|
257
|
-
i++;
|
|
258
|
-
continue;
|
|
259
|
-
}
|
|
260
|
-
if (ch === "\n") {
|
|
261
|
-
r++;
|
|
262
|
-
c = 0;
|
|
263
|
-
i++;
|
|
264
|
-
continue;
|
|
265
|
-
}
|
|
266
|
-
if (ch === "\b") {
|
|
267
|
-
if (c > 0)
|
|
268
|
-
c--;
|
|
269
|
-
i++;
|
|
270
|
-
continue;
|
|
271
|
-
}
|
|
272
|
-
if (ch === "\t") {
|
|
273
|
-
const next = (Math.floor(c / 8) + 1) * 8;
|
|
274
|
-
if (next >= COLS) {
|
|
275
|
-
r++;
|
|
276
|
-
c = 0;
|
|
277
|
-
}
|
|
278
|
-
else
|
|
279
|
-
c = next;
|
|
280
|
-
i++;
|
|
281
|
-
continue;
|
|
282
|
-
}
|
|
283
|
-
// 其他控制字符(\x07 BEL 等)跳过
|
|
284
|
-
if (ch.charCodeAt(0) < 32) {
|
|
285
|
-
i++;
|
|
286
|
-
continue;
|
|
287
|
-
}
|
|
288
|
-
put(ch);
|
|
289
|
-
i++;
|
|
290
|
-
}
|
|
291
|
-
// 构建输出行
|
|
292
|
-
const lines = [];
|
|
293
|
-
for (let ri = 0; ri < rows.length; ri++) {
|
|
294
|
-
const cur = rows[ri];
|
|
295
|
-
if (cur.maxCol === 0) {
|
|
296
|
-
lines.push("");
|
|
297
|
-
continue;
|
|
298
|
-
}
|
|
299
|
-
let line = "";
|
|
300
|
-
for (let ci = 0; ci < cur.maxCol; ci++) {
|
|
301
|
-
line += cur.cols.get(ci) ?? " ";
|
|
302
|
-
}
|
|
303
|
-
lines.push(line);
|
|
304
|
-
}
|
|
305
|
-
return lines.join("\n");
|
|
101
|
+
function createHeadlessTerminal() {
|
|
102
|
+
return new TerminalCtor({
|
|
103
|
+
cols: PTY_COLS,
|
|
104
|
+
rows: PTY_ROWS,
|
|
105
|
+
scrollback: TERM_SCROLLBACK_LINES,
|
|
106
|
+
allowProposedApi: true,
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* 向 headless 终端写入并等待解析完成:write 回调触发即兑现,超过超时上限(极端情况守卫)亦兑现
|
|
111
|
+
* @param term headless 终端
|
|
112
|
+
* @param data 待写入的原始流(含 ANSI)
|
|
113
|
+
* @returns Promise:解析完成(或超时)后兑现
|
|
114
|
+
*/
|
|
115
|
+
function writeHeadless(term, data) {
|
|
116
|
+
return new Promise((resolve) => {
|
|
117
|
+
let settled = false;
|
|
118
|
+
const done = () => {
|
|
119
|
+
if (settled)
|
|
120
|
+
return;
|
|
121
|
+
settled = true;
|
|
122
|
+
resolve();
|
|
123
|
+
};
|
|
124
|
+
const timer = setTimeout(done, HEADLESS_WRITE_TIMEOUT_MS);
|
|
125
|
+
term.write(data, () => {
|
|
126
|
+
clearTimeout(timer);
|
|
127
|
+
done();
|
|
128
|
+
});
|
|
129
|
+
});
|
|
306
130
|
}
|
|
307
131
|
/**
|
|
308
132
|
* 末尾空白清理(原为提示符剥离,现仅做清理,不依赖正则匹配具体提示符形状)
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|