@lemoncat7/dsh-ssh 1.11.7 → 1.14.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 (97) hide show
  1. package/ARCHITECTURE.md +4 -0
  2. package/README.md +3 -0
  3. package/docs/releases/1.12.0.md +15 -0
  4. package/docs/releases/1.13.0.md +15 -0
  5. package/docs/releases/1.14.0.md +10 -0
  6. package/docs/third-party/react-bits.md +29 -0
  7. package/docs/usage.md +28 -1
  8. package/lib/api.d.ts.map +1 -1
  9. package/lib/api.js +22 -0
  10. package/lib/api.js.map +1 -1
  11. package/lib/client-api.d.ts +3 -0
  12. package/lib/client-api.d.ts.map +1 -1
  13. package/lib/client-api.js.map +1 -1
  14. package/lib/client.d.ts.map +1 -1
  15. package/lib/client.js +291 -185
  16. package/lib/client.js.map +4 -4
  17. package/lib/config-backup-panel.d.ts +2 -0
  18. package/lib/config-backup-panel.d.ts.map +1 -0
  19. package/lib/config-backup-panel.js +74 -0
  20. package/lib/config-backup-panel.js.map +1 -0
  21. package/lib/config-backup.d.ts +6 -0
  22. package/lib/config-backup.d.ts.map +1 -0
  23. package/lib/config-backup.js +142 -0
  24. package/lib/config-backup.js.map +1 -0
  25. package/lib/config.d.ts +2 -0
  26. package/lib/config.d.ts.map +1 -1
  27. package/lib/config.js +4 -0
  28. package/lib/config.js.map +1 -1
  29. package/lib/connection-policy.d.ts +6 -0
  30. package/lib/connection-policy.d.ts.map +1 -0
  31. package/lib/connection-policy.js +10 -0
  32. package/lib/connection-policy.js.map +1 -0
  33. package/lib/connector.d.ts +9 -1
  34. package/lib/connector.d.ts.map +1 -1
  35. package/lib/connector.js +39 -7
  36. package/lib/connector.js.map +1 -1
  37. package/lib/credentials.d.ts +2 -0
  38. package/lib/credentials.d.ts.map +1 -1
  39. package/lib/credentials.js +5 -0
  40. package/lib/credentials.js.map +1 -1
  41. package/lib/domain.d.ts +4 -0
  42. package/lib/domain.d.ts.map +1 -1
  43. package/lib/domain.js +3 -0
  44. package/lib/domain.js.map +1 -1
  45. package/lib/file-transfer-tools.d.ts +2 -1
  46. package/lib/file-transfer-tools.d.ts.map +1 -1
  47. package/lib/file-transfer-tools.js +8 -6
  48. package/lib/file-transfer-tools.js.map +1 -1
  49. package/lib/gist-sync.d.ts +3 -1
  50. package/lib/gist-sync.d.ts.map +1 -1
  51. package/lib/gist-sync.js +10 -3
  52. package/lib/gist-sync.js.map +1 -1
  53. package/lib/index.d.ts.map +1 -1
  54. package/lib/index.js +3 -0
  55. package/lib/index.js.map +1 -1
  56. package/lib/locales/messages.d.ts +448 -0
  57. package/lib/locales/messages.d.ts.map +1 -1
  58. package/lib/locales/messages.js +112 -0
  59. package/lib/locales/messages.js.map +1 -1
  60. package/lib/profile-editor.d.ts.map +1 -1
  61. package/lib/profile-editor.js +9 -2
  62. package/lib/profile-editor.js.map +1 -1
  63. package/lib/settings-pane.d.ts +2 -0
  64. package/lib/settings-pane.d.ts.map +1 -0
  65. package/lib/settings-pane.js +54 -0
  66. package/lib/settings-pane.js.map +1 -0
  67. package/lib/ssh-channel.d.ts +4 -0
  68. package/lib/ssh-channel.d.ts.map +1 -0
  69. package/lib/ssh-channel.js +37 -0
  70. package/lib/ssh-channel.js.map +1 -0
  71. package/lib/sync-panel.d.ts +4 -0
  72. package/lib/sync-panel.d.ts.map +1 -0
  73. package/lib/sync-panel.js +252 -0
  74. package/lib/sync-panel.js.map +1 -0
  75. package/lib/sync-stepper.d.ts +16 -0
  76. package/lib/sync-stepper.d.ts.map +1 -0
  77. package/lib/sync-stepper.js +42 -0
  78. package/lib/sync-stepper.js.map +1 -0
  79. package/lib/temporary-access.d.ts +2 -1
  80. package/lib/temporary-access.d.ts.map +1 -1
  81. package/lib/temporary-access.js +3 -3
  82. package/lib/temporary-access.js.map +1 -1
  83. package/lib/terminal-connection-pool.d.ts +16 -0
  84. package/lib/terminal-connection-pool.d.ts.map +1 -0
  85. package/lib/terminal-connection-pool.js +111 -0
  86. package/lib/terminal-connection-pool.js.map +1 -0
  87. package/lib/terminal.d.ts.map +1 -1
  88. package/lib/terminal.js +11 -10
  89. package/lib/terminal.js.map +1 -1
  90. package/lib/tool-entry.d.ts +11 -0
  91. package/lib/tool-entry.d.ts.map +1 -0
  92. package/lib/tool-entry.js +64 -0
  93. package/lib/tool-entry.js.map +1 -0
  94. package/lib/tools.d.ts.map +1 -1
  95. package/lib/tools.js +10 -12
  96. package/lib/tools.js.map +1 -1
  97. package/package.json +4 -2
