shellx-ai 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +162 -666
- package/dist/automation/element-finder.d.ts +0 -8
- package/dist/automation/element-finder.js +0 -7
- package/dist/automation/element-finder.js.map +1 -1
- package/dist/automation/ui-action-handler.d.ts +1 -1
- package/dist/automation/ui-action-handler.js +58 -31
- package/dist/automation/ui-action-handler.js.map +1 -1
- package/dist/cbor-compat.js +5 -10
- package/dist/cbor-compat.js.map +1 -1
- package/dist/data/index.d.ts +9 -0
- package/dist/data/index.js +11 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/types.d.ts +351 -0
- package/dist/data/types.js +8 -0
- package/dist/data/types.js.map +1 -0
- package/dist/domain-manager.js +4 -5
- package/dist/domain-manager.js.map +1 -1
- package/dist/errors.js +4 -2
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +36 -26
- package/dist/index.js +193 -53
- package/dist/index.js.map +1 -1
- package/dist/protocol.d.ts +27 -5
- package/dist/shellx.d.ts +139 -56
- package/dist/shellx.js +201 -88
- package/dist/shellx.js.map +1 -1
- package/dist/types.d.ts +38 -1
- package/package.json +25 -4
- package/dist/shell/output-buffer.d.ts +0 -152
- package/dist/shell/output-buffer.js +0 -176
- package/dist/shell/output-buffer.js.map +0 -1
- package/dist/shell/shell-command-executor.d.ts +0 -182
- package/dist/shell/shell-command-executor.js +0 -404
- package/dist/shell/shell-command-executor.js.map +0 -1
package/dist/shellx.js
CHANGED
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
// Import refactored modules
|
|
10
10
|
import { UIActionHandler } from "./automation/ui-action-handler.js";
|
|
11
11
|
import { ElementFinder } from "./automation/element-finder.js";
|
|
12
|
-
import { ShellCommandExecutor } from "./shell/shell-command-executor.js";
|
|
13
12
|
// Import client
|
|
14
13
|
import ConnectionClient from "./index.js";
|
|
15
14
|
import { createLogger } from "./logger.js";
|
|
@@ -65,8 +64,6 @@ export class ShellX {
|
|
|
65
64
|
uiActionHandler;
|
|
66
65
|
/** Element finder for locating UI elements */
|
|
67
66
|
elementFinder;
|
|
68
|
-
/** Shell command executor for running shell commands */
|
|
69
|
-
shellCommandExecutor;
|
|
70
67
|
/** Connection client for device communication */
|
|
71
68
|
client;
|
|
72
69
|
/**
|
|
@@ -113,26 +110,18 @@ export class ShellX {
|
|
|
113
110
|
options.onReconnectFailed?.();
|
|
114
111
|
},
|
|
115
112
|
onMessage: (message) => {
|
|
116
|
-
// Forward shell output to ShellX instance
|
|
117
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any
|
|
118
|
-
const wsMessage = message;
|
|
119
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
120
|
-
if (wsMessage.chunks) {
|
|
121
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access
|
|
122
|
-
this.handleShellOutput(wsMessage.chunks);
|
|
123
|
-
}
|
|
124
113
|
// Call user's onMessage callback
|
|
125
114
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
|
|
126
115
|
options.onMessage?.(message);
|
|
127
116
|
},
|
|
117
|
+
onAsrResult: options.onAsrResult ? (text) => options.onAsrResult(text) : undefined,
|
|
118
|
+
onGatewayMessage: options.onGatewayMessage,
|
|
128
119
|
}, this.logger);
|
|
129
120
|
// Initialize handlers
|
|
130
121
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument
|
|
131
122
|
this.uiActionHandler = new UIActionHandler(this.client);
|
|
132
123
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument
|
|
133
124
|
this.elementFinder = new ElementFinder(this.client);
|
|
134
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument
|
|
135
|
-
this.shellCommandExecutor = new ShellCommandExecutor(this.client);
|
|
136
125
|
// Link client and shellx
|
|
137
126
|
this.client.setShellX(this);
|
|
138
127
|
this.logger.info("⏳ Initializing connection...");
|
|
@@ -347,21 +336,55 @@ export class ShellX {
|
|
|
347
336
|
await this.ensureConnectionReady();
|
|
348
337
|
const startTime = Date.now();
|
|
349
338
|
const commandData = typeof cmdOrData === "string" ? { cmd: cmdOrData, ...options } : cmdOrData;
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
339
|
+
// Default ptyType is 0 (shell execution with result)
|
|
340
|
+
const commandType = commandData.ptyType ?? 0;
|
|
341
|
+
if (commandType === 1) {
|
|
342
|
+
// ptyType=1: PTY 单向执行,不返回结果 — fire-and-forget
|
|
343
|
+
const action = {
|
|
344
|
+
type: "command",
|
|
345
|
+
command: commandData.cmd,
|
|
346
|
+
ptyType: commandType,
|
|
347
|
+
};
|
|
348
|
+
// 只有当 terminalId 被指定时才添加到 action 中
|
|
349
|
+
if (commandData.terminalId !== undefined) {
|
|
350
|
+
action.terminalId = commandData.terminalId;
|
|
351
|
+
}
|
|
352
|
+
await this.client.sendMessageWithTaskId({
|
|
353
|
+
action: {
|
|
354
|
+
action,
|
|
355
|
+
},
|
|
356
|
+
}, "oneway", { timeout: commandData.timeout });
|
|
357
|
+
return {
|
|
358
|
+
success: true,
|
|
359
|
+
output: "",
|
|
360
|
+
duration: Date.now() - startTime,
|
|
361
|
+
cmd: commandData.cmd,
|
|
362
|
+
terminalId: commandData.terminalId,
|
|
363
|
+
timestamp: startTime,
|
|
364
|
+
};
|
|
365
|
+
}
|
|
366
|
+
else {
|
|
367
|
+
// ptyType=0: shell 执行并返回结果 — wait for commandResult response
|
|
368
|
+
const { promise } = await this.client.sendMessageWithTaskId({
|
|
369
|
+
action: {
|
|
370
|
+
action: {
|
|
371
|
+
type: "command",
|
|
372
|
+
command: commandData.cmd,
|
|
373
|
+
ptyType: commandType,
|
|
374
|
+
},
|
|
375
|
+
},
|
|
376
|
+
}, "command", { timeout: commandData.timeout });
|
|
377
|
+
const response = await promise;
|
|
378
|
+
return {
|
|
379
|
+
success: response?.success ?? false,
|
|
380
|
+
output: response?.result ?? "",
|
|
381
|
+
error: response?.errorMessage,
|
|
382
|
+
duration: Date.now() - startTime,
|
|
383
|
+
cmd: commandData.cmd,
|
|
384
|
+
terminalId: commandData.terminalId,
|
|
385
|
+
timestamp: startTime,
|
|
386
|
+
};
|
|
387
|
+
}
|
|
365
388
|
}
|
|
366
389
|
/**
|
|
367
390
|
* Execute a clipboard action
|
|
@@ -627,13 +650,6 @@ export class ShellX {
|
|
|
627
650
|
...options,
|
|
628
651
|
});
|
|
629
652
|
}
|
|
630
|
-
/**
|
|
631
|
-
* Wait for any of multiple elements to appear
|
|
632
|
-
* @deprecated Use waitAnyElement() instead for consistency
|
|
633
|
-
*/
|
|
634
|
-
async waitForAnyElement(selectors, timeout = 10000) {
|
|
635
|
-
return this.waitAnyElement(selectors, timeout);
|
|
636
|
-
}
|
|
637
653
|
/**
|
|
638
654
|
* Wait for any of multiple elements to appear
|
|
639
655
|
*
|
|
@@ -685,27 +701,6 @@ export class ShellX {
|
|
|
685
701
|
}, { maxScrolls, direction });
|
|
686
702
|
}
|
|
687
703
|
// ==================== Shell Command Methods ====================
|
|
688
|
-
/**
|
|
689
|
-
* Handle shell output from WebSocket messages
|
|
690
|
-
*
|
|
691
|
-
* This method should be called in the WebSocket message handler.
|
|
692
|
-
*
|
|
693
|
-
* @param chunks - Shell output chunks
|
|
694
|
-
*
|
|
695
|
-
* @example
|
|
696
|
-
* ```typescript
|
|
697
|
-
* const client = new ConnectionClient(deviceId, {
|
|
698
|
-
* onMessage: (message) => {
|
|
699
|
-
* if (message.chunks) {
|
|
700
|
-
* shellx.handleShellOutput(message.chunks);
|
|
701
|
-
* }
|
|
702
|
-
* }
|
|
703
|
-
* });
|
|
704
|
-
* ```
|
|
705
|
-
*/
|
|
706
|
-
handleShellOutput(chunks) {
|
|
707
|
-
this.shellCommandExecutor.handleShellOutput(chunks);
|
|
708
|
-
}
|
|
709
704
|
/**
|
|
710
705
|
* Send raw WebSocket message (for advanced use cases)
|
|
711
706
|
*
|
|
@@ -747,79 +742,197 @@ export class ShellX {
|
|
|
747
742
|
await this.ensureConnectionReady();
|
|
748
743
|
return this.client.sendRawMessage(message);
|
|
749
744
|
}
|
|
745
|
+
// ==================== ASR / TTS Methods ====================
|
|
750
746
|
/**
|
|
751
|
-
* Start ASR (Automatic Speech Recognition)
|
|
752
|
-
*
|
|
747
|
+
* Start ASR (Automatic Speech Recognition) on the device.
|
|
748
|
+
*
|
|
749
|
+
* The device will begin capturing microphone audio and streaming recognition
|
|
750
|
+
* results back. Each result is delivered via the `onAsrResult` callback
|
|
751
|
+
* configured in `ShellXOptions`, or you can listen to raw messages via
|
|
752
|
+
* `onMessage` and check `message.jsonData?.asr`.
|
|
753
|
+
*
|
|
754
|
+
* @param options - Optional ASR options (e.g. per-call `onResult` callback)
|
|
755
|
+
* @returns Promise that resolves when the start command has been sent
|
|
753
756
|
*
|
|
754
757
|
* @example
|
|
755
758
|
* ```typescript
|
|
756
|
-
*
|
|
757
|
-
*
|
|
759
|
+
* const shellx = new ShellX({
|
|
760
|
+
* deviceId: 'your-device-id',
|
|
761
|
+
* onAsrResult: (text) => console.log('ASR:', text)
|
|
762
|
+
* });
|
|
763
|
+
* await shellx.ready();
|
|
764
|
+
* await shellx.startAsr();
|
|
765
|
+
* // ...user speaks into device microphone...
|
|
766
|
+
* await shellx.stopAsr();
|
|
758
767
|
* ```
|
|
759
768
|
*/
|
|
760
|
-
async
|
|
769
|
+
async startAsr(options) {
|
|
761
770
|
await this.ensureConnectionReady();
|
|
771
|
+
// If the caller passes a per-call onResult, register it temporarily
|
|
772
|
+
if (options?.onResult) {
|
|
773
|
+
const handler = options.onResult;
|
|
774
|
+
// Wrap: re-register a one-shot forwarder in the client config
|
|
775
|
+
// (The primary channel is onAsrResult in ShellXOptions; this is a convenience)
|
|
776
|
+
const original = this.client.config.onAsrResult;
|
|
777
|
+
this.client.config.onAsrResult = (text, source) => {
|
|
778
|
+
handler(text);
|
|
779
|
+
original?.(text, source);
|
|
780
|
+
};
|
|
781
|
+
}
|
|
762
782
|
return this.client.startAsr();
|
|
763
783
|
}
|
|
764
784
|
/**
|
|
765
|
-
* Stop ASR (Automatic Speech Recognition)
|
|
766
|
-
*
|
|
785
|
+
* Stop ASR (Automatic Speech Recognition) on the device.
|
|
786
|
+
*
|
|
787
|
+
* @returns Promise that resolves when the stop command has been sent
|
|
767
788
|
*
|
|
768
789
|
* @example
|
|
769
790
|
* ```typescript
|
|
770
|
-
* await shellx.
|
|
771
|
-
* console.log('Speech recognition stopped');
|
|
791
|
+
* await shellx.stopAsr();
|
|
772
792
|
* ```
|
|
773
793
|
*/
|
|
774
|
-
async
|
|
794
|
+
async stopAsr() {
|
|
775
795
|
await this.ensureConnectionReady();
|
|
776
796
|
return this.client.stopAsr();
|
|
777
797
|
}
|
|
798
|
+
async speak(textOrData, options) {
|
|
799
|
+
await this.ensureConnectionReady();
|
|
800
|
+
const startTime = Date.now();
|
|
801
|
+
const { text, voiceType, volume } = typeof textOrData === "string"
|
|
802
|
+
? { text: textOrData, voiceType: options?.voiceType, volume: options?.volume }
|
|
803
|
+
: textOrData;
|
|
804
|
+
await this.client.speak(text, voiceType, volume);
|
|
805
|
+
return {
|
|
806
|
+
success: true,
|
|
807
|
+
text,
|
|
808
|
+
voiceType,
|
|
809
|
+
volume,
|
|
810
|
+
duration: Date.now() - startTime,
|
|
811
|
+
timestamp: startTime,
|
|
812
|
+
};
|
|
813
|
+
}
|
|
778
814
|
/**
|
|
779
|
-
*
|
|
780
|
-
*
|
|
781
|
-
* @returns Promise that resolves when
|
|
815
|
+
* Stop TTS (Text-to-Speech) on the device.
|
|
816
|
+
*
|
|
817
|
+
* @returns Promise that resolves when the stop command has been sent
|
|
782
818
|
*
|
|
783
819
|
* @example
|
|
784
820
|
* ```typescript
|
|
785
|
-
* await shellx.
|
|
821
|
+
* await shellx.stopSpeaking();
|
|
786
822
|
* ```
|
|
787
823
|
*/
|
|
788
|
-
async
|
|
824
|
+
async stopSpeaking() {
|
|
789
825
|
await this.ensureConnectionReady();
|
|
790
|
-
return this.client.
|
|
826
|
+
return this.client.stopTts();
|
|
791
827
|
}
|
|
828
|
+
// ========================================================================
|
|
829
|
+
// Terminal Management Methods
|
|
830
|
+
// ========================================================================
|
|
792
831
|
/**
|
|
793
|
-
*
|
|
794
|
-
*
|
|
832
|
+
* Close a terminal session by ID
|
|
833
|
+
*
|
|
834
|
+
* This method closes a PTY (pseudo-terminal) session and releases its resources.
|
|
835
|
+
* The terminal ID is the same as the one used in the `terminalId` parameter
|
|
836
|
+
* when executing commands.
|
|
837
|
+
*
|
|
838
|
+
* @param terminalId - Terminal ID (sid) to close
|
|
839
|
+
* @returns Promise that resolves when the close command has been sent
|
|
795
840
|
*
|
|
796
841
|
* @example
|
|
797
842
|
* ```typescript
|
|
798
|
-
*
|
|
843
|
+
* // Execute command in a specific terminal
|
|
844
|
+
* await shellx.command({ cmd: 'pwd', ptyType: 1, terminalId: 12345 });
|
|
845
|
+
*
|
|
846
|
+
* // Close the terminal when done
|
|
847
|
+
* await shellx.closeTerminal(12345);
|
|
799
848
|
* ```
|
|
800
849
|
*/
|
|
801
|
-
async
|
|
850
|
+
async closeTerminal(terminalId) {
|
|
802
851
|
await this.ensureConnectionReady();
|
|
803
|
-
|
|
852
|
+
this.logger.info(`Closing terminal: ${terminalId}`);
|
|
853
|
+
return this.client.closeTerminal(terminalId);
|
|
804
854
|
}
|
|
805
855
|
/**
|
|
806
|
-
*
|
|
807
|
-
*
|
|
808
|
-
*
|
|
809
|
-
*
|
|
856
|
+
* Close the WebSocket connection and cleanup resources
|
|
857
|
+
*
|
|
858
|
+
* This method closes the underlying WebSocket connection to the device.
|
|
859
|
+
* All pending tasks will be cancelled with a connection-closed result.
|
|
860
|
+
*
|
|
861
|
+
* After calling this method, the ShellX instance cannot be used for further
|
|
862
|
+
* operations until a new connection is established.
|
|
810
863
|
*
|
|
811
864
|
* @example
|
|
812
865
|
* ```typescript
|
|
813
|
-
*
|
|
814
|
-
*
|
|
866
|
+
* // Close the connection when done
|
|
867
|
+
* await shellx.close();
|
|
815
868
|
* ```
|
|
816
869
|
*/
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
870
|
+
close() {
|
|
871
|
+
this.logger.info("Closing ShellX connection...");
|
|
872
|
+
this.client.close();
|
|
873
|
+
}
|
|
874
|
+
/**
|
|
875
|
+
* Disconnect from the device (alias for close)
|
|
876
|
+
*
|
|
877
|
+
* @example
|
|
878
|
+
* ```typescript
|
|
879
|
+
* await shellx.disconnect();
|
|
880
|
+
* ```
|
|
881
|
+
*/
|
|
882
|
+
disconnect() {
|
|
883
|
+
this.close();
|
|
884
|
+
}
|
|
885
|
+
// ========================================================================
|
|
886
|
+
// Data Request Methods
|
|
887
|
+
// ========================================================================
|
|
888
|
+
/**
|
|
889
|
+
* Send a data request to the device
|
|
890
|
+
*
|
|
891
|
+
* This is a generic method that allows sending data requests to the device
|
|
892
|
+
* and receiving typed responses. It can be used to implement custom data
|
|
893
|
+
* access functionality beyond what's provided by the ShellX API.
|
|
894
|
+
*
|
|
895
|
+
* @template TResponse - Type of the response
|
|
896
|
+
* @param requestType - The type of data request (e.g., "addAlarm", "getCalls", etc.)
|
|
897
|
+
* @param params - Request parameters
|
|
898
|
+
* @returns Promise resolving to the typed response
|
|
899
|
+
*
|
|
900
|
+
* @example
|
|
901
|
+
* ```typescript
|
|
902
|
+
* // Add an alarm
|
|
903
|
+
* const alarmResult = await shellx.sendDataRequest<AddAlarmResponse>(
|
|
904
|
+
* "addAlarm",
|
|
905
|
+
* { hour: 7, minute: 30, label: "Wake up", enabled: true }
|
|
906
|
+
* );
|
|
907
|
+
*
|
|
908
|
+
* // Get call records
|
|
909
|
+
* const callsResult = await shellx.sendDataRequest<GetCallsResponse>(
|
|
910
|
+
* "getCalls",
|
|
911
|
+
* { limit: 20 }
|
|
912
|
+
* );
|
|
913
|
+
*
|
|
914
|
+
* // Search contacts
|
|
915
|
+
* const contactsResult = await shellx.sendDataRequest<SearchContactsResponse>(
|
|
916
|
+
* "searchContacts",
|
|
917
|
+
* { query: "张三", limit: 10 }
|
|
918
|
+
* );
|
|
919
|
+
* ```
|
|
920
|
+
*/
|
|
921
|
+
async sendDataRequest(requestType, params) {
|
|
922
|
+
this.logger.debug(`Sending data request: ${requestType}`);
|
|
923
|
+
// Remove keys with undefined values from params
|
|
924
|
+
const cleanedParams = params && typeof params === "object"
|
|
925
|
+
? Object.fromEntries(Object.entries(params).filter(([, value]) => value !== undefined))
|
|
926
|
+
: params;
|
|
927
|
+
const message = {
|
|
928
|
+
dataRequest: {
|
|
929
|
+
requestType,
|
|
930
|
+
params: cleanedParams,
|
|
931
|
+
},
|
|
822
932
|
};
|
|
933
|
+
// Use sendMessage to send the data request and wait for response
|
|
934
|
+
// Use "dataRequest" as the task type for response matching
|
|
935
|
+
return this.client.sendMessage(message, "dataRequest");
|
|
823
936
|
}
|
|
824
937
|
}
|
|
825
938
|
//# sourceMappingURL=shellx.js.map
|
package/dist/shellx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shellx.js","sourceRoot":"","sources":["../src/shellx.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shellx.js","sourceRoot":"","sources":["../src/shellx.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -116,11 +116,15 @@ export interface FindResult extends BaseResult {
|
|
|
116
116
|
}
|
|
117
117
|
export type Command = BaseOptions & {
|
|
118
118
|
cmd: string;
|
|
119
|
+
ptyType?: 0 | 1;
|
|
120
|
+
terminalId?: number;
|
|
119
121
|
};
|
|
120
122
|
export interface CommandResult extends BaseResult {
|
|
121
|
-
output
|
|
123
|
+
output?: string;
|
|
122
124
|
exitCode?: number;
|
|
123
125
|
cmd: string;
|
|
126
|
+
terminalId?: number;
|
|
127
|
+
result?: string;
|
|
124
128
|
}
|
|
125
129
|
export type Clipboard = BaseOptions & {
|
|
126
130
|
text?: string;
|
|
@@ -151,6 +155,9 @@ export type Screenshot = BaseOptions & {
|
|
|
151
155
|
scale?: number;
|
|
152
156
|
quality?: number;
|
|
153
157
|
saveToFile?: boolean;
|
|
158
|
+
enableFallback?: boolean;
|
|
159
|
+
fallbackWidth?: number;
|
|
160
|
+
fallbackHeight?: number;
|
|
154
161
|
};
|
|
155
162
|
export interface ScreenshotResult extends BaseResult {
|
|
156
163
|
imagePath?: string;
|
|
@@ -158,6 +165,7 @@ export interface ScreenshotResult extends BaseResult {
|
|
|
158
165
|
format?: "png" | "jpeg";
|
|
159
166
|
width?: number;
|
|
160
167
|
height?: number;
|
|
168
|
+
isFallback?: boolean;
|
|
161
169
|
}
|
|
162
170
|
export interface ScreenInfoResult extends BaseResult {
|
|
163
171
|
width?: number;
|
|
@@ -200,3 +208,32 @@ export interface ExecuteActionsResult {
|
|
|
200
208
|
failureCount: number;
|
|
201
209
|
totalDuration: number;
|
|
202
210
|
}
|
|
211
|
+
export type Asr = {
|
|
212
|
+
/** Called each time the device sends a partial or final recognition result */
|
|
213
|
+
onResult?: (text: string) => void;
|
|
214
|
+
};
|
|
215
|
+
export interface AsrResult extends BaseResult {
|
|
216
|
+
/** The recognised text returned by the device */
|
|
217
|
+
text: string;
|
|
218
|
+
/** Source tag returned by the device (e.g. "asr") */
|
|
219
|
+
source?: string;
|
|
220
|
+
}
|
|
221
|
+
export type Tts = {
|
|
222
|
+
/** Text to synthesise and play on the device */
|
|
223
|
+
text: string;
|
|
224
|
+
/**
|
|
225
|
+
* Volcengine voice type.
|
|
226
|
+
* Defaults to the device's configured voice when omitted.
|
|
227
|
+
* Example: "BV001_streaming", "BV002_streaming"
|
|
228
|
+
*/
|
|
229
|
+
voiceType?: string;
|
|
230
|
+
/**
|
|
231
|
+
* Playback volume, 0.0 (silent) – 1.0 (full, default).
|
|
232
|
+
*/
|
|
233
|
+
volume?: number;
|
|
234
|
+
};
|
|
235
|
+
export interface TtsResult extends BaseResult {
|
|
236
|
+
text: string;
|
|
237
|
+
voiceType?: string;
|
|
238
|
+
volume?: number;
|
|
239
|
+
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "shellx-ai",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A powerful TypeScript library for Android device automation and UI control via WebSocket",
|
|
6
6
|
"workspaces": [
|
|
7
|
-
"example"
|
|
7
|
+
"example",
|
|
8
|
+
"phone-agent",
|
|
9
|
+
"shellx-cli",
|
|
10
|
+
"gui-agent"
|
|
8
11
|
],
|
|
9
12
|
"keywords": [
|
|
10
13
|
"android",
|
|
@@ -44,8 +47,11 @@
|
|
|
44
47
|
],
|
|
45
48
|
"scripts": {
|
|
46
49
|
"build": "tsc",
|
|
50
|
+
"build:gui-agent": "cd gui-agent && npm run build:all",
|
|
47
51
|
"build:phone-agent": "cd phone-agent && npm run build:all",
|
|
48
|
-
"build:
|
|
52
|
+
"build:shellx-cli": "cd shellx-cli && npm run build",
|
|
53
|
+
"build:example": "cd example && npm run build",
|
|
54
|
+
"build:all": "npm run build && npm run build:gui-agent && npm run build:phone-agent && npm run build:shellx-cli && npm run build:example",
|
|
49
55
|
"build:watch": "tsc --watch",
|
|
50
56
|
"type-check": "tsc --noEmit",
|
|
51
57
|
"lint": "eslint src --ext .ts",
|
|
@@ -55,11 +61,13 @@
|
|
|
55
61
|
"test": "jest",
|
|
56
62
|
"test:coverage": "jest --coverage",
|
|
57
63
|
"test:watch": "jest --watch",
|
|
58
|
-
"clean": "rimraf dist && cd phone-agent && rimraf dist",
|
|
64
|
+
"clean": "rimraf dist && cd gui-agent && rimraf dist && cd ../phone-agent && rimraf dist && cd ../shellx-cli && rimraf dist && cd ../example && rimraf dist",
|
|
59
65
|
"prepublishOnly": "npm run clean && npm run build && npm run type-check",
|
|
60
66
|
"prepare": "husky install || echo 'Husky not available'"
|
|
61
67
|
},
|
|
62
68
|
"dependencies": {
|
|
69
|
+
"@mariozechner/pi-agent-core": "^0.65.2",
|
|
70
|
+
"@mariozechner/pi-ai": "^0.65.2",
|
|
63
71
|
"cbor": "^9.0.0",
|
|
64
72
|
"dotenv": "^16.4.5",
|
|
65
73
|
"ofetch": "^1.4.1",
|
|
@@ -72,18 +80,31 @@
|
|
|
72
80
|
"ws": "^8.14.2"
|
|
73
81
|
},
|
|
74
82
|
"devDependencies": {
|
|
83
|
+
"@eslint/plugin-kit": "^0.4.1",
|
|
75
84
|
"@types/jest": "^30.0.0",
|
|
76
85
|
"@types/node": "^24.0.13",
|
|
86
|
+
"@types/react": "^19.2.11",
|
|
87
|
+
"@types/uuid": "^9.0.7",
|
|
77
88
|
"@types/ws": "^8.18.1",
|
|
78
89
|
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
|
79
90
|
"@typescript-eslint/parser": "^8.0.0",
|
|
91
|
+
"autocomplete-cli": "^0.0.2",
|
|
92
|
+
"chalk": "^5.6.2",
|
|
93
|
+
"esbuild": "^0.27.4",
|
|
94
|
+
"esbuild-node-externals": "^1.20.1",
|
|
80
95
|
"eslint": "^9.0.0",
|
|
81
96
|
"eslint-config-prettier": "^9.1.0",
|
|
82
97
|
"eslint-plugin-prettier": "^5.2.0",
|
|
98
|
+
"ink": "^6.6.0",
|
|
99
|
+
"ink-spinner": "^5.0.0",
|
|
100
|
+
"ink-text-input": "^6.0.0",
|
|
83
101
|
"jest": "^30.0.4",
|
|
84
102
|
"prettier": "^3.3.0",
|
|
103
|
+
"prettier-linter-helpers": "^1.0.1",
|
|
104
|
+
"react": "^19.2.4",
|
|
85
105
|
"rimraf": "^6.0.0",
|
|
86
106
|
"ts-jest": "^29.4.0",
|
|
107
|
+
"tsx": "^4.19.2",
|
|
87
108
|
"typescript": "^5.8.3"
|
|
88
109
|
},
|
|
89
110
|
"engines": {
|