wuying-agentbay-sdk 0.1.0 → 0.3.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 (176) hide show
  1. package/README.md +24 -4
  2. package/dist/index.cjs +4534 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.mts +1837 -0
  5. package/dist/index.d.ts +1837 -0
  6. package/dist/index.mjs +4550 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +16 -8
  9. package/dist/src/adb/adb.d.ts +0 -20
  10. package/dist/src/adb/adb.js +0 -57
  11. package/dist/src/adb/index.d.ts +0 -1
  12. package/dist/src/adb/index.js +0 -17
  13. package/dist/src/agent-bay.d.ts +0 -68
  14. package/dist/src/agent-bay.js +0 -213
  15. package/dist/src/api/client.d.ts +0 -191
  16. package/dist/src/api/client.js +0 -629
  17. package/dist/src/api/index.d.ts +0 -4
  18. package/dist/src/api/index.js +0 -26
  19. package/dist/src/api/models/CallMcpToolRequest.d.ts +0 -21
  20. package/dist/src/api/models/CallMcpToolRequest.js +0 -71
  21. package/dist/src/api/models/CallMcpToolResponse.d.ts +0 -19
  22. package/dist/src/api/models/CallMcpToolResponse.js +0 -68
  23. package/dist/src/api/models/CallMcpToolResponseBody.d.ts +0 -19
  24. package/dist/src/api/models/CallMcpToolResponseBody.js +0 -67
  25. package/dist/src/api/models/CreateMcpSessionRequest.d.ts +0 -19
  26. package/dist/src/api/models/CreateMcpSessionRequest.js +0 -67
  27. package/dist/src/api/models/CreateMcpSessionResponse.d.ts +0 -19
  28. package/dist/src/api/models/CreateMcpSessionResponse.js +0 -68
  29. package/dist/src/api/models/CreateMcpSessionResponseBody.d.ts +0 -20
  30. package/dist/src/api/models/CreateMcpSessionResponseBody.js +0 -71
  31. package/dist/src/api/models/CreateMcpSessionResponseBodyData.d.ts +0 -19
  32. package/dist/src/api/models/CreateMcpSessionResponseBodyData.js +0 -67
  33. package/dist/src/api/models/DeleteContextRequest.d.ts +0 -15
  34. package/dist/src/api/models/DeleteContextRequest.js +0 -59
  35. package/dist/src/api/models/DeleteContextResponse.d.ts +0 -19
  36. package/dist/src/api/models/DeleteContextResponse.js +0 -68
  37. package/dist/src/api/models/DeleteContextResponseBody.d.ts +0 -18
  38. package/dist/src/api/models/DeleteContextResponseBody.js +0 -65
  39. package/dist/src/api/models/GetContextRequest.d.ts +0 -16
  40. package/dist/src/api/models/GetContextRequest.js +0 -61
  41. package/dist/src/api/models/GetContextResponse.d.ts +0 -19
  42. package/dist/src/api/models/GetContextResponse.js +0 -68
  43. package/dist/src/api/models/GetContextResponseBody.d.ts +0 -20
  44. package/dist/src/api/models/GetContextResponseBody.js +0 -71
  45. package/dist/src/api/models/GetContextResponseBodyData.d.ts +0 -19
  46. package/dist/src/api/models/GetContextResponseBodyData.js +0 -67
  47. package/dist/src/api/models/GetLabelRequest.d.ts +0 -17
  48. package/dist/src/api/models/GetLabelRequest.js +0 -63
  49. package/dist/src/api/models/GetLabelResponse.d.ts +0 -19
  50. package/dist/src/api/models/GetLabelResponse.js +0 -68
  51. package/dist/src/api/models/GetLabelResponseBody.d.ts +0 -23
  52. package/dist/src/api/models/GetLabelResponseBody.js +0 -77
  53. package/dist/src/api/models/GetLabelResponseBodyData.d.ts +0 -14
  54. package/dist/src/api/models/GetLabelResponseBodyData.js +0 -57
  55. package/dist/src/api/models/GetLinkRequest.d.ts +0 -15
  56. package/dist/src/api/models/GetLinkRequest.js +0 -59
  57. package/dist/src/api/models/GetLinkResponse.d.ts +0 -19
  58. package/dist/src/api/models/GetLinkResponse.js +0 -68
  59. package/dist/src/api/models/GetLinkResponseBody.d.ts +0 -19
  60. package/dist/src/api/models/GetLinkResponseBody.js +0 -67
  61. package/dist/src/api/models/GetMcpResourceRequest.d.ts +0 -15
  62. package/dist/src/api/models/GetMcpResourceRequest.js +0 -59
  63. package/dist/src/api/models/GetMcpResourceResponse.d.ts +0 -19
  64. package/dist/src/api/models/GetMcpResourceResponse.js +0 -68
  65. package/dist/src/api/models/GetMcpResourceResponseBody.d.ts +0 -20
  66. package/dist/src/api/models/GetMcpResourceResponseBody.js +0 -71
  67. package/dist/src/api/models/GetMcpResourceResponseBodyData.d.ts +0 -17
  68. package/dist/src/api/models/GetMcpResourceResponseBodyData.js +0 -65
  69. package/dist/src/api/models/GetMcpResourceResponseBodyDataDesktopInfo.d.ts +0 -18
  70. package/dist/src/api/models/GetMcpResourceResponseBodyDataDesktopInfo.js +0 -65
  71. package/dist/src/api/models/ListContextsRequest.d.ts +0 -16
  72. package/dist/src/api/models/ListContextsRequest.js +0 -61
  73. package/dist/src/api/models/ListContextsResponse.d.ts +0 -19
  74. package/dist/src/api/models/ListContextsResponse.js +0 -68
  75. package/dist/src/api/models/ListContextsResponseBody.d.ts +0 -23
  76. package/dist/src/api/models/ListContextsResponseBody.js +0 -77
  77. package/dist/src/api/models/ListContextsResponseBodyData.d.ts +0 -19
  78. package/dist/src/api/models/ListContextsResponseBodyData.js +0 -67
  79. package/dist/src/api/models/ListSessionRequest.d.ts +0 -17
  80. package/dist/src/api/models/ListSessionRequest.js +0 -63
  81. package/dist/src/api/models/ListSessionResponse.d.ts +0 -19
  82. package/dist/src/api/models/ListSessionResponse.js +0 -68
  83. package/dist/src/api/models/ListSessionResponseBody.d.ts +0 -23
  84. package/dist/src/api/models/ListSessionResponseBody.js +0 -77
  85. package/dist/src/api/models/ListSessionResponseBodyData.d.ts +0 -14
  86. package/dist/src/api/models/ListSessionResponseBodyData.js +0 -57
  87. package/dist/src/api/models/ModifyContextRequest.d.ts +0 -16
  88. package/dist/src/api/models/ModifyContextRequest.js +0 -61
  89. package/dist/src/api/models/ModifyContextResponse.d.ts +0 -19
  90. package/dist/src/api/models/ModifyContextResponse.js +0 -68
  91. package/dist/src/api/models/ModifyContextResponseBody.d.ts +0 -18
  92. package/dist/src/api/models/ModifyContextResponseBody.js +0 -65
  93. package/dist/src/api/models/ReleaseMcpSessionRequest.d.ts +0 -15
  94. package/dist/src/api/models/ReleaseMcpSessionRequest.js +0 -59
  95. package/dist/src/api/models/ReleaseMcpSessionResponse.d.ts +0 -19
  96. package/dist/src/api/models/ReleaseMcpSessionResponse.js +0 -68
  97. package/dist/src/api/models/ReleaseMcpSessionResponseBody.d.ts +0 -18
  98. package/dist/src/api/models/ReleaseMcpSessionResponseBody.js +0 -65
  99. package/dist/src/api/models/SetLabelRequest.d.ts +0 -16
  100. package/dist/src/api/models/SetLabelRequest.js +0 -61
  101. package/dist/src/api/models/SetLabelResponse.d.ts +0 -19
  102. package/dist/src/api/models/SetLabelResponse.js +0 -68
  103. package/dist/src/api/models/SetLabelResponseBody.d.ts +0 -18
  104. package/dist/src/api/models/SetLabelResponseBody.js +0 -65
  105. package/dist/src/api/models/model.d.ts +0 -43
  106. package/dist/src/api/models/model.js +0 -89
  107. package/dist/src/application/application.d.ts +0 -88
  108. package/dist/src/application/application.js +0 -172
  109. package/dist/src/application/index.d.ts +0 -1
  110. package/dist/src/application/index.js +0 -17
  111. package/dist/src/command/command.d.ts +0 -43
  112. package/dist/src/command/command.js +0 -120
  113. package/dist/src/command/index.d.ts +0 -1
  114. package/dist/src/command/index.js +0 -17
  115. package/dist/src/config.d.ts +0 -15
  116. package/dist/src/config.js +0 -114
  117. package/dist/src/context.d.ts +0 -87
  118. package/dist/src/context.js +0 -208
  119. package/dist/src/exceptions.d.ts +0 -30
  120. package/dist/src/exceptions.js +0 -58
  121. package/dist/src/filesystem/filesystem.d.ts +0 -109
  122. package/dist/src/filesystem/filesystem.js +0 -245
  123. package/dist/src/filesystem/index.d.ts +0 -1
  124. package/dist/src/filesystem/index.js +0 -17
  125. package/dist/src/index.d.ts +0 -10
  126. package/dist/src/index.js +0 -32
  127. package/dist/src/oss/index.d.ts +0 -1
  128. package/dist/src/oss/index.js +0 -5
  129. package/dist/src/oss/oss.d.ts +0 -80
  130. package/dist/src/oss/oss.js +0 -233
  131. package/dist/src/session.d.ts +0 -99
  132. package/dist/src/session.js +0 -226
  133. package/dist/src/ui/index.d.ts +0 -1
  134. package/dist/src/ui/index.js +0 -17
  135. package/dist/src/ui/ui.d.ts +0 -95
  136. package/dist/src/ui/ui.js +0 -206
  137. package/dist/src/utils/logger.d.ts +0 -15
  138. package/dist/src/utils/logger.js +0 -48
  139. package/dist/src/window/index.d.ts +0 -1
  140. package/dist/src/window/index.js +0 -17
  141. package/dist/src/window/window.d.ts +0 -109
  142. package/dist/src/window/window.js +0 -220
  143. package/dist/tests/agent-bay.test.d.ts +0 -1
  144. package/dist/tests/agent-bay.test.js +0 -366
  145. package/dist/tests/integration/context-persistence.test.d.ts +0 -1
  146. package/dist/tests/integration/context-persistence.test.js +0 -226
  147. package/dist/tests/integration/context-session.test.d.ts +0 -1
  148. package/dist/tests/integration/context-session.test.js +0 -223
  149. package/dist/tests/integration/window-operations.test.d.ts +0 -1
  150. package/dist/tests/integration/window-operations.test.js +0 -228
  151. package/dist/tests/unit/adb.test.d.ts +0 -1
  152. package/dist/tests/unit/adb.test.js +0 -60
  153. package/dist/tests/unit/agent-bay.test.d.ts +0 -1
  154. package/dist/tests/unit/agent-bay.test.js +0 -182
  155. package/dist/tests/unit/application.test.d.ts +0 -1
  156. package/dist/tests/unit/application.test.js +0 -260
  157. package/dist/tests/unit/command.test.d.ts +0 -1
  158. package/dist/tests/unit/command.test.js +0 -252
  159. package/dist/tests/unit/context.test.d.ts +0 -1
  160. package/dist/tests/unit/context.test.js +0 -199
  161. package/dist/tests/unit/filesystem.test.d.ts +0 -1
  162. package/dist/tests/unit/filesystem.test.js +0 -493
  163. package/dist/tests/unit/oss.test.d.ts +0 -1
  164. package/dist/tests/unit/oss.test.js +0 -243
  165. package/dist/tests/unit/session-labels.test.d.ts +0 -1
  166. package/dist/tests/unit/session-labels.test.js +0 -138
  167. package/dist/tests/unit/session-params.test.d.ts +0 -1
  168. package/dist/tests/unit/session-params.test.js +0 -78
  169. package/dist/tests/unit/session.test.d.ts +0 -1
  170. package/dist/tests/unit/session.test.js +0 -204
  171. package/dist/tests/unit/ui.test.d.ts +0 -1
  172. package/dist/tests/unit/ui.test.js +0 -158
  173. package/dist/tests/unit/window.test.d.ts +0 -1
  174. package/dist/tests/unit/window.test.js +0 -331
  175. package/dist/tests/utils/test-helpers.d.ts +0 -35
  176. package/dist/tests/utils/test-helpers.js +0 -79