@@ -0,0 +1,111 @@
1
+ /** Shares authentication only. Every lease still opens its own SSH channel. */
2
+ export class TerminalConnectionPool {
3
+ idleMs;
4
+ limit;
5
+ entries = new Map();
6
+ all = new Set();
7
+ closed = false;
8
+ constructor(idleMs = 30_000, limit = 32) {
9
+ this.idleMs = idleMs;
10
+ this.limit = limit;
11
+ }
12
+ async acquire(key, open, signal) {
13
+ signal?.throwIfAborted();
14
+ if (this.closed)
15
+ throw new Error('SSH connection pool is closed');
16
+ let entry = this.entries.get(key);
17
+ if (!entry) {
18
+ // Bound idle and in-flight resources, including retired active transports.
19
+ if (this.all.size >= this.limit) {
20
+ for (const idle of this.all)
21
+ if (idle.users === 0) {
22
+ this.retire(idle);
23
+ break;
24
+ }
25
+ if (this.all.size >= this.limit)
26
+ throw new Error('SSH connection pool is full; close unused terminals first');
27
+ }
28
+ const controller = new AbortController();
29
+ entry = { key, controller, opening: undefined, users: 0, retired: false };
30
+ const created = entry;
31
+ this.entries.set(key, entry);
32
+ this.all.add(entry);
33
+ entry.opening = Promise.resolve().then(() => open(controller.signal)).then(connection => {
34
+ created.connection = connection;
35
+ if (created.retired || this.closed || controller.signal.aborted) {
36
+ connection.close();
37
+ throw new Error('SSH connection opening was cancelled or its configuration changed');
38
+ }
39
+ connection.client.once('close', () => this.retire(created));
40
+ connection.client.once('end', () => this.retire(created));
41
+ connection.client.once('error', () => this.retire(created));
42
+ return connection;
43
+ }).catch(error => { this.retire(created); throw error; });
44
+ }
45
+ const held = entry;
46
+ if (held.users >= 8)
47
+ throw new Error('This shared SSH connection already has 8 terminals; close one or disable connection reuse');
48
+ clearTimeout(held.timer);
49
+ held.users++;
50
+ let released = false;
51
+ const release = () => {
52
+ if (released)
53
+ return;
54
+ released = true;
55
+ held.users--;
56
+ if (held.users === 0) {
57
+ if (held.retired || !held.connection)
58
+ this.retire(held);
59
+ else {
60
+ held.timer = setTimeout(() => this.retire(held), this.idleMs);
61
+ held.timer.unref();
62
+ }
63
+ }
64
+ };
65
+ let abort;
66
+ try {
67
+ const connection = await (signal ? Promise.race([held.opening, new Promise((_resolve, reject) => {
68
+ abort = () => reject(signal.reason ?? new Error('SSH connection was aborted'));
69
+ signal.addEventListener('abort', abort, { once: true });
70
+ if (signal.aborted)
71
+ abort();
72
+ })]) : held.opening);
73
+ signal?.throwIfAborted();
74
+ if (held.retired)
75
+ throw new Error('SSH connection changed; reopen the terminal');
76
+ return connection.lease(release);
77
+ }
78
+ catch (error) {
79
+ release();
80
+ throw error;
81
+ }
82
+ finally {
83
+ if (abort)
84
+ signal?.removeEventListener('abort', abort);
85
+ }
86
+ }
87
+ /** Stop new reuse without interrupting shells that already own a lease. */
88
+ drain() { for (const entry of this.all)
89
+ this.retire(entry); }
90
+ close() {
91
+ this.closed = true;
92
+ for (const entry of this.all) {
93
+ entry.controller.abort();
94
+ entry.connection?.close();
95
+ this.retire(entry);
96
+ }
97
+ this.all.clear();
98
+ }
99
+ retire(entry) {
100
+ entry.retired = true;
101
+ clearTimeout(entry.timer);
102
+ if (this.entries.get(entry.key) === entry)
103
+ this.entries.delete(entry.key);
104
+ if (!entry.connection || entry.users === 0 || this.closed) {
105
+ entry.controller.abort();
106
+ entry.connection?.close();
107
+ this.all.delete(entry);
108
+ }
109
+ }
110
+ }
111
+ //# sourceMappingURL=terminal-connection-pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-connection-pool.js","sourceRoot":"","sources":["../src/terminal-connection-pool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
package/lib/terminal.js CHANGED
@@ -4,6 +4,7 @@ import { detectPromptShell, directoryPromptHook } from './terminal-shell-integra
4
4
  import { TerminalBootstrapEcho } from './terminal-bootstrap-echo.js';
