@xiaoqiong0v0/opencode-ssh-tool 0.5.0 → 0.6.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.
Files changed (61) hide show
  1. package/README.md +27 -21
  2. package/dist/agent.d.ts +52 -0
  3. package/dist/agent.d.ts.map +1 -0
  4. package/dist/agent.js +250 -0
  5. package/dist/agent.js.map +1 -0
  6. package/dist/base-session.d.ts +79 -13
  7. package/dist/base-session.d.ts.map +1 -1
  8. package/dist/base-session.js +246 -100
  9. package/dist/base-session.js.map +1 -1
  10. package/dist/config.d.ts +6 -2
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +16 -7
  13. package/dist/config.js.map +1 -1
  14. package/dist/constants.d.ts +14 -15
  15. package/dist/constants.d.ts.map +1 -1
  16. package/dist/constants.js +14 -15
  17. package/dist/constants.js.map +1 -1
  18. package/dist/i18n.d.ts +32 -14
  19. package/dist/i18n.d.ts.map +1 -1
  20. package/dist/i18n.js +39 -12
  21. package/dist/i18n.js.map +1 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +90 -73
  24. package/dist/index.js.map +1 -1
  25. package/dist/last-match.d.ts +11 -0
  26. package/dist/last-match.d.ts.map +1 -1
  27. package/dist/last-match.js +24 -0
  28. package/dist/last-match.js.map +1 -1
  29. package/dist/local-session.d.ts +0 -1
  30. package/dist/local-session.d.ts.map +1 -1
  31. package/dist/local-session.js +12 -8
  32. package/dist/local-session.js.map +1 -1
  33. package/dist/server-entry.d.ts +2 -0
  34. package/dist/server-entry.d.ts.map +1 -0
  35. package/dist/server-entry.js +61 -0
  36. package/dist/server-entry.js.map +1 -0
  37. package/dist/server-manager.d.ts +9 -9
  38. package/dist/server-manager.d.ts.map +1 -1
  39. package/dist/server-manager.js +109 -20
  40. package/dist/server-manager.js.map +1 -1
  41. package/dist/server.d.ts +3 -28
  42. package/dist/server.d.ts.map +1 -1
  43. package/dist/server.js +424 -224
  44. package/dist/server.js.map +1 -1
  45. package/dist/session.d.ts +0 -1
  46. package/dist/session.d.ts.map +1 -1
  47. package/dist/session.js +2 -9
  48. package/dist/session.js.map +1 -1
  49. package/dist/shell-adapter.d.ts +40 -2
  50. package/dist/shell-adapter.d.ts.map +1 -1
  51. package/dist/shell-adapter.js +252 -24
  52. package/dist/shell-adapter.js.map +1 -1
  53. package/dist/utils.d.ts +3 -1
  54. package/dist/utils.d.ts.map +1 -1
  55. package/dist/utils.js +30 -9
  56. package/dist/utils.js.map +1 -1
  57. package/dist/web/app.css +20 -7
  58. package/dist/web/app.js +11 -2
  59. package/dist/web/index.html +9 -2
  60. package/dist/web/xterm.css +218 -0
  61. package/package.json +3 -2
package/dist/utils.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // 工具函数:命令回显定位、模型文本清理、ANSI 清洗、CR 覆盖合并、完成标记剥离
2
2
  import { stripMarkers } from "./shell-adapter.js";
3
- import { findLastEndOf } from "./last-match.js";
3
+ import { findLastEndOfBefore } from "./last-match.js";
4
4
  /** 正则转义文本 */
