test-wuying-agentbay-sdk
Version:
TypeScript SDK for interacting with the Wuying AgentBay cloud runtime environment
1,672 lines (1,658 loc) • 406 kB
JavaScript
if (typeof OpenApi !== 'undefined' && !OpenApi.default) {
OpenApi.default = OpenApi;
}
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
(function() {
if (typeof OpenApi !== 'undefined' && !OpenApi.default) {
OpenApi.default = OpenApi;
}
})();
import {
ApplyMqttTokenRequest,
ApplyMqttTokenResponse,
ApplyMqttTokenResponseBody,
ApplyMqttTokenResponseBodyData,
CallMcpToolRequest,
CallMcpToolResponse,
CallMcpToolResponseBody,
ClearContextRequest,
ClearContextResponse,
ClearContextResponseBody,
CreateMcpSessionRequest,
CreateMcpSessionRequestPersistenceDataList,
CreateMcpSessionResponse,
CreateMcpSessionResponseBody,
CreateMcpSessionResponseBodyData,
CreateMcpSessionShrinkRequest,
DeleteContextFileRequest,
DeleteContextFileResponse,
DeleteContextFileResponseBody,
DeleteContextRequest,
DeleteContextResponse,
DeleteContextResponseBody,
DescribeContextFilesRequest,
DescribeContextFilesResponse,
DescribeContextFilesResponseBody,
GetAdbLinkRequest,
GetAdbLinkResponse,
GetAdbLinkResponseBody,
GetAdbLinkResponseBodyData,
GetCdpLinkRequest,
GetCdpLinkResponse,
GetCdpLinkResponseBody,
GetCdpLinkResponseBodyData,
GetContextFileDownloadUrlRequest,
GetContextFileDownloadUrlResponse,
GetContextFileDownloadUrlResponseBody,
GetContextFileUploadUrlRequest,
GetContextFileUploadUrlResponse,
GetContextFileUploadUrlResponseBody,
GetContextInfoRequest,
GetContextInfoResponse,
GetContextInfoResponseBody,
GetContextInfoResponseBodyData,
GetContextRequest,
GetContextResponse,
GetContextResponseBody,
GetContextResponseBodyData,
GetLabelRequest,
GetLabelResponse,
GetLabelResponseBody,
GetLabelResponseBodyData,
GetLinkRequest,
GetLinkResponse,
GetLinkResponseBody,
GetLinkResponseBodyData,
GetMcpResourceRequest,
GetMcpResourceResponse,
GetMcpResourceResponseBody,
GetMcpResourceResponseBodyData,
GetMcpResourceResponseBodyDataDesktopInfo,
GetSessionRequest,
GetSessionResponse,
GetSessionResponseBody,
GetSessionResponseBodyData,
InitBrowserRequest,
InitBrowserResponse,
InitBrowserResponseBody,
InitBrowserResponseBodyData,
ListContextsRequest,
ListContextsResponse,
ListContextsResponseBody,
ListContextsResponseBodyData,
ListMcpToolsRequest,
ListMcpToolsResponse,
ListMcpToolsResponseBody,
ListSessionRequest,
ListSessionResponse,
ListSessionResponseBody,
ListSessionResponseBodyData,
ModifyContextRequest,
ModifyContextResponse,
ModifyContextResponseBody,
ReleaseMcpSessionRequest,
ReleaseMcpSessionResponse,
ReleaseMcpSessionResponseBody,
SetLabelRequest,
SetLabelResponse,
SetLabelResponseBody,
SyncContextRequest,
SyncContextResponse,
SyncContextResponseBody
} from "./chunk-E7QC5S76.mjs";
import {
__commonJS,
__dirname,
__name,
__require,
__toESM,
init_esm_shims
} from "./chunk-KNEDRAP6.mjs";
// node_modules/dotenv/package.json
var require_package = __commonJS({
"node_modules/dotenv/package.json"(exports, module) {
module.exports = {
name: "dotenv",
version: "16.6.1",
description: "Loads environment variables from .env file",
main: "lib/main.js",
types: "lib/main.d.ts",
exports: {
".": {
types: "./lib/main.d.ts",
require: "./lib/main.js",
default: "./lib/main.js"
},
"./config": "./config.js",
"./config.js": "./config.js",
"./lib/env-options": "./lib/env-options.js",
"./lib/env-options.js": "./lib/env-options.js",
"./lib/cli-options": "./lib/cli-options.js",
"./lib/cli-options.js": "./lib/cli-options.js",
"./package.json": "./package.json"
},
scripts: {
"dts-check": "tsc --project tests/types/tsconfig.json",
lint: "standard",
pretest: "npm run lint && npm run dts-check",
test: "tap run --allow-empty-coverage --disable-coverage --timeout=60000",
"test:coverage": "tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",
prerelease: "npm test",
release: "standard-version"
},
repository: {
type: "git",
url: "git://github.com/motdotla/dotenv.git"
},
homepage: "https://github.com/motdotla/dotenv#readme",
funding: "https://dotenvx.com",
keywords: [
"dotenv",
"env",
".env",
"environment",
"variables",
"config",
"settings"
],
readmeFilename: "README.md",
license: "BSD-2-Clause",
devDependencies: {
"@types/node": "^18.11.3",
decache: "^4.6.2",
sinon: "^14.0.1",
standard: "^17.0.0",
"standard-version": "^9.5.0",
tap: "^19.2.0",
typescript: "^4.8.4"
},
engines: {
node: ">=12"
},
browser: {
fs: false
}
};
}
});
// node_modules/dotenv/lib/main.js
var require_main = __commonJS({
"node_modules/dotenv/lib/main.js"(exports, module) {
"use strict";
init_esm_shims();
var fs6 = __require("fs");
var path6 = __require("path");
var os = __require("os");
var crypto2 = __require("crypto");
var packageJson = require_package();
var version = packageJson.version;
var LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;
function parse2(src) {
const obj = {};
let lines = src.toString();
lines = lines.replace(/\r\n?/mg, "\n");
let match;
while ((match = LINE.exec(lines)) != null) {
const key = match[1];
let value = match[2] || "";
value = value.trim();
const maybeQuote = value[0];
value = value.replace(/^(['"`])([\s\S]*)\1$/mg, "$2");
if (maybeQuote === '"') {
value = value.replace(/\\n/g, "\n");
value = value.replace(/\\r/g, "\r");
}
obj[key] = value;
}
return obj;
}
__name(parse2, "parse");
function _parseVault(options) {
options = options || {};
const vaultPath = _vaultPath(options);
options.path = vaultPath;
const result = DotenvModule.configDotenv(options);
if (!result.parsed) {
const err = new Error(`MISSING_DATA: Cannot parse ${vaultPath} for an unknown reason`);
err.code = "MISSING_DATA";
throw err;
}
const keys = _dotenvKey(options).split(",");
const length = keys.length;
let decrypted;
for (let i = 0; i < length; i++) {
try {
const key = keys[i].trim();
const attrs = _instructions(result, key);
decrypted = DotenvModule.decrypt(attrs.ciphertext, attrs.key);
break;
} catch (error) {
if (i + 1 >= length) {
throw error;
}
}
}
return DotenvModule.parse(decrypted);
}
__name(_parseVault, "_parseVault");
function _warn(message) {
console.log(`[dotenv@${version}][WARN] ${message}`);
}
__name(_warn, "_warn");
function _debug(message) {
console.log(`[dotenv@${version}][DEBUG] ${message}`);
}
__name(_debug, "_debug");
function _log(message) {
console.log(`[dotenv@${version}] ${message}`);
}
__name(_log, "_log");
function _dotenvKey(options) {
if (options && options.DOTENV_KEY && options.DOTENV_KEY.length > 0) {
return options.DOTENV_KEY;
}
if (process.env.DOTENV_KEY && process.env.DOTENV_KEY.length > 0) {
return process.env.DOTENV_KEY;
}
return "";
}
__name(_dotenvKey, "_dotenvKey");
function _instructions(result, dotenvKey) {
let uri;
try {
uri = new URL(dotenvKey);
} catch (error) {
if (error.code === "ERR_INVALID_URL") {
const err = new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");
err.code = "INVALID_DOTENV_KEY";
throw err;
}
throw error;
}
const key = uri.password;
if (!key) {
const err = new Error("INVALID_DOTENV_KEY: Missing key part");
err.code = "INVALID_DOTENV_KEY";
throw err;
}
const environment = uri.searchParams.get("environment");
if (!environment) {
const err = new Error("INVALID_DOTENV_KEY: Missing environment part");
err.code = "INVALID_DOTENV_KEY";
throw err;
}
const environmentKey = `DOTENV_VAULT_${environment.toUpperCase()}`;
const ciphertext = result.parsed[environmentKey];
if (!ciphertext) {
const err = new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${environmentKey} in your .env.vault file.`);
err.code = "NOT_FOUND_DOTENV_ENVIRONMENT";
throw err;
}
return { ciphertext, key };
}
__name(_instructions, "_instructions");
function _vaultPath(options) {
let possibleVaultPath = null;
if (options && options.path && options.path.length > 0) {
if (Array.isArray(options.path)) {
for (const filepath of options.path) {
if (fs6.existsSync(filepath)) {
possibleVaultPath = filepath.endsWith(".vault") ? filepath : `${filepath}.vault`;
}
}
} else {
possibleVaultPath = options.path.endsWith(".vault") ? options.path : `${options.path}.vault`;
}
} else {
possibleVaultPath = path6.resolve(process.cwd(), ".env.vault");
}
if (fs6.existsSync(possibleVaultPath)) {
return possibleVaultPath;
}
return null;
}
__name(_vaultPath, "_vaultPath");
function _resolveHome(envPath) {
return envPath[0] === "~" ? path6.join(os.homedir(), envPath.slice(1)) : envPath;
}
__name(_resolveHome, "_resolveHome");
function _configVault(options) {
const debug = Boolean(options && options.debug);
const quiet = options && "quiet" in options ? options.quiet : true;
if (debug || !quiet) {
_log("Loading env from encrypted .env.vault");
}
const parsed = DotenvModule._parseVault(options);
let processEnv = process.env;
if (options && options.processEnv != null) {
processEnv = options.processEnv;
}
DotenvModule.populate(processEnv, parsed, options);
return { parsed };
}
__name(_configVault, "_configVault");
function configDotenv(options) {
const dotenvPath = path6.resolve(process.cwd(), ".env");
let encoding = "utf8";
const debug = Boolean(options && options.debug);
const quiet = options && "quiet" in options ? options.quiet : true;
if (options && options.encoding) {
encoding = options.encoding;
} else {
if (debug) {
_debug("No encoding is specified. UTF-8 is used by default");
}
}
let optionPaths = [dotenvPath];
if (options && options.path) {
if (!Array.isArray(options.path)) {
optionPaths = [_resolveHome(options.path)];
} else {
optionPaths = [];
for (const filepath of options.path) {
optionPaths.push(_resolveHome(filepath));
}
}
}
let lastError;
const parsedAll = {};
for (const path7 of optionPaths) {
try {
const parsed = DotenvModule.parse(fs6.readFileSync(path7, { encoding }));
DotenvModule.populate(parsedAll, parsed, options);
} catch (e) {
if (debug) {
_debug(`Failed to load ${path7} ${e.message}`);
}
lastError = e;
}
}
let processEnv = process.env;
if (options && options.processEnv != null) {
processEnv = options.processEnv;
}
DotenvModule.populate(processEnv, parsedAll, options);
if (debug || !quiet) {
const keysCount = Object.keys(parsedAll).length;
const shortPaths = [];
for (const filePath of optionPaths) {
try {
const relative = path6.relative(process.cwd(), filePath);
shortPaths.push(relative);
} catch (e) {
if (debug) {
_debug(`Failed to load ${filePath} ${e.message}`);
}
lastError = e;
}
}
_log(`injecting env (${keysCount}) from ${shortPaths.join(",")}`);
}
if (lastError) {
return { parsed: parsedAll, error: lastError };
} else {
return { parsed: parsedAll };
}
}
__name(configDotenv, "configDotenv");
function config(options) {
if (_dotenvKey(options).length === 0) {
return DotenvModule.configDotenv(options);
}
const vaultPath = _vaultPath(options);
if (!vaultPath) {
_warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${vaultPath}. Did you forget to build it?`);
return DotenvModule.configDotenv(options);
}
return DotenvModule._configVault(options);
}
__name(config, "config");
function decrypt(encrypted, keyStr) {
const key = Buffer.from(keyStr.slice(-64), "hex");
let ciphertext = Buffer.from(encrypted, "base64");
const nonce = ciphertext.subarray(0, 12);
const authTag = ciphertext.subarray(-16);
ciphertext = ciphertext.subarray(12, -16);
try {
const aesgcm = crypto2.createDecipheriv("aes-256-gcm", key, nonce);
aesgcm.setAuthTag(authTag);
return `${aesgcm.update(ciphertext)}${aesgcm.final()}`;
} catch (error) {
const isRange = error instanceof RangeError;
const invalidKeyLength = error.message === "Invalid key length";
const decryptionFailed = error.message === "Unsupported state or unable to authenticate data";
if (isRange || invalidKeyLength) {
const err = new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");
err.code = "INVALID_DOTENV_KEY";
throw err;
} else if (decryptionFailed) {
const err = new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");
err.code = "DECRYPTION_FAILED";
throw err;
} else {
throw error;
}
}
}
__name(decrypt, "decrypt");
function populate(processEnv, parsed, options = {}) {
const debug = Boolean(options && options.debug);
const override = Boolean(options && options.override);
if (typeof parsed !== "object") {
const err = new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");
err.code = "OBJECT_REQUIRED";
throw err;
}
for (const key of Object.keys(parsed)) {
if (Object.prototype.hasOwnProperty.call(processEnv, key)) {
if (override === true) {
processEnv[key] = parsed[key];
}
if (debug) {
if (override === true) {
_debug(`"${key}" is already defined and WAS overwritten`);
} else {
_debug(`"${key}" is already defined and was NOT overwritten`);
}
}
} else {
processEnv[key] = parsed[key];
}
}
}
__name(populate, "populate");
var DotenvModule = {
configDotenv,
_configVault,
_parseVault,
config,
decrypt,
parse: parse2,
populate
};
module.exports.configDotenv = DotenvModule.configDotenv;
module.exports._configVault = DotenvModule._configVault;
module.exports._parseVault = DotenvModule._parseVault;
module.exports.config = DotenvModule.config;
module.exports.decrypt = DotenvModule.decrypt;
module.exports.parse = DotenvModule.parse;
module.exports.populate = DotenvModule.populate;
module.exports = DotenvModule;
}
});
// node_modules/dotenv/lib/env-options.js
var require_env_options = __commonJS({
"node_modules/dotenv/lib/env-options.js"(exports, module) {
"use strict";
init_esm_shims();
var options = {};
if (process.env.DOTENV_CONFIG_ENCODING != null) {
options.encoding = process.env.DOTENV_CONFIG_ENCODING;
}
if (process.env.DOTENV_CONFIG_PATH != null) {
options.path = process.env.DOTENV_CONFIG_PATH;
}
if (process.env.DOTENV_CONFIG_QUIET != null) {
options.quiet = process.env.DOTENV_CONFIG_QUIET;
}
if (process.env.DOTENV_CONFIG_DEBUG != null) {
options.debug = process.env.DOTENV_CONFIG_DEBUG;
}
if (process.env.DOTENV_CONFIG_OVERRIDE != null) {
options.override = process.env.DOTENV_CONFIG_OVERRIDE;
}
if (process.env.DOTENV_CONFIG_DOTENV_KEY != null) {
options.DOTENV_KEY = process.env.DOTENV_CONFIG_DOTENV_KEY;
}
module.exports = options;
}
});
// node_modules/dotenv/lib/cli-options.js
var require_cli_options = __commonJS({
"node_modules/dotenv/lib/cli-options.js"(exports, module) {
"use strict";
init_esm_shims();
var re = /^dotenv_config_(encoding|path|quiet|debug|override|DOTENV_KEY)=(.+)$/;
module.exports = /* @__PURE__ */ __name(function optionMatcher(args) {
const options = args.reduce(function(acc, cur) {
const matches = cur.match(re);
if (matches) {
acc[matches[1]] = matches[2];
}
return acc;
}, {});
if (!("quiet" in options)) {
options.quiet = "true";
}
return options;
}, "optionMatcher");
}
});
// src/index.ts
init_esm_shims();
// src/version.ts
init_esm_shims();
import * as fs from "fs";
import * as path from "path";
function getVersionFromPackageJson() {
try {
const packageJsonPath = path.join(__dirname, "..", "package.json");
if (fs.existsSync(packageJsonPath)) {
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf-8"));
return packageJson.version || "0.0.0";
}
} catch (error) {
}
return "0.9.4";
}
__name(getVersionFromPackageJson, "getVersionFromPackageJson");
function isReleaseBuild() {
return __AGENTBAY_IS_RELEASE_BUILD__;
}
__name(isReleaseBuild, "isReleaseBuild");
var __AGENTBAY_IS_RELEASE_BUILD__ = false;
var VERSION = getVersionFromPackageJson();
var IS_RELEASE = isReleaseBuild();
// src/agent-bay.ts
init_esm_shims();
import { $OpenApiUtil as $OpenApiUtil2 } from "@alicloud/openapi-core";
// node_modules/dotenv/config.js
init_esm_shims();
(function() {
require_main().config(
Object.assign(
{},
require_env_options(),
require_cli_options()(process.argv)
)
);
})();
// src/agent-bay.ts
var dotenv = __toESM(require_main());
import * as fs4 from "fs";
import * as path4 from "path";
// src/api/index.ts
init_esm_shims();
// src/api/client.ts
init_esm_shims();
import * as $dara from "@darabonba/typescript";
import OpenApi from "@alicloud/openapi-core";
import { OpenApiUtil, $OpenApiUtil } from "@alicloud/openapi-core";
var _Client = class _Client extends (OpenApi.default || OpenApi) {
constructor(config) {
super(config);
this._signatureAlgorithm = "v2";
this._endpointRule = "";
this.checkConfig(config);
this._endpoint = this.getEndpoint(
"wuyingai",
this._regionId,
this._endpointRule,
this._network,
this._suffix,
this._endpointMap,
this._endpoint
);
}
getEndpoint(productId, regionId, endpointRule, network, suffix, endpointMap, endpoint) {
if (!$dara.isNull(endpoint)) {
return endpoint;
}
if (!$dara.isNull(endpointMap) && !$dara.isNull(endpointMap[regionId])) {
return endpointMap[regionId];
}
return OpenApiUtil.getEndpointRules(
productId,
regionId,
endpointRule,
network,
suffix
);
}
/**
* Call MCP tool
*
* @param request - CallMcpToolRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns CallMcpToolResponse
*/
async callMcpToolWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.args)) {
body["Args"] = request.args;
}
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.autoGenSession)) {
body["AutoGenSession"] = request.autoGenSession;
}
if (!$dara.isNull(request.externalUserId)) {
body["ExternalUserId"] = request.externalUserId;
}
if (!$dara.isNull(request.imageId)) {
body["ImageId"] = request.imageId;
}
if (!$dara.isNull(request.name)) {
body["Name"] = request.name;
}
if (!$dara.isNull(request.server)) {
body["Server"] = request.server;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.tool)) {
body["Tool"] = request.tool;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "CallMcpTool",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new CallMcpToolResponse({})
);
}
/**
* Call MCP tool
*
* @param request - CallMcpToolRequest
* @returns CallMcpToolResponse
*/
async callMcpTool(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.callMcpToolWithOptions(request, runtime);
}
/**
* Delete Persistent Context
*
* @param request - ClearContextRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ClearContextResponse
*/
async clearContextWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.id)) {
body["Id"] = request.id;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ClearContext",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(await this.doRPCRequest(params.action, params.version, params.protocol, params.method, params.authType, params.bodyType, req, runtime), new ClearContextResponse({}));
}
/**
* Delete Persistent Context
*
* @param request - ClearContextRequest
* @returns ClearContextResponse
*/
async clearContext(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.clearContextWithOptions(request, runtime);
}
/**
* Create MCP session
*
* @param tmpReq - CreateMcpSessionRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns CreateMcpSessionResponse
*/
async createMcpSessionWithOptions(tmpReq, runtime) {
tmpReq.validate();
const request = new CreateMcpSessionShrinkRequest({});
OpenApiUtil.convert(tmpReq, request);
if (!$dara.isNull(tmpReq.persistenceDataList)) {
request.persistenceDataListShrink = OpenApiUtil.arrayToStringWithSpecifiedStyle(
tmpReq.persistenceDataList,
"PersistenceDataList",
"json"
);
}
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
if (!$dara.isNull(request.externalUserId)) {
body["ExternalUserId"] = request.externalUserId;
}
if (!$dara.isNull(request.imageId)) {
body["ImageId"] = request.imageId;
}
if (!$dara.isNull(request.labels)) {
body["Labels"] = request.labels;
}
if (!$dara.isNull(request.mcpPolicyId)) {
body["McpPolicyId"] = request.mcpPolicyId;
}
if (!$dara.isNull(request.persistenceDataListShrink)) {
body["PersistenceDataList"] = request.persistenceDataListShrink;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.vpcResource)) {
body["VpcResource"] = request.vpcResource;
}
if (!$dara.isNull(request.extraConfigs)) {
body["ExtraConfigs"] = request.extraConfigs;
}
if (!$dara.isNull(request.sdkStats)) {
body["SdkStats"] = request.sdkStats;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "CreateMcpSession",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new CreateMcpSessionResponse({})
);
}
/**
* Create MCP session
*
* @param request - CreateMcpSessionRequest
* @returns CreateMcpSessionResponse
*/
async createMcpSession(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.createMcpSessionWithOptions(request, runtime);
}
/**
* Delete persistent context
*
* @param request - DeleteContextRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns DeleteContextResponse
*/
async deleteContextWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.id)) {
body["Id"] = request.id;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "DeleteContext",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new DeleteContextResponse({})
);
}
/**
* Delete persistent context
*
* @param request - DeleteContextRequest
* @returns DeleteContextResponse
*/
async deleteContext(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.deleteContextWithOptions(request, runtime);
}
/**
* Get context
*
* @param request - GetContextRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetContextResponse
*/
async getContextWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.allowCreate)) {
body["AllowCreate"] = request.allowCreate;
}
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
if (!$dara.isNull(request.name)) {
body["Name"] = request.name;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetContext",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetContextResponse({})
);
}
/**
* Get context
*
* @param request - GetContextRequest
* @returns GetContextResponse
*/
async getContext(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getContextWithOptions(request, runtime);
}
/**
* Get context information
*
* @param request - GetContextInfoRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetContextInfoResponse
*/
async getContextInfoWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
if (!$dara.isNull(request.path)) {
body["Path"] = request.path;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.taskType)) {
body["TaskType"] = request.taskType;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetContextInfo",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetContextInfoResponse({})
);
}
/**
* Get context information
*
* @param request - GetContextInfoRequest
* @returns GetContextInfoResponse
*/
async getContextInfo(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getContextInfoWithOptions(request, runtime);
}
/**
* Get labels
*
* @param request - GetLabelRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetLabelResponse
*/
async getLabelWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.maxResults)) {
body["MaxResults"] = request.maxResults;
}
if (!$dara.isNull(request.nextToken)) {
body["NextToken"] = request.nextToken;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetLabel",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetLabelResponse({})
);
}
/**
* Get labels
*
* @param request - GetLabelRequest
* @returns GetLabelResponse
*/
async getLabel(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getLabelWithOptions(request, runtime);
}
/**
* Get session information
*
* @param request - GetSessionRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetSessionResponse
*/
async getSessionWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetSession",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetSessionResponse({})
);
}
/**
* Get session information
*
* @param request - GetSessionRequest
* @returns GetSessionResponse
*/
async getSession(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getSessionWithOptions(request, runtime);
}
/**
* Get forwarding link for specific port
*
* @param request - GetLinkRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetLinkResponse
*/
async getLinkWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.port)) {
body["Port"] = request.port;
}
if (!$dara.isNull(request.protocolType)) {
body["ProtocolType"] = request.protocolType;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.option)) {
body["Option"] = request.option;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetLink",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetLinkResponse({})
);
}
/**
* Get forwarding link for specific port
*
* @param request - GetLinkRequest
* @returns GetLinkResponse
*/
async getLink(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getLinkWithOptions(request, runtime);
}
/**
* Get MCP resource information
*
* @param request - GetMcpResourceRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns GetMcpResourceResponse
*/
async getMcpResourceWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "GetMcpResource",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new GetMcpResourceResponse({})
);
}
/**
* Get MCP resource information
*
* @param request - GetMcpResourceRequest
* @returns GetMcpResourceResponse
*/
async getMcpResource(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.getMcpResourceWithOptions(request, runtime);
}
/**
* Get context list
*
* @param request - ListContextsRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ListContextsResponse
*/
async listContextsWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.maxResults)) {
body["MaxResults"] = request.maxResults;
}
if (!$dara.isNull(request.nextToken)) {
body["NextToken"] = request.nextToken;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ListContexts",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new ListContextsResponse({})
);
}
/**
* Get context list
*
* @param request - ListContextsRequest
* @returns ListContextsResponse
*/
async listContexts(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.listContextsWithOptions(request, runtime);
}
/**
* ListMcpTools
*
* @param request - ListMcpToolsRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ListMcpToolsResponse
*/
async listMcpToolsWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.imageId)) {
body["ImageId"] = request.imageId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ListMcpTools",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new ListMcpToolsResponse({})
);
}
/**
* ListMcpTools
*
* @param request - ListMcpToolsRequest
* @returns ListMcpToolsResponse
*/
async listMcpTools(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.listMcpToolsWithOptions(request, runtime);
}
/**
* Query session list by label
*
* @param request - ListSessionRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ListSessionResponse
*/
async listSessionWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.labels)) {
body["Labels"] = request.labels;
}
if (!$dara.isNull(request.maxResults)) {
body["MaxResults"] = request.maxResults;
}
if (!$dara.isNull(request.nextToken)) {
body["NextToken"] = request.nextToken;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ListSession",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new ListSessionResponse({})
);
}
/**
* Query session list by label
*
* @param request - ListSessionRequest
* @returns ListSessionResponse
*/
async listSession(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.listSessionWithOptions(request, runtime);
}
/**
* Modify context
*
* @param request - ModifyContextRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ModifyContextResponse
*/
async modifyContextWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.id)) {
body["Id"] = request.id;
}
if (!$dara.isNull(request.name)) {
body["Name"] = request.name;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ModifyContext",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new ModifyContextResponse({})
);
}
/**
* Modify context
*
* @param request - ModifyContextRequest
* @returns ModifyContextResponse
*/
async modifyContext(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.modifyContextWithOptions(request, runtime);
}
/**
* Release MCP session
*
* @param request - ReleaseMcpSessionRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns ReleaseMcpSessionResponse
*/
async releaseMcpSessionWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "ReleaseMcpSession",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new ReleaseMcpSessionResponse({})
);
}
/**
* Release MCP session
*
* @param request - ReleaseMcpSessionRequest
* @returns ReleaseMcpSessionResponse
*/
async releaseMcpSession(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.releaseMcpSessionWithOptions(request, runtime);
}
/**
* Set labels
*
* @param request - SetLabelRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns SetLabelResponse
*/
async setLabelWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.labels)) {
body["Labels"] = request.labels;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "SetLabel",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new SetLabelResponse({})
);
}
/**
* Set labels
*
* @param request - SetLabelRequest
* @returns SetLabelResponse
*/
async setLabel(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.setLabelWithOptions(request, runtime);
}
/**
* Sync context
*
* @param request - SyncContextRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns SyncContextResponse
*/
async syncContextWithOptions(request, runtime) {
request.validate();
const query = {};
if (!$dara.isNull(request.authorization)) {
query["Authorization"] = request.authorization;
}
const body = {};
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
if (!$dara.isNull(request.mode)) {
body["Mode"] = request.mode;
}
if (!$dara.isNull(request.path)) {
body["Path"] = request.path;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
const req = new $OpenApiUtil.OpenApiRequest({
query: OpenApiUtil.query(query),
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "SyncContext",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new SyncContextResponse({})
);
}
/**
* Sync context
*
* @param request - SyncContextRequest
* @returns SyncContextResponse
*/
async syncContext(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.syncContextWithOptions(request, runtime);
}
/**
* Initialize browser
*
* @param tmpReq - InitBrowserRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns InitBrowserResponse
*/
async initBrowserWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.persistentPath)) {
body["PersistentPath"] = request.persistentPath;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.browserOption)) {
body["BrowserOption"] = JSON.stringify(request.browserOption);
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "InitBrowser",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new InitBrowserResponse({})
);
}
/**
* Initialize browser
*
* @param request - InitBrowserRequest
* @returns InitBrowserResponse
*/
async initBrowser(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.initBrowserWithOptions(request, runtime);
}
/**
* Initialize browser (sync version)
*
* @param request - InitBrowserRequest
* @returns InitBrowserResponse
*/
initBrowserSync(request) {
const runtime = new $dara.RuntimeOptions({});
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.persistentPath)) {
body["PersistentPath"] = request.persistentPath;
}
if (!$dara.isNull(request.sessionId)) {
body["SessionId"] = request.sessionId;
}
if (!$dara.isNull(request.browserOption)) {
body["BrowserOption"] = JSON.stringify(request.browserOption);
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "InitBrowser",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
this.callApi(params, req, runtime),
new InitBrowserResponse({})
);
}
/**
* Get context file upload URL
*
* @param request - DeleteContextFileRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns DeleteContextFileResponse
*/
async deleteContextFileWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
if (!$dara.isNull(request.filePath)) {
body["FilePath"] = request.filePath;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "DeleteContextFile",
version: "2025-05-06",
protocol: "HTTPS",
pathname: "/",
method: "POST",
authType: "Anonymous",
style: "RPC",
reqBodyType: "formData",
bodyType: "json"
});
return $dara.cast(
await this.callApi(params, req, runtime),
new DeleteContextFileResponse({})
);
}
/**
* Get context file upload URL
*
* @param request - DeleteContextFileRequest
* @returns DeleteContextFileResponse
*/
async deleteContextFile(request) {
const runtime = new $dara.RuntimeOptions({});
return await this.deleteContextFileWithOptions(request, runtime);
}
/**
* Query context specific directory files
*
* @param request - DescribeContextFilesRequest
* @param runtime - runtime options for this request RuntimeOptions
* @returns DescribeContextFilesResponse
*/
async describeContextFilesWithOptions(request, runtime) {
request.validate();
const body = {};
if (!$dara.isNull(request.authorization)) {
body["Authorization"] = request.authorization;
}
if (!$dara.isNull(request.pageNumber)) {
body["PageNumber"] = request.pageNumber;
}
if (!$dara.isNull(request.pageSize)) {
body["PageSize"] = request.pageSize;
}
if (!$dara.isNull(request.parentFolderPath)) {
body["ParentFolderPath"] = request.parentFolderPath;
}
if (!$dara.isNull(request.contextId)) {
body["ContextId"] = request.contextId;
}
const req = new $OpenApiUtil.OpenApiRequest({
body: OpenApiUtil.parseToMap(body)
});
const params = new $OpenApiUtil.Params({
action: "DescribeContextFiles",
version: "202