package/package.json CHANGED
@@ -1,11 +1,20 @@
1
1
  {
2
2
  "name": "wuying-agentbay-sdk",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "TypeScript SDK for interacting with the Wuying AgentBay cloud runtime environment",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
5
+ "main": "./dist/index.cjs",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.mjs",
11
+ "require": "./dist/index.cjs"
12
+ },
13
+ "./package.json": "./package.json"
14
+ },
7
15
  "scripts": {
8
- "build": "tsc",
16
+ "build": "tsup src/index.ts --dts --format cjs,esm",
17
+ "prepublishOnly": "npm run build",
9
18
  "test": "jest",
10
19
  "test:unit": "jest tests/unit",
11
20
  "test:integration": "jest tests/integration",
@@ -33,6 +42,7 @@
33
42
  "sinon": "^15.0.0",
34
43
  "ts-jest": "^29.1.0",
35
44
  "ts-node": "^10.9.2",
45
+ "tsup": "^8.5.0",
36
46
  "typescript": "^5.0.0"
37
47
  },
38
48
  "dependencies": {
@@ -40,11 +50,9 @@
40
50
  "@darabonba/typescript": "^1.0.0",
41
51
  "axios": "^1.3.4"
42
52
  },
53
+ "sideEffects": false,
43
54
  "files": [
44
55
  "dist/**/*"
45
56
  ],