5
5
  const escRe = (s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
6
6
  /** 命令回显匹配的宽松字符间隙(ANSI 序列或普通空白/换行,可插在命令字符之间;容忍终端列宽自动换行) */
@@ -9,22 +9,43 @@ const ECHO_WIDE = "(?:\\x1b\\[[0-9;?]*[a-zA-Z]|\\x1b\\][^\\x07\\x1b]*(?:\\x07|\\
9
9
  * 定位命令回显行在原始流中的结束位置(供流式增量定位使用):
10
10
  * 丢弃窗口开头到"命令回显行结束"之前的一切内容(提示符、PS1 填充、光标定位噪音均在内)。
11
11
  * 命令回显行 = 命令文本首次出现所在行(命令本身可能含 \033 等转义)。
12
+ * 命令文本后允许任意行内字符直到行尾:命令可能被追加完成标记(如 `cmd ;printf '<SSH_DONE…>'`),
13
+ * 此时回显是整行拼接,不能要求命令后紧跟换行。
12
14
  * @param raw 原始终端流(含 ANSI)
13
15
  * @param command 本次执行的命令文本
14
16
  * @returns 命令回显结束后的字节偏移;未命中命令文本返回 0(此时应视作输出尚未开始)
15
17
  */
16
- export function extractOutputStart(raw, command) {
18
+ export function extractOutputStart(raw, command, endBound = raw.length) {
17
19
  const cmd = command.trim();
18
20
  if (!cmd)
19
21
  return 0;
20
- // 单条宽松正则一次性匹配命令回显(命令文本 + 字符间 ANSI 间隙):
21
- // 1) 字符间容忍 ANSI 间隙(WIDE)2) 命令字面 \033 回显可能变真实 ESC(二选一)
22
+ // 单条宽松正则一次性匹配命令回显(支持多行命令):
23
+ // 1) 命令字符间容忍 ANSI 间隙(ECHO_WIDE)
24
+ // 2) 命令字面 \033 回显可能变真实 ESC(二选一)
25
+ // 3) 每段命令文本后允许任意行内字符直到行尾([^\r\n]*),兼容追加的完成标记命令
26
+ // 4) 多行命令:bash 逐行回显,行间可能夹 prompt 文本与 ANSI,用宽松段间匹配连接
22
27
  const norm = cmd.replace(/\\033/gi, "\x1b");
23
- const frags = [...norm].map((c) => (c === "\x1b" ? "(?:\\x1b|\\\\033)" : escRe(c)));
24
- const re = new RegExp(frags.join(ECHO_WIDE), "g");
25
- // 取最后一次匹配:备屏退出(如 cmatrix)会重放主屏历史,其中含旧命令回显,
26
- // 只有最后一次出现的回显之后才是本次命令的真实输出
27
- return findLastEndOf(re, raw);
28
+ const TAIL_ANSI = "(?:\\x1b\\[[0-9;?]*[a-zA-Z]|\\x1b\\][^\\x07\\x1b]*(?:\\x07|\\x1b\\\\)|\\x1b[^\\x1b])*";
29
+ // 行尾:容忍 \r 后跟 ANSI(如 bracketed paste off \x1b[?2004l)再换行,或直接 \n/字符串末尾
30
+ const LINE_END = "(?:(?:\\r?" + TAIL_ANSI + ")\\r?\\n|\\r?$)";
31
+ const lineOf = (line) => {
32
+ const frags = [...line].map((c) => (c === "\x1b" ? "(?:\\x1b|\\\\033)" : escRe(c)));
33
+ // 字符间隙:容忍 ANSI/空白;并容忍 readline 折行重绘在折行处**重复前一个字符**
34
+ // (超宽命令回显会多出边界字符,如 `...libayatan\r\n\x1b[39;120Hna-...`,精确匹配会失败)
35
+ const gap = (prev) => ECHO_WIDE + "(?:\\r?\\n" + TAIL_ANSI + prev + ECHO_WIDE + ")?";
36
+ let out = frags[0] ?? "";
37
+ for (let i = 1; i < frags.length; i++)
38
+ out += gap(frags[i - 1]) + frags[i];
39
+ return out + TAIL_ANSI + "[^\\r\\n]*";
40
+ };
41
+ const lines = norm.split("\n");
42
+ // 段间匹配:容忍任意行(prompt、输出行等)直到下一段命令,再用 ECHO_WIDE 收紧命令字符间隙
43
+ const BETWEEN = "[\\s\\S]*?";
44
+ const re = new RegExp(lines.map(lineOf).join(BETWEEN + ECHO_WIDE) + "(?:" + LINE_END + ")", "g");
45
+ // 取 [0, endBound) 范围内最后一次匹配:备屏退出(如 cmatrix)会重放主屏历史,
46
+ // 其中含旧命令回显,只有最后一次出现的回显之后才是本次命令的真实输出;
47
+ // endBound 限到完成标记之前,避免连续输入时后续裸命令回显把定位带偏
48
+ return findLastEndOfBefore(re, raw, 0, endBound);
28
49
  }
29
50
  /**
30
51
  * 剥离"提示符 + 命令回显",只保留程序纯输出:
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":"AAAA,4CAA4C;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,aAAa;AACb,MAAM,KAAK,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;AAE7E,0DAA0D;AAC1D,MAAM,SAAS,GAAG,oGAAoG,CAAA;AAEtH;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,OAAe,EAAE,QAAQ,GAAG,GAAG,CAAC,MAAM;IACpF,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC1B,IAAI,CAAC,GAAG;QAAE,OAAO,CAAC,CAAA;IAClB,2BAA2B;IAC3B,gCAAgC;IAChC,gCAAgC;IAChC,+CAA+C;IAC/C,oDAAoD;IACpD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,uFAAuF,CAAA;IACzG,sEAAsE;IACtE,MAAM,QAAQ,GAAG,YAAY,GAAG,SAAS,GAAG,iBAAiB,CAAA;IAC7D,MAAM,MAAM,GAAG,CAAC,IAAY,EAAU,EAAE;QACtC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnF,mDAAmD;QACnD,iEAAiE;QACjE,MAAM,GAAG,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAA;QACpG,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1E,OAAO,GAAG,GAAG,SAAS,GAAG,YAAY,CAAA;IACvC,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC9B,uDAAuD;IACvD,MAAM,OAAO,GAAG,YAAY,CAAA;IAC5B,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,KAAK,GAAG,QAAQ,GAAG,GAAG,EAAE,GAAG,CAAC,CAAA;IAChG,oDAAoD;IACpD,qCAAqC;IACrC,wCAAwC;IACxC,OAAO,mBAAmB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;AAClD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,OAAe;IACxD,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAC5C,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,GAAG,CAAA;IACxB,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;IAChD,OAAO,MAAM;SACV,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;SACvB,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,CAAS;IAC/B,gDAAgD;IAChD,MAAM,IAAI,GAAoD,EAAE,CAAA;IAChE,IAAI,CAAC,GAAG,CAAC,CAAA,CAAG,MAAM;IAClB,IAAI,CAAC,GAAG,CAAC,CAAA,CAAG,MAAM;IAClB,IAAI,EAAE,GAAG,CAAC,CAAA,CAAE,wBAAwB;IACpC,IAAI,EAAE,GAAG,CAAC,CAAA,CAAE,SAAS;IACrB,IAAI,OAAO,GAAuB,IAAI,CAAA,CAAC,qBAAqB;IAC5D,MAAM,IAAI,GAAG,GAAG,CAAA,CAAC,MAAM;IAEvB,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,CAAA;QAClE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAChB,CAAC,CAAA;IACD,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACnB,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM;gBAAE,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAA;QACzC,CAAC;QACD,CAAC,EAAE,CAAA;IACL,CAAC,CAAA;IAED,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;IAClB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACf,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAClB,iCAAiC;YACjC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;oBAAE,CAAC,EAAE,CAAA;gBAC5F,IAAI,CAAC,IAAI,CAAC;oBAAE,MAAK;gBACjB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;gBACnC,SAAQ;YACV,CAAC;YACD,6BAA6B;YAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,MAAM,KAAK,GAAG,CAAC,CAAA;gBACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAA;gBAC5C,IAAI,CAAC,IAAI,CAAC;oBAAE,MAAK;gBACjB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;gBAC9B,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAClB,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAA;gBAClG,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAA;gBACpG,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAClB,WAAW;gBACb,CAAC;qBAAM,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBAAC,CAAC;qBACrD,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;gBAAC,CAAC;qBACnC,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBAAC,CAAC;qBAC1D,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;gBAAC,CAAC;qBACnD,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBACzB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;oBAC9B,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;gBAChC,CAAC;qBACI,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;gBAAC,CAAC;qBACjF,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;gBAAC,CAAC;qBACnD,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,EAAE,GAAG,CAAC,CAAC;oBAAC,EAAE,GAAG,CAAC,CAAA;gBAAC,CAAC;qBACrC,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,EAAE,CAAA;gBAAC,CAAC;qBAChE,IAAI,KAAK,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,mCAAmC;oBACnC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;wBAC/B,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;wBACxE,EAAE,GAAG,CAAC,CAAC;wBAAC,EAAE,GAAG,CAAC,CAAA;wBACd,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAA;oBAC/B,CAAC;gBACH,CAAC;qBACI,IAAI,KAAK,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,kCAAkC;oBAClC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC;wBAC1C,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;wBACf,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;wBACrB,OAAO,GAAG,IAAI,CAAA;wBACd,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAAC,CAAC,GAAG,EAAE,CAAA;oBAC3C,CAAC;gBACH,CAAC;qBACI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;oBACrB,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;oBACrB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;oBAAC,CAAC;yBACrD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBAAC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;4BAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;wBAAC,CAAC;wBAAA,CAAC;wBAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;oBAAC,CAAC;yBACjG,CAAC;wBAAC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;4BAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;wBAAC,CAAC;wBAAA,CAAC;wBAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;oBAAC,CAAC;gBACnH,CAAC;qBACI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;oBACrB,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAA;oBAAC,CAAC;yBAC1D,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAC;wBAAC,CAAC,GAAG,CAAC,CAAA;oBAAC,CAAC;yBACjD,CAAC;wBACJ,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;wBAClB,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;4BAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;wBACrD,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;wBACpC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAA;oBACrB,CAAC;gBACH,CAAC;gBACD,sBAAsB;gBACtB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACT,SAAQ;YACV,CAAC;YACD,0BAA0B;YAC1B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAAC,EAAE,GAAG,CAAC,CAAC;gBAAC,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC,IAAI,CAAC,CAAC;gBAAC,SAAQ;YAAC,CAAC;YAC1D,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAAC,CAAC,GAAG,EAAE,CAAC;gBAAC,CAAC,IAAI,CAAC,CAAC;gBAAC,SAAQ;YAAC,CAAC;YACrF,cAAc;YACd,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACV,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,SAAQ;QAAC,CAAC;QACzC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,SAAQ;QAAC,CAAC;QAC9C,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,CAAC,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,SAAQ;QAAC,CAAC;QAClD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;YACxC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBAAC,CAAC,EAAE,CAAC;gBAAC,CAAC,GAAG,CAAC,CAAA;YAAC,CAAC;;gBAC3B,CAAC,GAAG,IAAI,CAAA;YACb,CAAC,EAAE,CAAC;YAAC,SAAQ;QACf,CAAC;QACD,uBAAuB;QACvB,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,SAAQ;QAAC,CAAC;QAC5C,GAAG,CAAC,EAAE,CAAC,CAAA;QACP,CAAC,EAAE,CAAA;IACL,CAAC;IAED,QAAQ;IACR,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QACpB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,SAAQ;QAAC,CAAC;QAClD,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YACvC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,CAAA;QACjC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAClB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS;IACnC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,EAAU;IAChC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAA;IACtB,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACnD,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,CAAA;AACnI,CAAC"}
package/dist/web/app.css CHANGED
@@ -5,10 +5,15 @@
5
5
  }
6
6
 
7
7
  html, body { margin: 0; height: 100%; background: #0d1117; color: #c9d1d9; font-family: system-ui, sans-serif; }
8
- header { position: sticky; top: 0; display: flex; align-items: center; gap: 12px; padding: 10px 16px; background: #161b22; border-bottom: 1px solid #30363d; }
8
+ body { display: flex; flex-direction: column; }
9
+ header { position: sticky; top: 0; flex: 0 0 auto; display: flex; align-items: center; gap: 12px; padding: 10px 16px; background: #161b22; border-bottom: 1px solid #30363d; }
9
10
  header h1 { margin: 0; font-size: 14px; color: #e6edf3; font-weight: 600; }
10
11
  select { background: #21262d; color: #c9d1d9; border: 1px solid #30363d; padding: 4px 8px; border-radius: 6px; }
11
- pre { margin: 0; padding: 16px; font-family: "CaskaydiaCove Nerd Font Mono", "Cascadia Code", "Fira Code", "JetBrains Mono", "Noto Sans Mono", "Hack", Consolas, "Courier New", monospace; font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow: auto; height: calc(100% - 52px); box-sizing: border-box; color: #c9d1d9; }
12
+ pre { margin: 0; padding: 16px; flex: 1 1 auto; min-height: 0; font-family: "CaskaydiaCove Nerd Font Mono", "Cascadia Code", "Fira Code", "JetBrains Mono", "Noto Sans Mono", "Hack", Consolas, "Courier New", monospace; font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow: auto; box-sizing: border-box; color: #c9d1d9; }
13
+ #xt { display: none; padding: 8px 12px; flex: 1 1 auto; min-height: 0; box-sizing: border-box; overflow: auto; }
14
+ body.debug #xt { display: flex; }
15
+ #xt > .xterm { margin: auto; }
16
+ body.debug #term { display: none; }
12
17
  .row { display: flex; align-items: stretch; }
13
18
  .row .t { box-sizing: border-box; flex: 0 0 172px; color: #8b949e; padding: 0 10px 0 6px; border-right: 1px solid #30363d; white-space: pre; }
14
19
  .row .c { flex: 1; padding-left: 12px; white-space: pre; }
@@ -23,13 +28,21 @@ body:not(.show-time) .row .t { display: none; }
23
28
  ::-webkit-scrollbar-corner { background: #161b22; }
24
29
  * { scrollbar-width: thin; scrollbar-color: #30363d #161b22; }
25
30
  .to-bottom-btn {
26
- position: fixed; right: 24px; bottom: 24px; display: none;
27
- background: #238636; color: #fff; border: none; border-radius: 20px;
28
- padding: 8px 16px; font-size: 13px; cursor: pointer; z-index: 10;
29
- box-shadow: 0 4px 12px rgba(0,0,0,.4);
31
+ display: none; margin-left: auto;
32
+ background: #238636; color: #fff; border: none; border-radius: 6px;
33
+ padding: 4px 10px; font-size: 12px; cursor: pointer; white-space: nowrap;
30
34
  }
31
35
  .to-bottom-btn:hover { background: #2ea043; }
32
36
  .sep hr { border: none; border-top: 1px dashed #30363d; margin: 8px 0; }
33
37
  .del-btn { background: none; border: 1px solid #30363d; color: #f85149; border-radius: 4px; cursor: pointer; padding: 2px 8px; font-size: 14px; line-height: 1; display: none; }
34
38
  .del-btn:hover { background: #f85149; color: #fff; }
35
- .del-btn.show { display: inline-block; }
39
+ .del-btn.show { display: inline-block; }
40
+ #cmdbar { flex: 0 0 auto; display: flex; gap: 6px; padding: 8px 16px; border-top: 1px solid #30363d; }
41
+ #cmdInput { flex: 1; box-sizing: border-box; background: #0d1117; color: #c9d1d9; border: 1px solid #30363d; border-radius: 6px; padding: 8px 12px; font-family: "CaskaydiaCove Nerd Font Mono", "Cascadia Code", "Fira Code", "JetBrains Mono", "Noto Sans Mono", "Hack", Consolas, "Courier New", monospace; font-size: 13px; outline: none; resize: none; max-height: 120px; overflow-y: auto; }
42
+ #cmdInput:focus { border-color: #58a6ff; }
43
+ #cmdInput:disabled { opacity: 0.4; }
44
+ #cmdKey { flex: 0 0 auto; width: 72px; text-align: center; background: #21262d; color: #c9d1d9; border: 1px solid #30363d; border-radius: 6px; padding: 8px 6px; font-size: 12px; white-space: nowrap; overflow: hidden; cursor: crosshair; user-select: none; display: flex; align-items: center; justify-content: center; transition: border-color .15s; }
45
+ #cmdKey.capture { border-color: #e67e22; animation: pulse 0.6s ease-in-out infinite alternate; }
46
+ #cmdKey.disabled { opacity: 0.35; cursor: default; }
47
+ .tgl.disabled { opacity: 0.35; pointer-events: none; }
48
+ @keyframes pulse { from { opacity: 0.6; } to { opacity: 1; } }