@xiaoqiong0v0/opencode-ssh-tool 0.6.17 → 0.7.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 +34 -3
- package/dist/agent.d.ts +7 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +1 -0
- package/dist/agent.js.map +1 -1
- package/dist/base-session.d.ts +5 -1
- package/dist/base-session.d.ts.map +1 -1
- package/dist/base-session.js +4 -2
- package/dist/base-session.js.map +1 -1
- package/dist/cli-args.d.ts +19 -0
- package/dist/cli-args.d.ts.map +1 -0
- package/dist/cli-args.js +88 -0
- package/dist/cli-args.js.map +1 -0
- package/dist/constants.d.ts +42 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +44 -1
- package/dist/constants.js.map +1 -1
- package/dist/i18n.d.ts +188 -12
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +164 -12
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +313 -26
- package/dist/index.js.map +1 -1
- package/dist/path-utils.d.ts +8 -0
- package/dist/path-utils.d.ts.map +1 -0
- package/dist/path-utils.js +17 -0
- package/dist/path-utils.js.map +1 -0
- package/dist/payload.d.ts +49 -0
- package/dist/payload.d.ts.map +1 -0
- package/dist/payload.js +101 -0
- package/dist/payload.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +123 -1
- package/dist/server.js.map +1 -1
- package/dist/session.d.ts +59 -0
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +215 -1
- package/dist/session.js.map +1 -1
- package/dist/transfer-events.d.ts +41 -0
- package/dist/transfer-events.d.ts.map +1 -0
- package/dist/transfer-events.js +79 -0
- package/dist/transfer-events.js.map +1 -0
- package/dist/transfer.d.ts +121 -0
- package/dist/transfer.d.ts.map +1 -0
- package/dist/transfer.js +1001 -0
- package/dist/transfer.js.map +1 -0
- package/dist/web/app.css +47 -1
- package/dist/web/app.js +10 -10
- package/dist/web/index.html +11 -0
- package/package.json +2 -2
package/dist/constants.d.ts
CHANGED
|
@@ -105,6 +105,44 @@ export declare const PTY_COLS = 120;
|
|
|
105
105
|
export declare const TERM_SCROLLBACK_LINES = 2000;
|
|
106
106
|
/** 单次工具返回输出上限(字节) */
|
|
107
107
|
export declare const MAX_OUTPUT_LEN = 50000;
|
|
108
|
+
/** 单次传输入口文件大小上限(字节,256 MiB):超过直接拒绝,避免误传大文件打爆内存/链路 */
|
|
109
|
+
export declare const MAX_TRANSFER_BYTES: number;
|
|
110
|
+
/**
|
|
111
|
+
* 单次传输整体超时(毫秒,10 分钟):SFTP API 本身不接受超时参数,由调用方包装;
|
|
112
|
+
* 到点后中止 SFTP 通道(destroy)并报 timeout,不再主动发起新的 rename/commit
|
|
113
|
+
* (已发出的 rename 仍可能被服务端执行)。
|
|
114
|
+
*/
|
|
115
|
+
export declare const TRANSFER_TIMEOUT_MS: number;
|
|
116
|
+
/**
|
|
117
|
+
* 传输失败后的临时文件清理等待上限(毫秒):
|
|
118
|
+
* 通道异常/超时后远端回调可能永不返回,清理必须有时限,不能把错误路径挂死。
|
|
119
|
+
*/
|
|
120
|
+
export declare const TRANSFER_CLEANUP_TIMEOUT_MS = 3000;
|
|
121
|
+
/**
|
|
122
|
+
* 通道中止后等待传输 job 真正 settle 的兜底上限(毫秒):
|
|
123
|
+
* job 自身 deadline + 清理预算应有界;超过该上限仍未结束则强制结算队列,
|
|
124
|
+
* 避免单次异常永久堵住同一会话的后续传输(此时通道已中止,job 无法再提交)。
|
|
125
|
+
*/
|
|
126
|
+
export declare const TRANSFER_JOB_SETTLE_TIMEOUT_MS: number;
|
|
127
|
+
/**
|
|
128
|
+
* 覆盖提交回退(备份旧目标 → 新文件就位)所需的最小剩余时间(毫秒):
|
|
129
|
+
* 剩余不足时不再开始回退,避免"旧目标已移走、新目标未就位"恰好被超时打断。
|
|
130
|
+
*/
|
|
131
|
+
export declare const TRANSFER_COMMIT_MIN_REMAINING_MS = 2000;
|
|
132
|
+
/** 已结束(done/failed)任务在 server 内存中的保留时长(毫秒),过期移除 */
|
|
133
|
+
export declare const TRANSFER_TASK_TTL_MS: number;
|
|
134
|
+
/** 传输进度事件节流窗口(毫秒):窗口内多次进度只发最新一帧,完成时补最终值 */
|
|
135
|
+
export declare const TRANSFER_PROGRESS_THROTTLE_MS = 250;
|
|
136
|
+
/** running 任务的最长静默时长(毫秒):超过此时长无任何更新即视为失联并移除 */
|
|
137
|
+
export declare const TRANSFER_TASK_STALE_MS: number;
|
|
138
|
+
/** 传输任务过期清理周期(毫秒):周期扫描 TTL/stale,定时器 unref 不阻塞进程退出 */
|
|
139
|
+
export declare const TRANSFER_TASK_SWEEP_MS: number;
|
|
140
|
+
/** 传输任务字段长度上限(防止异常/恶意 agent 用超长值打爆内存与页面) */
|
|
141
|
+
export declare const TRANSFER_TASK_ID_MAX = 128;
|
|
142
|
+
export declare const TRANSFER_TASK_SESSION_ID_MAX = 256;
|
|
143
|
+
export declare const TRANSFER_TASK_NAME_MAX = 256;
|
|
144
|
+
export declare const TRANSFER_TASK_PATH_MAX = 4096;
|
|
145
|
+
export declare const TRANSFER_TASK_ERROR_CODE_MAX = 128;
|
|
108
146
|
/** 会话连续原始字节流上限(超过裁剪最旧部分) */
|
|
109
147
|
export declare const RAW_LOG_MAX = 1048576;
|
|
110
148
|
/** 工具语言环境变量(工具描述/CLI/session 文案,en | zh,默认 en) */
|
|
@@ -130,6 +168,9 @@ export declare const SHELL_ID_RE: RegExp;
|
|
|
130
168
|
* server-entry 启动时写入 server.json(proto 字段),ensureServer 发现既有服务版本不符时
|
|
131
169
|
* 杀掉旧进程重启,防止 detached 持久进程一直跑旧代码导致行为不生效(如 busy 卡死)。
|
|
132
170
|
* v18:register 增加 running 运行集合(注册时对账僵尸 busy);状态推送改事件驱动+兜底;空闲关闭改事件驱动。
|
|
171
|
+
* v19:history-only 删除判据、meta.json 标题持久化。
|
|
172
|
+
* v20:新增传输任务事件(agent→server `transfer`,server→web `transfer`/`transfers` 快照)。
|
|
173
|
+
* v21:传输面板改右下浮窗;新增 `transfer-remove` 清理广播与 agent 断线任务失败收尾。
|
|
133
174
|
*/
|
|
134
|
-
export declare const SERVER_PROTO_VERSION =
|
|
175
|
+
export declare const SERVER_PROTO_VERSION = 21;
|
|
135
176
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,kCAAkC;AAClC,eAAO,MAAM,cAAc,QAC0F,CAAA;AAErH,6BAA6B;AAC7B,eAAO,MAAM,IAAI,QACsmB,CAAA;AAEvnB,qCAAqC;AACrC,eAAO,MAAM,UAAU,QAAgB,CAAA;AAEvC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAA;AAEtC,uCAAuC;AACvC,eAAO,MAAM,mBAAmB,OAAQ,CAAA;AAExC;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,OAAQ,CAAA;AAE/C;;;GAGG;AACH,eAAO,MAAM,eAAe,MAAM,CAAA;AAElC;;GAEG;AACH,eAAO,MAAM,kBAAkB,OAAQ,CAAA;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,IAAI,CAAA;AAErD,oBAAoB;AACpB,eAAO,MAAM,gBAAgB,QAAS,CAAA;AAEtC;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,QAAS,CAAA;AAE/C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAIxC;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAAS,CAAA;AAE3C;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAA;AAE1C;;;GAGG;AACH,eAAO,MAAM,2BAA2B,QAA4B,CAAA;AAEpE;;;GAGG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAI7C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAE7C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAAS,CAAA;AAE3C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAE7C;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAiB,CAAA;AAE7C,kCAAkC;AAClC,eAAO,MAAM,iBAAiB,QAAS,CAAA;AAEvC,gDAAgD;AAChD,eAAO,MAAM,QAAQ,KAAK,CAAA;AAC1B,eAAO,MAAM,QAAQ,MAAM,CAAA;AAE3B,iEAAiE;AACjE,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAEzC,qBAAqB;AACrB,eAAO,MAAM,cAAc,QAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.js
CHANGED
|
@@ -108,6 +108,46 @@ export const PTY_COLS = 120;
|
|
|
108
108
|
export const TERM_SCROLLBACK_LINES = 2000;
|
|
109
109
|
/** 单次工具返回输出上限(字节) */
|
|
110
110
|
export const MAX_OUTPUT_LEN = 50_000;
|
|
111
|
+
// ===== SFTP 文件传输(v1) =====
|
|
112
|
+
/** 单次传输入口文件大小上限(字节,256 MiB):超过直接拒绝,避免误传大文件打爆内存/链路 */
|
|
113
|
+
export const MAX_TRANSFER_BYTES = 256 * 1024 * 1024;
|
|
114
|
+
/**
|
|
115
|
+
* 单次传输整体超时(毫秒,10 分钟):SFTP API 本身不接受超时参数,由调用方包装;
|
|
116
|
+
* 到点后中止 SFTP 通道(destroy)并报 timeout,不再主动发起新的 rename/commit
|
|
117
|
+
* (已发出的 rename 仍可能被服务端执行)。
|
|
118
|
+
*/
|
|
119
|
+
export const TRANSFER_TIMEOUT_MS = 10 * 60 * 1000;
|
|
120
|
+
/**
|
|
121
|
+
* 传输失败后的临时文件清理等待上限(毫秒):
|
|
122
|
+
* 通道异常/超时后远端回调可能永不返回,清理必须有时限,不能把错误路径挂死。
|
|
123
|
+
*/
|
|
124
|
+
export const TRANSFER_CLEANUP_TIMEOUT_MS = 3_000;
|
|
125
|
+
/**
|
|
126
|
+
* 通道中止后等待传输 job 真正 settle 的兜底上限(毫秒):
|
|
127
|
+
* job 自身 deadline + 清理预算应有界;超过该上限仍未结束则强制结算队列,
|
|
128
|
+
* 避免单次异常永久堵住同一会话的后续传输(此时通道已中止,job 无法再提交)。
|
|
129
|
+
*/
|
|
130
|
+
export const TRANSFER_JOB_SETTLE_TIMEOUT_MS = 4 * TRANSFER_CLEANUP_TIMEOUT_MS;
|
|
131
|
+
/**
|
|
132
|
+
* 覆盖提交回退(备份旧目标 → 新文件就位)所需的最小剩余时间(毫秒):
|
|
133
|
+
* 剩余不足时不再开始回退,避免"旧目标已移走、新目标未就位"恰好被超时打断。
|
|
134
|
+
*/
|
|
135
|
+
export const TRANSFER_COMMIT_MIN_REMAINING_MS = 2_000;
|
|
136
|
+
// ===== SFTP 传输任务事件(agent → server → Web)=====
|
|
137
|
+
/** 已结束(done/failed)任务在 server 内存中的保留时长(毫秒),过期移除 */
|
|
138
|
+
export const TRANSFER_TASK_TTL_MS = 10 * 60 * 1000;
|
|
139
|
+
/** 传输进度事件节流窗口(毫秒):窗口内多次进度只发最新一帧,完成时补最终值 */
|
|
140
|
+
export const TRANSFER_PROGRESS_THROTTLE_MS = 250;
|
|
141
|
+
/** running 任务的最长静默时长(毫秒):超过此时长无任何更新即视为失联并移除 */
|
|
142
|
+
export const TRANSFER_TASK_STALE_MS = 10 * 60 * 1000;
|
|
143
|
+
/** 传输任务过期清理周期(毫秒):周期扫描 TTL/stale,定时器 unref 不阻塞进程退出 */
|
|
144
|
+
export const TRANSFER_TASK_SWEEP_MS = 60 * 1000;
|
|
145
|
+
/** 传输任务字段长度上限(防止异常/恶意 agent 用超长值打爆内存与页面) */
|
|
146
|
+
export const TRANSFER_TASK_ID_MAX = 128;
|
|
147
|
+
export const TRANSFER_TASK_SESSION_ID_MAX = 256;
|
|
148
|
+
export const TRANSFER_TASK_NAME_MAX = 256;
|
|
149
|
+
export const TRANSFER_TASK_PATH_MAX = 4096;
|
|
150
|
+
export const TRANSFER_TASK_ERROR_CODE_MAX = 128;
|
|
111
151
|
/** 会话连续原始字节流上限(超过裁剪最旧部分) */
|
|
112
152
|
export const RAW_LOG_MAX = 1_048_576;
|
|
113
153
|
/** 工具语言环境变量(工具描述/CLI/session 文案,en | zh,默认 en) */
|
|
@@ -134,6 +174,9 @@ export const SHELL_ID_RE = /\b__SHELL_ID__\b/;
|
|
|
134
174
|
* server-entry 启动时写入 server.json(proto 字段),ensureServer 发现既有服务版本不符时
|
|
135
175
|
* 杀掉旧进程重启,防止 detached 持久进程一直跑旧代码导致行为不生效(如 busy 卡死)。
|
|
136
176
|
* v18:register 增加 running 运行集合(注册时对账僵尸 busy);状态推送改事件驱动+兜底;空闲关闭改事件驱动。
|
|
177
|
+
* v19:history-only 删除判据、meta.json 标题持久化。
|
|
178
|
+
* v20:新增传输任务事件(agent→server `transfer`,server→web `transfer`/`transfers` 快照)。
|
|
179
|
+
* v21:传输面板改右下浮窗;新增 `transfer-remove` 清理广播与 agent 断线任务失败收尾。
|
|
137
180
|
*/
|
|
138
|
-
export const SERVER_PROTO_VERSION =
|
|
181
|
+
export const SERVER_PROTO_VERSION = 21;
|
|
139
182
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,kCAAkC;AAClC,MAAM,CAAC,MAAM,cAAc,GACzB,mHAAmH,CAAA;AAErH,6BAA6B;AAC7B,MAAM,CAAC,MAAM,IAAI,GACf,qnBAAqnB,CAAA;AAEvnB,qCAAqC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAA;AAEvC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;AAEtC,uCAAuC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAA;AAExC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAA;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAA;AAErD,oBAAoB;AACpB,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAA;AAEtC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AAExC,0EAA0E;AAE1E;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAA;AAE3C;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAA;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,qBAAqB,GAAG,CAAC,CAAA;AAEpE;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAA;AAE7C,6CAA6C;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAA;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAA;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAE7C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAE7C,kCAAkC;AAClC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAA;AAEvC,gDAAgD;AAChD,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAA;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAA;AAE3B,iEAAiE;AACjE,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAA;AAEzC,qBAAqB;AACrB,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAA;AAEpC,4BAA4B;AAC5B,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAA;AAEpC,kDAAkD;AAClD,MAAM,CAAC,MAAM,QAAQ,GAAG,eAAe,CAAA;AAEvC,4CAA4C;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAA;AAE1C,8BAA8B;AAC9B,MAAM,CAAC,MAAM,SAAS,GAAG,2CAA2C,CAAA;AAEpE,uBAAuB;AAEvB,0CAA0C;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAA;AAEpC;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAA;AAEtC,0CAA0C;AAC1C,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAA;AAE7C,eAAe;AACf,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAA;AAE7C
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/i18n.d.ts
CHANGED
|
@@ -25,6 +25,10 @@ export declare const T: {
|
|
|
25
25
|
readonly en: "Sent: {text}";
|
|
26
26
|
readonly zh: "已发送:{text}";
|
|
27
27
|
};
|
|
28
|
+
readonly send_ok_source: {
|
|
29
|
+
readonly en: "Sent ({source}, {length} chars; content hidden)";
|
|
30
|
+
readonly zh: "已发送({source},{length} 字符,内容不回显)";
|
|
31
|
+
};
|
|
28
32
|
readonly local_connect_ok: {
|
|
29
33
|
readonly en: "Started: {cmd} (terminal {name})";
|
|
30
34
|
readonly zh: "已启动:{cmd}(终端 {name})";
|
|
@@ -42,12 +46,12 @@ export declare const T: {
|
|
|
42
46
|
readonly zh: "service 的 PATH 找不到可执行文件:{cmd}。请改用不含空格的全路径,或 \"powershell\"。";
|
|
43
47
|
};
|
|
44
48
|
readonly term_cli: {
|
|
45
|
-
readonly en: "Unified terminal CLI: SSH (remote) / local shell (wsl, pwsh, bash) / container (docker exec) sessions. For ANY terminal you already have or can start locally — WSL, Docker containers, or local shells — use the 'local' subcommand INSTEAD of running commands via bash. Subcommands: connect / local / exec / read / send / status / disconnect / help. Use 'help' for full usage. Long-running, stdin-reading or interactive commands: use the default submit (returns immediately) and then status / read; use -w only for commands expected to finish quickly.";
|
|
46
|
-
readonly zh: "统一终端命令行工具:SSH(远程)/ 本地 shell(wsl、pwsh、bash)/ 容器(docker exec)会话。对任何本地可启动的终端——WSL、Docker 容器或本地 shell——应使用 'local' 子命令,而不是用 bash 直接执行。子命令: connect / local / exec / read / send / status / disconnect / help。用 'help' 查看完整用法。可能长时间运行、需要 stdin 或交互的命令:用默认提交(立即返回)再用 status / read;-w 只用于预期很快结束的命令。";
|
|
49
|
+
readonly en: "Unified terminal CLI: SSH (remote) / local shell (wsl, pwsh, bash) / container (docker exec) sessions. For ANY terminal you already have or can start locally — WSL, Docker containers, or local shells — use the 'local' subcommand INSTEAD of running commands via bash. Subcommands: connect / local / exec / read / send / upload / download / status / disconnect / help. Use 'help' for full usage. Long-running, stdin-reading or interactive commands: use the default submit (returns immediately) and then status / read; use -w only for commands expected to finish quickly. upload/download move regular files over SFTP and require an SSH session (local/container sessions are rejected).";
|
|
50
|
+
readonly zh: "统一终端命令行工具:SSH(远程)/ 本地 shell(wsl、pwsh、bash)/ 容器(docker exec)会话。对任何本地可启动的终端——WSL、Docker 容器或本地 shell——应使用 'local' 子命令,而不是用 bash 直接执行。子命令: connect / local / exec / read / send / upload / download / status / disconnect / help。用 'help' 查看完整用法。可能长时间运行、需要 stdin 或交互的命令:用默认提交(立即返回)再用 status / read;-w 只用于预期很快结束的命令。upload/download 通过 SFTP 传普通文件,仅支持 SSH 会话(本地/容器会话会明确拒绝)。";
|
|
47
51
|
};
|
|
48
52
|
readonly term_cli_args: {
|
|
49
|
-
readonly en: "Full command line string, e.g. 'local \"wsl bash\"' / 'exec \"ls -la\" -w' / 'connect user@host'; defaults to 'help' when empty.";
|
|
50
|
-
readonly zh: "完整命令行字符串,如 'local \"wsl bash\"' / 'exec \"ls -la\" -w' / 'connect user@host';空时默认 'help'。";
|
|
53
|
+
readonly en: "Full command line string, e.g. 'local \"wsl bash\"' / 'exec \"ls -la\" -w' / 'connect user@host' / 'upload ./a.txt ~/a.txt'; defaults to 'help' when empty.";
|
|
54
|
+
readonly zh: "完整命令行字符串,如 'local \"wsl bash\"' / 'exec \"ls -la\" -w' / 'connect user@host' / 'upload ./a.txt ~/a.txt';空时默认 'help'。";
|
|
51
55
|
};
|
|
52
56
|
readonly term_cli_help: {
|
|
53
57
|
readonly en: `term_cli unified CLI tool: manage SSH / local (wsl, pwsh, bash) / container (docker exec) terminal sessions.
|
|
@@ -61,12 +65,19 @@ Subcommands:
|
|
|
61
65
|
-p accepts plain text or file:<path> (read password from file, avoids exposure)
|
|
62
66
|
local "<command>" [-n name] [-c cwd]
|
|
63
67
|
start a local/container terminal (e.g. "pwsh" / "docker exec -it <container> sh")
|
|
64
|
-
exec "<command>" [-n name] [-w]
|
|
68
|
+
exec "<command>" [--base64 | --file <path>] [-n name] [-w]
|
|
65
69
|
run a command in the terminal (default: submit and return immediately without waiting for the result; -w waits until the command actually finishes — use it only for commands expected to finish quickly; for long-running / stdin-reading / interactive commands use the default and poll with status/read, because -w keeps waiting as long as the command runs)
|
|
66
70
|
read [-n name] [-s buffer|history] [-l limit] [--head] [--includeCommand]
|
|
67
71
|
read terminal output: buffer (current snapshot, consumed) / history (default tail last N)
|
|
68
|
-
send "<text>" [-n name]
|
|
72
|
+
send "<text>" [--base64 | --file <path>] [-n name]
|
|
69
73
|
send text/keystrokes (\\xHH any hex byte, \\t Tab, \\r/\\n Enter, \\x03 Ctrl-C, \\x04 Ctrl-D, \\x1a Ctrl-Z, \\x1b Esc)
|
|
74
|
+
upload <local> <remote> [-n name] [--overwrite] [--mkdir]
|
|
75
|
+
upload a regular file from this machine (plugin host) to the SSH session over SFTP
|
|
76
|
+
local supports ~; remote supports absolute or home-relative paths and ~/ (expanded by SFTP, no shell; ~user unsupported); Windows drive paths must use forward slashes (C:/dir/file)
|
|
77
|
+
fails if the target exists unless --overwrite; parents are not created unless --mkdir
|
|
78
|
+
SSH sessions only; directories and symlinks are rejected; max 256 MiB
|
|
79
|
+
download <remote> <local> [-n name] [--overwrite] [--mkdir]
|
|
80
|
+
download a regular file over SFTP; same path/overwrite/mkdir/size rules
|
|
70
81
|
status [-n name]
|
|
71
82
|
terminal state (busy/pending/connection); omit name to list all
|
|
72
83
|
disconnect [-n name]
|
|
@@ -74,13 +85,24 @@ Subcommands:
|
|
|
74
85
|
help
|
|
75
86
|
show this help
|
|
76
87
|
|
|
88
|
+
Payload input (exec / send):
|
|
89
|
+
--base64 decode base64 (whitespace ignored) to strict UTF-8 text; send sends it raw (no \\n / \\xHH decoding), exec still runs the command pipeline and normalizes CRLF
|
|
90
|
+
--file <path> read a LOCAL UTF-8 file on the plugin host (not remote); send sends it raw, exec still runs the command pipeline; strips BOM, rejects NUL; ~ is expanded
|
|
91
|
+
-- end option parsing: exec -- "-x" / send -- "-n" (payload starting with "-")
|
|
92
|
+
For complex quotes or shell-specific escaping, prefer --base64 / --file over guessing outer quotes.
|
|
93
|
+
|
|
77
94
|
Examples:
|
|
78
95
|
term_cli connect root@192.168.1.10
|
|
79
96
|
term_cli connect user@host -p file:C:\\secrets\\pw.txt
|
|
80
97
|
term_cli local "docker exec -it myctr bash" -n db
|
|
81
98
|
term_cli exec "ls -la" -w
|
|
82
99
|
term_cli exec "cd /var/log && tail -50 syslog"
|
|
100
|
+
term_cli exec -- "-x"
|
|
101
|
+
term_cli exec --base64 "bHMK"
|
|
102
|
+
term_cli send --file ./payload.txt -n db
|
|
83
103
|
term_cli send "mypass\\r" -n default
|
|
104
|
+
term_cli upload ./dist/app.tgz /opt/app/app.tgz --overwrite
|
|
105
|
+
term_cli download ~/logs/app.log ./app.log --mkdir
|
|
84
106
|
term_cli read -n db -s buffer
|
|
85
107
|
term_cli status
|
|
86
108
|
term_cli disconnect -n db
|
|
@@ -96,12 +118,19 @@ Examples:
|
|
|
96
118
|
-p 支持明文或 file:<路径>(从文件读密码,避免暴露)
|
|
97
119
|
local "<command>" [-n name] [-c cwd]
|
|
98
120
|
启动本地/容器终端(如 "pwsh" / "docker exec -it <容器> sh")
|
|
99
|
-
exec "<command>" [-n name] [-w]
|
|
121
|
+
exec "<command>" [--base64 | --file <path>] [-n name] [-w]
|
|
100
122
|
在指定终端执行命令(默认:提交后立即返回、不等结果;-w 等到命令真正结束 —— 只适用于预期很快结束的命令;长时间运行 / 需要 stdin / 交互的命令请用默认模式,再用 status/read 轮询,因为只要命令没结束 -w 就会一直等)
|
|
101
123
|
read [-n name] [-s buffer|history] [-l limit] [--head] [--includeCommand]
|
|
102
124
|
读终端输出:buffer 实时快照(读取后清空)/ history 历史快照(默认 tail 后 N 条)
|
|
103
|
-
send "<text>" [-n name]
|
|
125
|
+
send "<text>" [--base64 | --file <path>] [-n name]
|
|
104
126
|
发送文本/按键(\\xHH 任意十六进制字节、\\t Tab、\\r/\\n 回车、\\x03 Ctrl-C、\\x04 Ctrl-D、\\x1a Ctrl-Z、\\x1b Esc)
|
|
127
|
+
upload <local> <remote> [-n name] [--overwrite] [--mkdir]
|
|
128
|
+
通过 SFTP 把本机(插件进程)普通文件上传到 SSH 会话
|
|
129
|
+
local 支持 ~;remote 支持绝对路径、相对 home 路径与 ~/(由 SFTP 展开,不经过 shell;不支持 ~user);Windows 盘符路径必须用正斜杠(C:/dir/file)
|
|
130
|
+
目标已存在默认失败,需加 --overwrite;默认不建父目录,需加 --mkdir
|
|
131
|
+
仅支持 SSH 会话;目录与符号链接会被拒绝;单文件上限 256 MiB
|
|
132
|
+
download <remote> <local> [-n name] [--overwrite] [--mkdir]
|
|
133
|
+
通过 SFTP 下载普通文件;路径/覆盖/建目录/大小规则相同
|
|
105
134
|
status [-n name]
|
|
106
135
|
终端状态(busy/pending/连接);省略 name 列出全部
|
|
107
136
|
disconnect [-n name]
|
|
@@ -109,13 +138,24 @@ Examples:
|
|
|
109
138
|
help
|
|
110
139
|
显示本帮助
|
|
111
140
|
|
|
141
|
+
载荷输入(exec / send):
|
|
142
|
+
--base64 解码 base64(忽略空白)为严格 UTF-8 文本;send 原样发送(不再解释 \\n / \\xHH 等转义),exec 仍走命令管线(CRLF 归一)
|
|
143
|
+
--file <path> 读取插件进程本机的 UTF-8 文件(不是远程文件);send 原样发送,exec 仍走命令管线;剥 BOM、拒绝 NUL;支持 ~ 展开
|
|
144
|
+
-- 终止选项解析:exec -- "-x" / send -- "-n"(载荷以 "-" 开头时)
|
|
145
|
+
复杂引号或目标 shell 专属转义,优先用 --base64 / --file,不要在外层引号里猜转义。
|
|
146
|
+
|
|
112
147
|
示例:
|
|
113
148
|
term_cli connect root@192.168.1.10
|
|
114
149
|
term_cli connect user@host -p file:C:\\secrets\\pw.txt
|
|
115
150
|
term_cli local "docker exec -it myctr bash" -n db
|
|
116
151
|
term_cli exec "ls -la" -w
|
|
117
152
|
term_cli exec "cd /var/log && tail -50 syslog"
|
|
153
|
+
term_cli exec -- "-x"
|
|
154
|
+
term_cli exec --base64 "bHMK"
|
|
155
|
+
term_cli send --file ./payload.txt -n db
|
|
118
156
|
term_cli send "mypass\\r" -n default
|
|
157
|
+
term_cli upload ./dist/app.tgz /opt/app/app.tgz --overwrite
|
|
158
|
+
term_cli download ~/logs/app.log ./app.log --mkdir
|
|
119
159
|
term_cli read -n db -s buffer
|
|
120
160
|
term_cli status
|
|
121
161
|
term_cli disconnect -n db
|
|
@@ -142,12 +182,12 @@ Examples:
|
|
|
142
182
|
readonly zh: "用法: local \"<command>\" [-n name] [-c cwd]";
|
|
143
183
|
};
|
|
144
184
|
readonly cli_exec_usage: {
|
|
145
|
-
readonly en: "Usage: exec \"<command>\" [-n name] [-w]";
|
|
146
|
-
readonly zh: "用法: exec \"<command>\" [-n name] [-w]";
|
|
185
|
+
readonly en: "Usage: exec \"<command>\" [--base64 | --file <path>] [-n name] [-w]";
|
|
186
|
+
readonly zh: "用法: exec \"<command>\" [--base64 | --file <path>] [-n name] [-w]";
|
|
147
187
|
};
|
|
148
188
|
readonly cli_send_usage: {
|
|
149
|
-
readonly en: "Usage: send \"<text>\" [-n name]";
|
|
150
|
-
readonly zh: "用法: send \"<text>\" [-n name]";
|
|
189
|
+
readonly en: "Usage: send \"<text>\" [--base64 | --file <path>] [-n name]";
|
|
190
|
+
readonly zh: "用法: send \"<text>\" [--base64 | --file <path>] [-n name]";
|
|
151
191
|
};
|
|
152
192
|
readonly cli_need_command: {
|
|
153
193
|
readonly en: "Need a command";
|
|
@@ -157,10 +197,114 @@ Examples:
|
|
|
157
197
|
readonly en: "Need text to send";
|
|
158
198
|
readonly zh: "需要发送内容";
|
|
159
199
|
};
|
|
200
|
+
readonly payload_conflict: {
|
|
201
|
+
readonly en: "Use either --base64 or --file, not both.";
|
|
202
|
+
readonly zh: "只能二选一:--base64 或 --file。";
|
|
203
|
+
};
|
|
204
|
+
readonly payload_bad_base64: {
|
|
205
|
+
readonly en: "Invalid base64 payload.";
|
|
206
|
+
readonly zh: "base64 载荷不合法。";
|
|
207
|
+
};
|
|
208
|
+
readonly payload_bad_encoding: {
|
|
209
|
+
readonly en: "Payload is not valid UTF-8 (or contains NUL); save it as UTF-8.";
|
|
210
|
+
readonly zh: "载荷不是合法 UTF-8(或含 NUL);请保存为 UTF-8。";
|
|
211
|
+
};
|
|
212
|
+
readonly payload_file_error: {
|
|
213
|
+
readonly en: "Cannot read file: {path}";
|
|
214
|
+
readonly zh: "无法读取文件:{path}";
|
|
215
|
+
};
|
|
216
|
+
readonly cli_need_transfer_paths: {
|
|
217
|
+
readonly en: "Need a local path and a remote path";
|
|
218
|
+
readonly zh: "需要本地路径和远端路径";
|
|
219
|
+
};
|
|
220
|
+
readonly cli_upload_usage: {
|
|
221
|
+
readonly en: "Usage: upload <local> <remote> [-n name] [--overwrite] [--mkdir]";
|
|
222
|
+
readonly zh: "用法: upload <local> <remote> [-n name] [--overwrite] [--mkdir]";
|
|
223
|
+
};
|
|
224
|
+
readonly cli_download_usage: {
|
|
225
|
+
readonly en: "Usage: download <remote> <local> [-n name] [--overwrite] [--mkdir]";
|
|
226
|
+
readonly zh: "用法: download <remote> <local> [-n name] [--overwrite] [--mkdir]";
|
|
227
|
+
};
|
|
228
|
+
readonly upload_ok: {
|
|
229
|
+
readonly en: "Uploaded {local} -> {remote} ({bytes} bytes, {ms} ms)";
|
|
230
|
+
readonly zh: "已上传 {local} -> {remote}({bytes} 字节,{ms} ms)";
|
|
231
|
+
};
|
|
232
|
+
readonly download_ok: {
|
|
233
|
+
readonly en: "Downloaded {remote} -> {local} ({bytes} bytes, {ms} ms)";
|
|
234
|
+
readonly zh: "已下载 {remote} -> {local}({bytes} 字节,{ms} ms)";
|
|
235
|
+
};
|
|
236
|
+
readonly transfer_denied: {
|
|
237
|
+
readonly en: "Transfer denied by user.";
|
|
238
|
+
readonly zh: "用户已拒绝传输。";
|
|
239
|
+
};
|
|
240
|
+
readonly transfer_err_exists: {
|
|
241
|
+
readonly en: "{path} already exists. Add --overwrite to replace it (no auto-rename/backup).";
|
|
242
|
+
readonly zh: "{path} 已存在。需要覆盖请加 --overwrite(不会自动改名或备份)。";
|
|
243
|
+
};
|
|
244
|
+
readonly transfer_err_local_missing: {
|
|
245
|
+
readonly en: "Local file not found: {path}";
|
|
246
|
+
readonly zh: "本地文件不存在:{path}";
|
|
247
|
+
};
|
|
248
|
+
readonly transfer_err_local_is_dir: {
|
|
249
|
+
readonly en: "Local path is a directory (only regular files are supported): {path}";
|
|
250
|
+
readonly zh: "本地路径是目录(只支持普通文件):{path}";
|
|
251
|
+
};
|
|
252
|
+
readonly transfer_err_remote_missing: {
|
|
253
|
+
readonly en: "Remote file not found: {path}";
|
|
254
|
+
readonly zh: "远端文件不存在:{path}";
|
|
255
|
+
};
|
|
256
|
+
readonly transfer_err_remote_is_dir: {
|
|
257
|
+
readonly en: "Remote path is a directory (only regular files are supported): {path}";
|
|
258
|
+
readonly zh: "远端路径是目录(只支持普通文件):{path}";
|
|
259
|
+
};
|
|
260
|
+
readonly transfer_err_symlink: {
|
|
261
|
+
readonly en: "Symbolic links are not supported: {path}";
|
|
262
|
+
readonly zh: "不支持符号链接:{path}";
|
|
263
|
+
};
|
|
264
|
+
readonly transfer_err_parent_missing: {
|
|
265
|
+
readonly en: "Parent directory does not exist: {path}. Add --mkdir to create it.";
|
|
266
|
+
readonly zh: "父目录不存在:{path}。需要创建请加 --mkdir。";
|
|
267
|
+
};
|
|
268
|
+
readonly transfer_err_too_large: {
|
|
269
|
+
readonly en: "File is too large for v1 transfer: {path} (limit {limit}).";
|
|
270
|
+
readonly zh: "文件超过 v1 传输上限:{path}(上限 {limit})。";
|
|
271
|
+
};
|
|
272
|
+
readonly transfer_err_sftp_unavailable: {
|
|
273
|
+
readonly en: "SFTP is unavailable on this SSH session. Reconnect with term_cli connect and retry.";
|
|
274
|
+
readonly zh: "该 SSH 会话的 SFTP 不可用。请用 term_cli connect 重新连接后重试。";
|
|
275
|
+
};
|
|
276
|
+
readonly transfer_err_timeout: {
|
|
277
|
+
readonly en: "Transfer timed out ({seconds}s). The SFTP channel was aborted; no new rename/commit is started, but an already-issued rename may still run. A partially written file may remain at the target path or in a .part/.bak temp file.";
|
|
278
|
+
readonly zh: "传输超时({seconds}s)。已中止 SFTP 通道,不再主动发起新的 rename/commit,但已发出的 rename 仍可能被执行;目标路径或 `.part`/`.bak` 临时文件可能残留半截内容。";
|
|
279
|
+
};
|
|
280
|
+
readonly transfer_err_io: {
|
|
281
|
+
readonly en: "Transfer failed: {reason}";
|
|
282
|
+
readonly zh: "传输失败:{reason}";
|
|
283
|
+
};
|
|
284
|
+
readonly transfer_err_unsupported: {
|
|
285
|
+
readonly en: "Only regular files are supported (not {path}).";
|
|
286
|
+
readonly zh: "只支持普通文件({path} 不是普通文件)。";
|
|
287
|
+
};
|
|
288
|
+
readonly transfer_err_tilde_user: {
|
|
289
|
+
readonly en: "~user paths are not supported; use ~/ (current user) or an absolute path: {path}";
|
|
290
|
+
readonly zh: "不支持 ~user 路径;请用 ~/(当前用户)或绝对路径:{path}";
|
|
291
|
+
};
|
|
292
|
+
readonly transfer_err_remote_path_backslash: {
|
|
293
|
+
readonly en: "Remote Windows paths must use forward slashes (e.g. C:/dir/file); backslash drive paths are rejected: {path}";
|
|
294
|
+
readonly zh: "远端 Windows 路径必须用正斜杠(如 C:/dir/file);反斜杠盘符路径已拒绝:{path}";
|
|
295
|
+
};
|
|
296
|
+
readonly transfer_err_ssh_only: {
|
|
297
|
+
readonly en: "File transfer is only supported on SSH sessions (term_cli connect); local/container sessions cannot transfer files.";
|
|
298
|
+
readonly zh: "文件传输仅支持 SSH 会话(term_cli connect);本地/容器会话不能传文件。";
|
|
299
|
+
};
|
|
160
300
|
readonly cli_unknown: {
|
|
161
301
|
readonly en: "Unknown command: {cmd}";
|
|
162
302
|
readonly zh: "未知命令: {cmd}";
|
|
163
303
|
};
|
|
304
|
+
readonly cli_unclosed_quote: {
|
|
305
|
+
readonly en: "Unclosed quote in term_cli args; command not sent.";
|
|
306
|
+
readonly zh: "term_cli 参数中有未闭合引号,命令未发送。";
|
|
307
|
+
};
|
|
164
308
|
readonly st_name: {
|
|
165
309
|
readonly en: "name";
|
|
166
310
|
readonly zh: "名称";
|
|
@@ -289,6 +433,10 @@ Examples:
|
|
|
289
433
|
readonly en: "Terminal Records";
|
|
290
434
|
readonly zh: "终端记录";
|
|
291
435
|
};
|
|
436
|
+
readonly web_close: {
|
|
437
|
+
readonly en: "Close";
|
|
438
|
+
readonly zh: "关闭";
|
|
439
|
+
};
|
|
292
440
|
readonly web_loading: {
|
|
293
441
|
readonly en: "Loading...";
|
|
294
442
|
readonly zh: "加载中...";
|
|
@@ -305,6 +453,34 @@ Examples:
|
|
|
305
453
|
readonly en: "terminals";
|
|
306
454
|
readonly zh: "终端";
|
|
307
455
|
};
|
|
456
|
+
readonly web_transfers: {
|
|
457
|
+
readonly en: "Transfers";
|
|
458
|
+
readonly zh: "传输任务";
|
|
459
|
+
};
|
|
460
|
+
readonly web_transfers_empty: {
|
|
461
|
+
readonly en: "No transfers in this session.";
|
|
462
|
+
readonly zh: "当前会话暂无传输任务。";
|
|
463
|
+
};
|
|
464
|
+
readonly web_transfer_upload: {
|
|
465
|
+
readonly en: "Upload";
|
|
466
|
+
readonly zh: "上传";
|
|
467
|
+
};
|
|
468
|
+
readonly web_transfer_download: {
|
|
469
|
+
readonly en: "Download";
|
|
470
|
+
readonly zh: "下载";
|
|
471
|
+
};
|
|
472
|
+
readonly web_transfer_running: {
|
|
473
|
+
readonly en: "running";
|
|
474
|
+
readonly zh: "传输中";
|
|
475
|
+
};
|
|
476
|
+
readonly web_transfer_done: {
|
|
477
|
+
readonly en: "done";
|
|
478
|
+
readonly zh: "完成";
|
|
479
|
+
};
|
|
480
|
+
readonly web_transfer_failed: {
|
|
481
|
+
readonly en: "failed";
|
|
482
|
+
readonly zh: "失败";
|
|
483
|
+
};
|
|
308
484
|
readonly web_local: {
|
|
309
485
|
readonly en: "local";
|
|
310
486
|
readonly zh: "本地";
|
package/dist/i18n.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAE9B,4CAA4C;AAC5C,MAAM,MAAM,OAAO,GAAG;KAAG,CAAC,IAAI,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,OAAO,CAAC,CAAC,CAAA;AAavH;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,UAAU,GAAE,IAAW,GAAG,IAAI,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,UAAU,GAAE,IAAW,GAAG,IAAI,CAExD;AAED,kBAAkB;AAClB,eAAO,MAAM,CAAC;aACZ,SAAS;iBACP,EAAE,EAAE,0LAA0L;iBAC9L,EAAE,EAAE,6EAA6E;;aAEnF,OAAO;iBACL,EAAE,EAAE,cAAc;iBAClB,EAAE,EAAE,YAAY;;aAElB,gBAAgB;iBACd,EAAE,EAAE,kCAAkC;iBACtC,EAAE,EAAE,sBAAsB;;aAE5B,wBAAwB;iBACtB,EAAE,EAAE,6BAA6B;iBACjC,EAAE,EAAE,UAAU;;aAEhB,iBAAiB;iBACf,EAAE,EAAE,6IAA6I;iBACjJ,EAAE,EAAE,uFAAuF;;aAE7F,qBAAqB;iBACnB,EAAE,EAAE,gGAAgG;iBACpG,EAAE,EAAE,6DAA6D;;aAEnE,QAAQ;iBACN,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
|