46
- "repository": {
47
- "type": "git",
48
- "url": "git+https://github.com/aliyun/wuying-agentbay-sdk.git"
49
- }
57
+ "repository": "https://github.com/aliyun/wuying-agentbay-sdk.git"
50
58
  }
@@ -1,20 +0,0 @@
1
- import { Session } from '../session';
2
- /**
3
- * Adb handles ADB operations in the AgentBay cloud environment.
4
- */
5
- export declare class Adb {
6
- private session;
7
- /**
8
- * Create a new Adb instance.
9
- *
10
- * @param session - The session to use for ADB operations
11
- */
12
- constructor(session: Session);
13
- /**
14
- * Execute an ADB shell command in the mobile environment.
15
- *
16
- * @param command - The ADB shell command to execute
17
- * @returns The output of the ADB shell command
18
- */
19
- shell(command: string): Promise<string>;
20
- }
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Adb = void 0;
4
- const model_1 = require("../api/models/model");
5
- /**
6
- * Adb handles ADB operations in the AgentBay cloud environment.
7
- */
8
- class Adb {
9
- /**
10
- * Create a new Adb instance.
11
- *
12
- * @param session - The session to use for ADB operations
13
- */
14
- constructor(session) {
15
- this.session = session;
16
- }
17
- /**
18
- * Execute an ADB shell command in the mobile environment.
19
- *
20
- * @param command - The ADB shell command to execute
21
- * @returns The output of the ADB shell command
22
- */
23
- async shell(command) {
24
- try {
25
- const args = {
26
- command
27
- };
28
- const callToolRequest = new model_1.CallMcpToolRequest({
29
- authorization: `Bearer ${this.session.getAPIKey()}`,
30
- sessionId: this.session.getSessionId(),
31
- name: 'shell',
32
- args: JSON.stringify(args)
33
- });
34
- const response = await this.session.getClient().callMcpTool(callToolRequest);
35
- if (!response.body?.data) {
36
- throw new Error('Invalid response data format');
37
- }
38
- // Extract content from response
39
- const data = response.body.data;
40
- if (!data.content || !Array.isArray(data.content)) {
41
- throw new Error('Content field not found or not an array');
42
- }
43
- // Concatenate all text fields
44
- let fullText = '';
45
- for (const item of data.content) {
46
- if (item && typeof item === 'object' && 'text' in item) {
47
- fullText += item.text + '\n';
48
- }
49
- }
50
- return fullText;
51
- }
52
- catch (error) {
53
- throw new Error(`Failed to execute ADB shell command: ${error}`);
54
- }
55
- }
56
- }
57
- exports.Adb = Adb;
@@ -1 +0,0 @@
1
- export * from './adb';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./adb"), exports);
@@ -1,68 +0,0 @@
1
- import { Session } from './session';
2
- import { ContextService } from './context';
3
- import Client from './api/client';
4
- import 'dotenv/config';
5
- /**
6
- * Main class for interacting with the AgentBay cloud runtime environment.
7
- */
8
- export declare class AgentBay {
9
- private apiKey;
10
- private client;
11
- private regionId;
12
- private endpoint;
13
- private sessions;
14
- /**
15
- * Context service for managing persistent contexts.
16
- */
17
- context: ContextService;
18
- /**
19
- * Initialize the AgentBay client.
20
- *
21
- * @param options - Configuration options
22
- * @param options.apiKey - API key for authentication. If not provided, will look for AGENTBAY_API_KEY environment variable.
23
- */
24
- constructor(options?: {
25
- apiKey?: string;
26
- });
27
- /**
28
- * Create a new session in the AgentBay cloud environment.
29
- *
30
- * @param options - Optional parameters for creating the session
31
- * @param options.contextId - ID of the context to bind to the session
32
- * @param options.labels - Custom labels for the session
33
- * @returns A new Session object.
34
- */
35
- create(options?: {
36
- contextId?: string;
37
- labels?: Record<string, string>;
38
- imageId?: string;
39
- }): Promise<Session>;
40
- /**
41
- * List all available sessions.
42
- *
43
- * @returns A list of session objects.
44
- */
45
- list(): Session[];
46
- /**
47
- * List sessions filtered by the provided labels.
48
- * It returns sessions that match all the specified labels.
49
- *
50
- * @param labels - The labels to filter by.
51
- * @returns A list of session objects that match the labels.
52
- */
53
- listByLabels(labels: Record<string, string>): Promise<Session[]>;
54
- /**
55
- * Delete a session by ID.
56
- *
57
- * @param sessionId - The ID of the session to delete.
58
- * @returns True if the session was successfully deleted.
59
- */
60
- delete(session: Session): Promise<boolean>;
61
- /**
62
- *
63
- * @param sessionId - The ID of the session to remove.
64
- */
65
- removeSession(sessionId: string): void;
66
- getClient(): Client;
67
- getAPIKey(): string;
68
- }
@@ -1,213 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.AgentBay = void 0;
40
- const session_1 = require("./session");
41
- const context_1 = require("./context");
42
- const exceptions_1 = require("./exceptions");
43
- const $_client = __importStar(require("./api"));
44
- const openapi_core_1 = require("@alicloud/openapi-core");
45
- const client_1 = __importDefault(require("./api/client"));
46
- const model_1 = require("./api/models/model");
47
- const config_1 = require("./config");
48
- require("dotenv/config");
49
- const logger_1 = require("./utils/logger");
50
- /**
51
- * Main class for interacting with the AgentBay cloud runtime environment.
52
- */
53
- class AgentBay {
54
- /**
55
- * Initialize the AgentBay client.
56
- *
57
- * @param options - Configuration options
58
- * @param options.apiKey - API key for authentication. If not provided, will look for AGENTBAY_API_KEY environment variable.
59
- */
60
- constructor(options = {}) {
61
- this.sessions = new Map();
62
- this.apiKey = options.apiKey || process.env.AGENTBAY_API_KEY || '';
63
- if (!this.apiKey) {
64
- throw new exceptions_1.AuthenticationError('API key is required. Provide it as a parameter or set the AGENTBAY_API_KEY environment variable.');
65
- }
66
- // Load configuration
67
- const configData = (0, config_1.loadConfig)();
68
- this.regionId = configData.region_id;
69
- this.endpoint = configData.endpoint;
70
- const config = new openapi_core_1.$OpenApiUtil.Config({
71
- regionId: this.regionId,
72
- endpoint: this.endpoint
73
- });
74
- config.readTimeout = configData.timeout_ms;
75
- config.connectTimeout = configData.timeout_ms;
76
- try {
77
- this.client = new client_1.default(config);
78
- // Initialize context service
79
- this.context = new context_1.ContextService(this);
80
- }
81
- catch (error) {
82
- (0, logger_1.logError)(`Failed to constructor:`, error);
83
- throw new exceptions_1.AuthenticationError(`Failed to constructor: ${error}`);
84
- }
85
- }
86
- /**
87
- * Create a new session in the AgentBay cloud environment.
88
- *
89
- * @param options - Optional parameters for creating the session
90
- * @param options.contextId - ID of the context to bind to the session
91
- * @param options.labels - Custom labels for the session
92
- * @returns A new Session object.
93
- */
94
- async create(options = {}) {
95
- try {
96
- const createSessionRequest = new $_client.CreateMcpSessionRequest({
97
- authorization: "Bearer " + this.apiKey,
98
- imageId: options.imageId
99
- });
100
- // Add context_id if provided
101
- if (options.contextId) {
102
- createSessionRequest.contextId = options.contextId;
103
- }
104
- // Add labels if provided
105
- if (options.labels) {
106
- createSessionRequest.labels = JSON.stringify(options.labels);
107
- }
108
- // Log API request
109
- (0, logger_1.log)("API Call: CreateMcpSession");
110
- (0, logger_1.log)(`Request: ${options.contextId ? `ContextId=${options.contextId}, ` : ''}${options.labels ? `Labels=${JSON.stringify(options.labels)}, ` : ''}${options.imageId ? `ImageId=${options.imageId}` : ''}`);
111
- const response = await this.client.createMcpSession(createSessionRequest);
112
- // Log API response
113
- (0, logger_1.log)(`Response from CreateMcpSession:`, response.body);
114
- const sessionId = response.body?.data?.sessionId;
115
- if (!sessionId) {
116
- throw new exceptions_1.APIError('Invalid session ID in response');
117
- }
118
- // ResourceUrl is optional in CreateMcpSession response
119
- const resourceUrl = response.body?.data?.resourceUrl;
120
- const session = new session_1.Session(this, sessionId);
121
- if (resourceUrl) {
122
- session.resourceUrl = resourceUrl;
123
- }
124
- this.sessions.set(session.sessionId, session);
125
- return session;
126
- }
127
- catch (error) {
128
- (0, logger_1.logError)("Error calling CreateMcpSession:", error);
129
- throw new exceptions_1.APIError(`Failed to create session: ${error}`);
130
- }
131
- }
132
- /**
133
- * List all available sessions.
134
- *
135
- * @returns A list of session objects.
136
- */
137
- list() {
138
- return Array.from(this.sessions.values());
139
- }
140
- /**
141
- * List sessions filtered by the provided labels.
142
- * It returns sessions that match all the specified labels.
143
- *
144
- * @param labels - The labels to filter by.
145
- * @returns A list of session objects that match the labels.
146
- */
147
- async listByLabels(labels) {
148
- try {
149
- // Convert labels to JSON
150
- const labelsJSON = JSON.stringify(labels);
151
- const listSessionRequest = new model_1.ListSessionRequest({
152
- authorization: `Bearer ${this.apiKey}`,
153
- labels: labelsJSON
154
- });
155
- // Log API request
156
- (0, logger_1.log)("API Call: ListSession");
157
- (0, logger_1.log)(`Request: Labels=${labelsJSON}`);
158
- const response = await this.client.listSession(listSessionRequest);
159
- // Log API response
160
- (0, logger_1.log)(`Response from ListSession:`, response.body);
161
- const sessions = [];
162
- if (response.body?.data) {
163
- for (const sessionData of response.body.data) {
164
- if (sessionData.sessionId) {
165
- const session = new session_1.Session(this, sessionData.sessionId);
166
- sessions.push(session);
167
- // Also store in the local cache
168
- this.sessions.set(sessionData.sessionId, session);
169
- }
170
- }
171
- }
172
- return sessions;
173
- }
174
- catch (error) {
175
- (0, logger_1.logError)("Error calling ListSession:", error);
176
- throw new exceptions_1.APIError(`Failed to list sessions by labels: ${error}`);
177
- }
178
- }
179
- /**
180
- * Delete a session by ID.
181
- *
182
- * @param sessionId - The ID of the session to delete.
183
- * @returns True if the session was successfully deleted.
184
- */
185
- async delete(session) {
186
- const getSession = this.sessions.get(session.sessionId);
187
- if (!getSession) {
188
- throw new Error(`Session with ID ${session.sessionId} not found`);
189
- }
190
- try {
191
- await session.delete();
192
- return true;
193
- }
194
- catch (error) {
195
- throw new exceptions_1.APIError(`Failed to delete session: ${error}`);
196
- }
197
- }
198
- /**
199
- *
200
- * @param sessionId - The ID of the session to remove.
201
- */
202
- removeSession(sessionId) {
203
- this.sessions.delete(sessionId);
204
- }
205
- // For internal use by the Session class
206
- getClient() {
207
- return this.client;
208
- }
209
- getAPIKey() {
210
- return this.apiKey;
211
- }
212
- }
213
- exports.AgentBay = AgentBay;
@@ -1,191 +0,0 @@
1
- import * as $dara from '@darabonba/typescript';
2
- import OpenApi from '@alicloud/openapi-core';
3
- import { $OpenApiUtil } from '@alicloud/openapi-core';
4
- import * as $_model from './models/model';
5
- export * from './models/model';
6
- export default class Client extends OpenApi {
7
- constructor(config: $OpenApiUtil.Config);
8
- getEndpoint(productId: string, regionId: string, endpointRule: string, network: string, suffix: string, endpointMap: {
9
- [key: string]: string;
10
- }, endpoint: string): string;
11
- /**
12
- * 调用mcp工具
13
- *
14
- * @param request - CallMcpToolRequest
15
- * @param runtime - runtime options for this request RuntimeOptions
16
- * @returns CallMcpToolResponse
17
- */
18
- callMcpToolWithOptions(request: $_model.CallMcpToolRequest, runtime: $dara.RuntimeOptions): Promise<$_model.CallMcpToolResponse>;
19
- /**
20
- * 调用mcp工具
21
- *
22
- * @param request - CallMcpToolRequest
23
- * @returns CallMcpToolResponse
24
- */
25
- callMcpTool(request: $_model.CallMcpToolRequest): Promise<$_model.CallMcpToolResponse>;
26
- /**
27
- * 创建 mcp session
28
- *
29
- * @param request - CreateMcpSessionRequest
30
- * @param runtime - runtime options for this request RuntimeOptions
31
- * @returns CreateMcpSessionResponse
32
- */
33
- createMcpSessionWithOptions(request: $_model.CreateMcpSessionRequest, runtime: $dara.RuntimeOptions): Promise<$_model.CreateMcpSessionResponse>;
34
- /**
35
- * 创建 mcp session
36
- *
37
- * @param request - CreateMcpSessionRequest
38
- * @returns CreateMcpSessionResponse
39
- */
40
- createMcpSession(request: $_model.CreateMcpSessionRequest): Promise<$_model.CreateMcpSessionResponse>;
41
- /**
42
- * 删除持久化上下文
43
- *
44
- * @param request - DeleteContextRequest
45
- * @param runtime - runtime options for this request RuntimeOptions
46
- * @returns DeleteContextResponse
47
- */
48
- deleteContextWithOptions(request: $_model.DeleteContextRequest, runtime: $dara.RuntimeOptions): Promise<$_model.DeleteContextResponse>;
49
- /**
50
- * 删除持久化上下文
51
- *
52
- * @param request - DeleteContextRequest
53
- * @returns DeleteContextResponse
54
- */
55
- deleteContext(request: $_model.DeleteContextRequest): Promise<$_model.DeleteContextResponse>;
56
- /**
57
- * 获取上下文
58
- *
59
- * @param request - GetContextRequest
60
- * @param runtime - runtime options for this request RuntimeOptions
61
- * @returns GetContextResponse
62
- */
63
- getContextWithOptions(request: $_model.GetContextRequest, runtime: $dara.RuntimeOptions): Promise<$_model.GetContextResponse>;
64
- /**
65
- * 获取上下文
66
- *
67
- * @param request - GetContextRequest
68
- * @returns GetContextResponse
69
- */
70
- getContext(request: $_model.GetContextRequest): Promise<$_model.GetContextResponse>;
71
- /**
72
- * 获取标签
73
- *
74
- * @param request - GetLabelRequest
75
- * @param runtime - runtime options for this request RuntimeOptions
76
- * @returns GetLabelResponse
77
- */
78
- getLabelWithOptions(request: $_model.GetLabelRequest, runtime: $dara.RuntimeOptions): Promise<$_model.GetLabelResponse>;
79
- /**
80
- * 获取标签
81
- *
82
- * @param request - GetLabelRequest
83
- * @returns GetLabelResponse
84
- */
85
- getLabel(request: $_model.GetLabelRequest): Promise<$_model.GetLabelResponse>;
86
- /**
87
- * 获取特定端口的转发链接
88
- *
89
- * @param request - GetLinkRequest
90
- * @param runtime - runtime options for this request RuntimeOptions
91
- * @returns GetLinkResponse
92
- */
93
- getLinkWithOptions(request: $_model.GetLinkRequest, runtime: $dara.RuntimeOptions): Promise<$_model.GetLinkResponse>;
94
- /**
95
- * 获取特定端口的转发链接
96
- *
97
- * @param request - GetLinkRequest
98
- * @returns GetLinkResponse
99
- */
100
- getLink(request: $_model.GetLinkRequest): Promise<$_model.GetLinkResponse>;
101
- /**
102
- * 获取mcp资源信息
103
- *
104
- * @param request - GetMcpResourceRequest
105
- * @param runtime - runtime options for this request RuntimeOptions
106
- * @returns GetMcpResourceResponse
107
- */
108
- getMcpResourceWithOptions(request: $_model.GetMcpResourceRequest, runtime: $dara.RuntimeOptions): Promise<$_model.GetMcpResourceResponse>;
109
- /**
110
- * 获取mcp资源信息
111
- *
112
- * @param request - GetMcpResourceRequest
113
- * @returns GetMcpResourceResponse
114
- */
115
- getMcpResource(request: $_model.GetMcpResourceRequest): Promise<$_model.GetMcpResourceResponse>;
116
- /**
117
- * 获取上下文列表
118
- *
119
- * @param request - ListContextsRequest
120
- * @param runtime - runtime options for this request RuntimeOptions
121
- * @returns ListContextsResponse
122
- */
123
- listContextsWithOptions(request: $_model.ListContextsRequest, runtime: $dara.RuntimeOptions): Promise<$_model.ListContextsResponse>;
124
- /**
125
- * 获取上下文列表
126
- *
127
- * @param request - ListContextsRequest
128
- * @returns ListContextsResponse
129
- */
130
- listContexts(request: $_model.ListContextsRequest): Promise<$_model.ListContextsResponse>;
131
- /**
132
- * 根据Lable查询Session列表
133
- *
134
- * @param request - ListSessionRequest
135
- * @param runtime - runtime options for this request RuntimeOptions
136
- * @returns ListSessionResponse
137
- */
138
- listSessionWithOptions(request: $_model.ListSessionRequest, runtime: $dara.RuntimeOptions): Promise<$_model.ListSessionResponse>;
139
- /**
140
- * 根据Lable查询Session列表
141
- *
142
- * @param request - ListSessionRequest
143
- * @returns ListSessionResponse
144
- */
145
- listSession(request: $_model.ListSessionRequest): Promise<$_model.ListSessionResponse>;
146
- /**
147
- * 修改上下文
148
- *
149
- * @param request - ModifyContextRequest
150
- * @param runtime - runtime options for this request RuntimeOptions
151
- * @returns ModifyContextResponse
152
- */
153
- modifyContextWithOptions(request: $_model.ModifyContextRequest, runtime: $dara.RuntimeOptions): Promise<$_model.ModifyContextResponse>;
154
- /**
155
- * 修改上下文
156
- *
157
- * @param request - ModifyContextRequest
158
- * @returns ModifyContextResponse
159
- */
160
- modifyContext(request: $_model.ModifyContextRequest): Promise<$_model.ModifyContextResponse>;
161
- /**
162
- * 释放 mcp session
163
- *
164
- * @param request - ReleaseMcpSessionRequest
165
- * @param runtime - runtime options for this request RuntimeOptions
166
- * @returns ReleaseMcpSessionResponse
167
- */
168
- releaseMcpSessionWithOptions(request: $_model.ReleaseMcpSessionRequest, runtime: $dara.RuntimeOptions): Promise<$_model.ReleaseMcpSessionResponse>;
169
- /**
170
- * 释放 mcp session
171
- *
172
- * @param request - ReleaseMcpSessionRequest
173
- * @returns ReleaseMcpSessionResponse
174
- */
175
- releaseMcpSession(request: $_model.ReleaseMcpSessionRequest): Promise<$_model.ReleaseMcpSessionResponse>;
176
- /**
177
- * 设置标签
178
- *
179
- * @param request - SetLabelRequest
180
- * @param runtime - runtime options for this request RuntimeOptions
181
- * @returns SetLabelResponse
182
- */
183
- setLabelWithOptions(request: $_model.SetLabelRequest, runtime: $dara.RuntimeOptions): Promise<$_model.SetLabelResponse>;
184
- /**
185
- * 设置标签
186
- *
187
- * @param request - SetLabelRequest
188
- * @returns SetLabelResponse
189
- */
190
- setLabel(request: $_model.SetLabelRequest): Promise<$_model.SetLabelResponse>;
191
- }