5
5
  import { OrderedTerminalInput, TerminalOutputBuffer } from './terminal-io.js';
6
6
  import { terminalControlByte } from './terminal-control.js';
7
+ import { openSshChannel } from './ssh-channel.js';
7
8
  const MAX_SCROLLBACK_CHARS = 256_000;
8
9
  export class SshTerminalBackend {
9
10
  connector;
@@ -22,9 +23,9 @@ export class SshTerminalBackend {
22
23
  throw new Error('This SSH profile is not injected into the current DSH session');
23
24
  if (injection.permission !== 'terminal')
24
25
  throw new Error('This SSH injection allows one-shot commands only');
25
- const connection = await this.connector.connect(profileId, spec.signal);
26
+ const connection = await this.connector.connectTerminal(profileId, `session:${spec.owner.session.id}`, spec.signal);
26
27
  try {
27
- const channel = await openShell(connection, 120, 32);
28
+ const channel = await openShell(connection, 120, 32, spec.signal);
28
29
  return new SshTerminalSession(connection, channel, `Connected to ${connection.profile.name} (${connection.profile.username}@${connection.profile.host})`);
29
30
  }
30
31
  catch (error) {
@@ -50,6 +51,7 @@ export class SshTerminalSession {
50
51
  channel.on('data', (chunk) => this.receive(String(chunk)));
51
52
  channel.stderr?.setEncoding('utf8');
52
53
  channel.stderr?.on('data', (chunk) => this.receive(String(chunk)));
54
+ channel.on('error', () => { channel.destroy(); });
53
55
  channel.on('exit', (code, signal) => {
54
56
  this.terminalStatus = { kind: 'exited', exitCode: code ?? null, signal: normalizeSignal(signal) };
55
57
  this.active?.settle('session_exit');
@@ -224,9 +226,9 @@ export class BrowserTerminalManager {
224
226
  this.pending++;
225
227
  let connection;
226
228
  try {
227
- connection = await this.connector.connect(profileId, signal);
229
+ connection = await this.connector.connectTerminal(profileId, 'browser', signal);
228
230
  const promptShell = await detectPromptShell(connection.client);
229
- const channel = await openShell(connection, clamp(cols, 20, 400), clamp(rows, 5, 200));
231
+ const channel = await openShell(connection, clamp(cols, 20, 400), clamp(rows, 5, 200), signal);
230
232
  if (this.closing || signal?.aborted) {
231
233
  channel.destroy();
232
234
  throw new Error('SSH terminal opening was cancelled');
@@ -301,9 +303,9 @@ export class AiTerminalManager {
301
303
  await this.removeRecords(ownerId, obsolete);
302
304
  if (reusable !== undefined)
303
305
  return terminalOpenResult(reusable, true);
304
- const connection = await this.connector.connect(profileId, signal);
306
+ const connection = await this.connector.connectTerminal(profileId, `session:${ownerId}`, signal);
305
307
  try {
306
- const channel = await openShell(connection, 120, 32);
308
+ const channel = await openShell(connection, 120, 32, signal);
307
309
  const terminalId = randomUUID();
308
310
  const session = new SshTerminalSession(connection, channel, `Connected to ${connection.profile.name} (${connection.profile.username}@${connection.profile.host})`);
309
311
  const record = {
@@ -468,6 +470,7 @@ export class BrowserTerminal {
468
470
  channel.on('data', (chunk) => this.append(String(chunk)));
469
471
  channel.stderr?.setEncoding('utf8');
470
472
  channel.stderr?.on('data', (chunk) => this.append(String(chunk)));
473
+ channel.on('error', () => { channel.destroy(); });
471
474
  channel.once('close', () => {
472
475
  this.finishBootstrap();
473
476
  this.closed = true;
@@ -529,10 +532,8 @@ export class BrowserTerminal {
529
532
  this.idleTimer = setTimeout(() => { void this.close(); }, 30 * 60_000);
530
533
  }
531
534
  }
532
- function openShell(connection, cols, rows) {
533
- return new Promise((resolve, reject) => {
534
- connection.client.shell({ term: connection.profile.terminalType, cols, rows }, (error, channel) => error ? reject(error) : resolve(channel));
535
- });
535
+ function openShell(connection, cols, rows, signal) {
536
+ return openSshChannel(connection.client, connection.profile.connectTimeoutMs, done => connection.client.shell({ term: connection.profile.terminalType, cols, rows }, done), signal);
536
537
  }
537
538
  function normalizeSignal(signal) {
538
539
  if (signal === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { type ToolDefinition, type ToolExecution } from '@deepseek-ai/dsh-tools';
2
+ import type { SshStore } from './store.js';
3
+ export type RegisterOperation = (definition: ToolDefinition) => () => void;
4
+ export declare const SSH_ENTRY = "ssh";
5
+ /** Decode only this plugin's fixed dispatcher; discovery never asks for approval. */
6
+ export declare function sshOperation(exec: Pick<ToolExecution, 'name' | 'arguments'>): {
7
+ name: string;
8
+ arguments: unknown;
9
+ };
10
+ export declare function sshEntry(store: SshStore, operations: ReadonlyMap<string, ToolDefinition>): ToolDefinition;
11
+ //# sourceMappingURL=tool-entry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-entry.d.ts","sourceRoot":"","sources":["../src/tool-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC5F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAG1C,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,cAAc,KAAK,MAAM,IAAI,CAAA;AAC1E,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,qFAAqF;AACrF,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAKlH;AAgBD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,cAAc,CA4BzG"}
@@ -0,0 +1,64 @@
1
+ import { defineTool } from '@deepseek-ai/dsh-tools';
2
+ import { canTransferFiles } from './file-access-policy.js';
3
+ export const SSH_ENTRY = 'ssh';
4
+ /** Decode only this plugin's fixed dispatcher; discovery never asks for approval. */
5
+ export function sshOperation(exec) {
6
+ if (exec.name !== SSH_ENTRY)
7
+ return exec;
8
+ const args = exec.arguments;
9
+ return args?.action === 'call' && typeof args.tool === 'string'
10
+ ? { name: args.tool, arguments: args.arguments ?? {} } : { name: '', arguments: {} };
11
+ }
12
+ function allowed(name, store, sessionId) {
13
+ if (name === 'ssh_request_temporary_access' || name === 'ssh_temporary_exec')
14
+ return true;
15
+ const access = store.injection(sessionId);
16
+ if (name.startsWith('file_')) {
17
+ if (!access?.fileEndpointIds?.length)
18
+ return false;
19
+ return !['file_transfer_start', 'file_transfer_cancel', 'file_download_to_local', 'file_upload_from_local'].includes(name)
20
+ || access.fileEndpointIds.some(id => canTransferFiles(access, id));
21
+ }
22
+ if (!access?.profileIds.length)
23
+ return false;
24
+ if (name === 'ssh_exec')
25
+ return access.permission === 'exec';
26
+ if (name.startsWith('ssh_terminal_') || ['ssh_forward_start', 'ssh_forward_stop'].includes(name))
27
+ return access.permission === 'terminal';
28
+ return true;
29
+ }
30
+ export function sshEntry(store, operations) {
31
+ return defineTool({
32
+ name: SSH_ENTRY,
33
+ description: 'SSH and FTP/SFTP single entry: list available operations, describe one operation to get its exact parameters, then call it. Covers saved-host discovery, authorized commands/terminals, temporary SSH access, port forwarding and file transfers. Never guess IDs or replace file transfer with shell servers/base64. Only download when a saved local copy is actually needed. All session permissions and approval rules still apply.',
34
+ parameters: {
35
+ action: { type: 'string', enum: ['list', 'describe', 'call'], required: true },
36
+ tool: { type: 'string', description: 'Exact operation name from list; required for describe/call.' },
37
+ arguments: { type: 'object', additionalProperties: true, description: 'For call: parameters from describe, as a JSON object.' },
38
+ },
39
+ output: { schema: { type: 'string' }, render: (_args, value) => [{ type: 'text', text: String(value) }] },
40
+ isConcurrencySafe: args => args.action === 'list' || args.action === 'describe',
41
+ presentCall: args => ({ card: 'terminal', title: `SSH · ${args.action === 'list' ? '操作目录' : args.action === 'describe' ? `操作说明 · ${args.tool ?? ''}` : args.tool ?? ''}` }),
42
+ execute: async (args, exec) => {
43
+ exec.signal.throwIfAborted();
44
+ if (!exec.agent)
45
+ throw new Error('SSH requires an owning DSH session');
46
+ const visible = [...operations.values()].filter(tool => allowed(tool.name, store, exec.agent.session.id));
47
+ if (args.action === 'list')
48
+ return JSON.stringify({ operations: visible.map(tool => ({ name: tool.name, summary: tool.description.split(/\.\s/)[0] })), next: 'Use action=describe with a tool name, then action=call with its arguments. Unlisted operations require the relevant session access.' });
49
+ if (!args.tool || !operations.has(args.tool))
50
+ throw new Error('Unknown SSH operation; use action=list first');
51
+ const tool = operations.get(args.tool);
52
+ if (!visible.includes(tool))
53
+ throw new Error('Operation is not allowed by this session permission mode; use action=list or configure session access');
54
+ if (args.action === 'describe')
55
+ return JSON.stringify({ name: tool.name, description: tool.description, parameters: tool.parameters });
56
+ // Each operation was created with defineTool: its original schema is
57
+ // validated again here, followed by live host/endpoint/owner checks.
58
+ // The host gates the visible entry call; plugin approval hooks decode
59
+ // this exact operation without replacing its registry-owned identity.
60
+ return String(await tool.execute(args.arguments ?? {}, exec));
61
+ },
62
+ });
63
+ }
64
+ //# sourceMappingURL=tool-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-entry.js","sourceRoot":"","sources":["../src/tool-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA2C,MAAM,wBAAwB,CAAA;AAE5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAG1D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAA;AAE9B,qFAAqF;AACrF,MAAM,UAAU,YAAY,CAAC,IAA+C;IAC1E,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAgD,CAAA;IAClE,OAAO,IAAI,EAAE,MAAM,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;QAC7D,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAA;AACxF,CAAC;AAED,SAAS,OAAO,CAAC,IAAY,EAAE,KAAe,EAAE,SAAiB;IAC/D,IAAI,IAAI,KAAK,8BAA8B,IAAI,IAAI,KAAK,oBAAoB;QAAE,OAAO,IAAI,CAAA;IACzF,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM;YAAE,OAAO,KAAK,CAAA;QAClD,OAAO,CAAC,CAAC,qBAAqB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;eACrH,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;IACtE,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC5C,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC,UAAU,KAAK,MAAM,CAAA;IAC5D,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU,CAAA;IACzI,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAe,EAAE,UAA+C;IACvF,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yaAAya;QACtb,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC9E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;YACpG,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,WAAW,EAAE,uDAAuD,EAAE;SAChI;QACD,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;QACzG,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU;QAC/E,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;QAC3K,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;YACtE,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;YAC1G,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,qIAAqI,EAAE,CAAC,CAAA;YACtS,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;YAC7G,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAA;YACvC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAA;YACrJ,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;YACtI,qEAAqE;YACrE,qEAAqE;YACrE,sEAAsE;YACtE,sEAAsE;YACtE,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAA;QAC/D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAWhE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,iBAAiB,EAAE,SAAS,CAAC,EAAE,mBAAmB,GAAG,MAAM,IAAI,CAiCvN"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAUhE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,iBAAiB,EAAE,SAAS,CAAC,EAAE,mBAAmB,GAAG,MAAM,IAAI,CAoCvN"}
package/lib/tools.js CHANGED
@@ -3,12 +3,12 @@ import { executeSshCommand } from './exec.js';
3
3
  import { sessionDirectory, setSessionDirectory } from './directory.js';
4
4
  import { registerFileTransferTools } from './file-transfer-tools.js';
5
5
  import { registerTemporaryAccess } from './temporary-access.js';
6
+ import { sshEntry, sshOperation } from './tool-entry.js';
6
7
  const textOutput = {
7
8
  schema: { type: 'string' },
8
9
  render: (_args, value) => [{ type: 'text', text: String(value) }],
9
10
  };
10
11
  const APPROVAL_TOOLS = new Set(['ssh_exec', 'ssh_terminal_open', 'ssh_terminal_send', 'ssh_terminal_signal', 'ssh_forward_start', 'ssh_forward_stop']);
11
- const TERMINAL_ONLY_TOOLS = new Set(['ssh_terminal_open', 'ssh_terminal_send', 'ssh_terminal_read', 'ssh_terminal_signal', 'ssh_terminal_close']);
12
12
  export function registerSshTools(ctx, store, connector, forwards, terminals, files, transfers) {
13
13
  const tools = [
14
14
  listTool(store),
@@ -23,10 +23,12 @@ export function registerSshTools(ctx, store, connector, forwards, terminals, fil
23
23
  forwardStartTool(store, forwards),
24
24
  forwardStopTool(store, forwards),
25
25
  ];
26
- const disposers = tools.map(tool => ctx.tools.register(tool));
27
- disposers.push(registerTemporaryAccess(ctx, store, connector));
26
+ const operations = new Map(tools.map(tool => [tool.name, tool]));
27
+ const register = (tool) => { operations.set(tool.name, tool); return () => { operations.delete(tool.name); }; };
28
+ const disposers = [registerTemporaryAccess(ctx, store, connector, register)];
28
29
  const disposeApproval = ctx.on('tools/pre-execute', async (exec, next) => {
29
- if (!APPROVAL_TOOLS.has(exec.name))
30
+ const operation = sshOperation(exec);
31
+ if (!APPROVAL_TOOLS.has(operation.name))
30
32
  return next();
31
33
  const sessionId = exec.agent?.session.id;
32
34
  if (sessionId === undefined)
@@ -34,10 +36,11 @@ export function registerSshTools(ctx, store, connector, forwards, terminals, fil
34
36
  const injection = store.injection(sessionId);
35
37
  if (injection?.requireCommandApproval !== true)
36
38
  return next();
37
- return { kind: 'ask', reason: `SSH access to an injected remote host was requested by ${exec.name}.` };
39
+ return { kind: 'ask', reason: `SSH access to an injected remote host was requested by ${operation.name}.` };
38
40
  });
39
41
  const disposeVisibility = installModeToolVisibility(ctx, store);
40
- const disposeFileTools = files === undefined || transfers === undefined ? () => { } : registerFileTransferTools(ctx, store, files, transfers);
42
+ const disposeFileTools = files === undefined || transfers === undefined ? () => { } : registerFileTransferTools(ctx, store, files, transfers, register);
43
+ disposers.push(ctx.tools.register(sshEntry(store, operations)));
41
44
  return () => {
42
45
  disposeFileTools();
43
46
  disposeVisibility();
@@ -268,14 +271,9 @@ function installModeToolVisibility(ctx, store) {
268
271
  };
269
272
  }
270
273
  function applyModeToolVisibility(assembly, permission) {
271
- if (permission === undefined)
272
- return;
273
- assembly.tools = assembly.tools.filter(schema => permission === 'terminal' ? schema.name !== 'ssh_exec' : !TERMINAL_ONLY_TOOLS.has(schema.name));
274
274
  assembly.contexts.push({
275
275
  name: 'dsh-ssh:permission-mode',
276
- text: permission === 'terminal'
277
- ? 'SSH permission mode: terminal control. Open one terminal for each required SSH host and working directory, retain the terminalId returned by ssh_terminal_open, and use that same terminalId for subsequent ssh_terminal_send/read calls. Do not call ssh_terminal_open again before each command. If the terminalId is unavailable, ssh_terminal_open is idempotent and safely returns the existing terminal. ssh_exec is intentionally unavailable so commands and output remain visible in SSH Activity.'
278
- : 'SSH permission mode: one-shot commands. Use ssh_exec; interactive terminal tools are intentionally unavailable.',
276
+ text: `Use the ssh entry for all SSH and FTP/SFTP operations: list → describe → call. Operation names are not standalone tools. Current SSH mode: ${permission === 'terminal' ? 'terminal control; keep the returned terminalId for subsequent send/read operations' : permission === 'exec' ? 'one-shot commands' : 'no mounted host; temporary access requires current human consent'}. Discovery never grants access.`,
279
277
  });
280
278
  }
281
279
  function requireForward(store, exec, ruleId) {
package/lib/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAsE,MAAM,wBAAwB,CAAA;AAEvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAKtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AAGpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAExD,MAAM,UAAU,GAAG;IACjB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;IACnC,MAAM,EAAE,CAAC,KAAc,EAAE,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;CAC7F,CAAA;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,CAAA;AACtJ,MAAM,UAAU,gBAAgB,CAAC,GAAY,EAAE,KAAe,EAAE,SAAuB,EAAE,QAAwB,EAAE,SAA4B,EAAE,KAAyB,EAAE,SAA+B;IACzM,MAAM,KAAK,GAAqB;QAC9B,QAAQ,CAAC,KAAK,CAAC;QACf,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC;QACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;QAC1B,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;QAClC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;QAClC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC;QAClC,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC;QACpC,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC;QACnC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC;QAChC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;QACjC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC;KACjC,CAAA;IACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAyB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IACxF,MAAM,QAAQ,GAAG,CAAC,IAAoB,EAAgB,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,CAAA,CAAC,CAAC,CAAA;IAC3I,MAAM,SAAS,GAAG,CAAC,uBAAuB,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IAE5E,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QACvE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,EAAE,CAAA;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAA;QACxC,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,IAAI,EAAE,CAAA;QAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC5C,IAAI,SAAS,EAAE,sBAAsB,KAAK,IAAI;YAAE,OAAO,IAAI,EAAE,CAAA;QAC7D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,0DAA0D,SAAS,CAAC,IAAI,GAAG,EAAE,CAAA;IAC7G,CAAC,CAAC,CAAA;IACF,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC/D,MAAM,gBAAgB,GAAG,KAAK,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;IACtJ,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IAC/D,OAAO,GAAG,EAAE;QACV,gBAAgB,EAAE,CAAA;QAClB,iBAAiB,EAAE,CAAA;QACnB,eAAe,EAAE,CAAA;QACjB,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE;YAAE,OAAO,EAAE,CAAA;IACtD,CAAC,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAe;IAC/B,OAAO,IAAI,CAAC,UAAU,EAAE,0HAA0H,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5K,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACpH,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ;YACtG,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAChE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,UAAU,EAAE,GAAG,EAAE,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAClG,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;SACxO,CAAC,CAAC,CAAA;QACH,OAAO,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC3D,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED,SAAS,OAAO,CAAC,KAAe,EAAE,SAAuB;IACvD,OAAO,IAAI,CAAC,aAAa,EAAE,gJAAgJ,EAAE;QAC3K,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,iDAAiD,EAAE;QAC7G,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mEAAmE,EAAE;KAC1H,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,CAAA;QAC1D,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAM,CAAC,OAAO,CAAC,EAAE,CAAA;QACxC,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5H,OAAO,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAe,EAAE,SAAuB;IACxD,OAAO,IAAI,CAAC,UAAU,EAAE,2UAA2U,EAAE;QACnW,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,iDAAiD,EAAE;QAC7G,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,wCAAwC,EAAE;QAClG,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wDAAwD,EAAE;KACtG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,CAAA;QAC1D,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/C,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;QACjC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,uBAAuB,CAAA;QAC/G,OAAO,IAAI,CAAC,MAAM,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IAC7L,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,SAA4B;IACrE,OAAO,IAAI,CAAC,mBAAmB,EAAE,uaAAua,EAAE;QACxc,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,iDAAiD,EAAE;QAC7G,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;KACzE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,CAAA;QAC1D,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;QAChF,OAAO,IAAI,CAAC,MAAM,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7H,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,SAA4B;IACrE,OAAO,IAAI,CAAC,mBAAmB,EAAE,kHAAkH,EAAE;QACnJ,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4CAA4C,EAAE;KACvF,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACnD,OAAO,IAAI,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE;YAC7F,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;SAChG,CAAC,CAAC,CAAA;IACL,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,SAA4B;IACrE,OAAO,IAAI,CAAC,mBAAmB,EAAE,qDAAqD,EAAE;QACtF,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9C,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;KAC3B,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACnD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3F,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE;YAC5F,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE;SACpF,CAAC,CAAC,CAAA;IACL,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAe,EAAE,SAA4B;IACvE,OAAO,IAAI,CAAC,qBAAqB,EAAE,kRAAkR,EAAE;QACrT,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;KACnF,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAmB,CAAA;QAClE,OAAO,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1H,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAe,EAAE,SAA4B;IACtE,OAAO,IAAI,CAAC,oBAAoB,EAAE,8BAA8B,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxI,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAA;IAC9G,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAe,EAAE,QAAwB;IAChE,OAAO,IAAI,CAAC,kBAAkB,EAAE,uFAAuF,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAChJ,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACtJ,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACxB,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,QAAwB;IACjE,OAAO,IAAI,CAAC,mBAAmB,EAAE,yIAAyI,EAAE;QAC1K,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3C,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;QACxD,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QACnC,OAAO,IAAI,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAe,EAAE,QAAwB;IAChE,OAAO,IAAI,CAAC,kBAAkB,EAAE,wFAAwF,EAAE;QACxH,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3C,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;QACxD,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QACnC,OAAO,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,IAAI,CACX,IAAY,EACZ,WAAmB,EACnB,UAA+B,EAC/B,OAAiE,EACjE,eAAe,GAAG,KAAK;IAEvB,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5C,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAe;QACxC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;KAC7E,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAc;IAChD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChG,IAAI,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,OAAO,CAAA;IAChF,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,GAAG,IAAI,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;IAC5E,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,IAAoB;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAA;IACxC,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IACvF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IAC5C,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAA;IACjL,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAe,EAAE,IAAoB;IACrE,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC/C,IAAI,SAAS,CAAC,UAAU,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;IAC1I,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAClF,OAAO,IAAI,CAAC,KAAK,CAAA;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,KAAe,EAAE,IAAoB,EAAE,SAAiB,EAAE,UAAuC;IACvH,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC/C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAA;IACjI,IAAI,UAAU,KAAK,MAAM,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAA;IAC9L,IAAI,UAAU,KAAK,UAAU,IAAI,SAAS,CAAC,UAAU,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;IACvK,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAClF,OAAO,IAAI,CAAC,KAAK,CAAA;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAY,EAAE,KAAe;IAC9D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAqB,CAAA;IAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAyB,CAAA;IACpD,MAAM,qBAAqB,GAAG,CAAC,KAAY,EAAiB,EAAE;QAC5D,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC/C,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,OAAO,CAAA;QACzC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAA;QACrH,IAAI,eAAe,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;QAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;aAC9E,IAAI,CAAC,SAAS,CAAC,EAAE;YAChB,IAAI,SAAS;gBAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,eAAe,CAAC,OAAO,cAAc,EAAE,CAAC,CAAA;QACrH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QACxD,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAA;QAC1C,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,CAAC,KAAY,EAAQ,EAAE;QACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAM;QAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,wBAAwB,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;YACzF,MAAM,qBAAqB,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAA;YAC3B,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAA;YAC9E,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC5B,KAAK,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAC9C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAiD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,cAAc,GAAG,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,SAAS,CAAA,CAAC,CAAC,CAAC,CAAA;IAClG,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QAC7D,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAA;QACvB,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,EAAE;QACV,eAAe,EAAE,CAAA;QACjB,cAAc,EAAE,CAAA;QAChB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,CAAA;QAClD,QAAQ,CAAC,KAAK,EAAE,CAAA;QAChB,WAAW,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC,CAAA;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAwB,EAAE,UAA2C;IACpG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB,IAAI,EAAE,yBAAyB;QAC/B,IAAI,EAAE,8IAA8I,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,oFAAoF,CAAC,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,kEAAkE,kCAAkC;KAC1Z,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAe,EAAE,IAAoB,EAAE,MAAc;IAC3E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAClC,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IAC1E,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AACzD,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IACvH,OAAO,KAAgC,CAAA;AACzC,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,EAAE,IAAY,EAAE,GAAW;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,4CAA4C,GAAG,aAAa,CAAC,CAAA;IACtK,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;AACrB,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,IAAY,EAAE,GAAW;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,kCAAkC,GAAG,aAAa,CAAC,CAAA;IAC/H,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,IAAY,EAAE,GAAW,EAAE,GAAW;IACrE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,GAAG,IAAI,KAAK,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,+BAA+B,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAA;IACpK,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,IAAY,EAAE,GAAW,EAAE,GAAW;IAC7E,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,IAAI,CAAC,KAAc,IAAY,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lemoncat7/dsh-ssh",
3
- "version": "1.11.7",
3
+ "version": "1.14.0",
4
4
  "description": "Secure SSH, FTP/FTPS/SFTP file transfer, browser terminals, proxies, port forwarding, and session-scoped AI access for DeepSeek Harness",
5
5
  "keywords": [
6
6
  "deepseek-harness",
@@ -136,7 +136,9 @@
136
136
  "@deepseek-ai/dsh-client-ui-workspace": "0.2.1-rc.2",
137
137
  "@deepseek-ai/dsh-sandbox": "0.2.1-rc.2",
138
138
  "@deepseek-ai/dsh-sandbox-policy": "0.2.1-rc.2",
139
- "@deepseek-ai/dsh-ptc-runtime": "0.2.1-rc.2"
139
+ "@deepseek-ai/dsh-ptc-runtime": "0.2.1-rc.2",
140
+ "@hugeicons/core-free-icons": "^4.3.5",
141
+ "@hugeicons/react": "^1.1.10"
140
142
  },
141
143
  "publishConfig": {
142
144
  "access": "public"