@botpress/adk-cli 1.13.0 → 1.13.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/dist/cli.js CHANGED
@@ -347541,7 +347541,7 @@ var init_internal = __esm(() => {
347541
347541
  });
347542
347542
  init_define_PACKAGE_VERSIONS = __esm2({
347543
347543
  "<define:__PACKAGE_VERSIONS__>"() {
347544
- define_PACKAGE_VERSIONS_default = { runtime: "1.13.0", adk: "1.13.0", sdk: "5.0.2", llmz: "0.0.35", zai: "2.5.5", cognitive: "0.3.3" };
347544
+ define_PACKAGE_VERSIONS_default = { runtime: "1.13.2", adk: "1.13.2", sdk: "5.0.2", llmz: "0.0.35", zai: "2.5.5", cognitive: "0.3.3" };
347545
347545
  }
347546
347546
  });
347547
347547
  init_asset = __esm2({
@@ -380558,18 +380558,31 @@ yield <Message>
380558
380558
  init_define_BUILD();
380559
380559
  init_define_PACKAGE_VERSIONS();
380560
380560
  init_runtime2();
380561
- BaseConversationInstance = class {
380561
+ BaseConversationInstance = class _BaseConversationInstance {
380562
380562
  id;
380563
380563
  channel;
380564
380564
  integration;
380565
+ alias;
380565
380566
  conversation;
380566
380567
  client;
380567
380568
  TrackedState;
380568
380569
  TrackedTags;
380569
- constructor(conversation2, client2) {
380570
+ static extractAliasFromTags(tags) {
380571
+ if (!tags)
380572
+ return;
380573
+ for (const tagKey of Object.keys(tags)) {
380574
+ const colonIndex = tagKey.indexOf(":");
380575
+ if (colonIndex > 0) {
380576
+ return tagKey.substring(0, colonIndex);
380577
+ }
380578
+ }
380579
+ return;
380580
+ }
380581
+ constructor(conversation2, client2, alias) {
380570
380582
  this.id = conversation2.id;
380571
- this.channel = `${conversation2.integration}.${conversation2.channel}`;
380572
380583
  this.integration = conversation2.integration;
380584
+ this.alias = alias ?? _BaseConversationInstance.extractAliasFromTags(conversation2.tags) ?? conversation2.integration;
380585
+ this.channel = `${this.alias}.${conversation2.channel}`;
380573
380586
  this.conversation = conversation2;
380574
380587
  this.client = client2;
380575
380588
  const states = context.get("states", { optional: true });
@@ -654257,7 +654270,7 @@ var init_library2 = __esm(() => {
654257
654270
  });
654258
654271
  init_define_PACKAGE_VERSIONS2 = __esm4({
654259
654272
  "<define:__PACKAGE_VERSIONS__>"() {
654260
- define_PACKAGE_VERSIONS_default2 = { runtime: "1.13.0", adk: "1.13.0", sdk: "5.0.2", llmz: "0.0.35", zai: "2.5.5", cognitive: "0.3.3" };
654273
+ define_PACKAGE_VERSIONS_default2 = { runtime: "1.13.2", adk: "1.13.2", sdk: "5.0.2", llmz: "0.0.35", zai: "2.5.5", cognitive: "0.3.3" };
654261
654274
  }
654262
654275
  });
654263
654276
  init_assets2 = __esm4({
@@ -687879,18 +687892,31 @@ yield <Message>
687879
687892
  init_define_BUILD2();
687880
687893
  init_define_PACKAGE_VERSIONS2();
687881
687894
  init_runtime22();
687882
- BaseConversationInstance2 = class {
687895
+ BaseConversationInstance2 = class _BaseConversationInstance {
687883
687896
  id;
687884
687897
  channel;
687885
687898
  integration;
687899
+ alias;
687886
687900
  conversation;
687887
687901
  client;
687888
687902
  TrackedState;
687889
687903
  TrackedTags;
687890
- constructor(conversation2, client2) {
687904
+ static extractAliasFromTags(tags) {
687905
+ if (!tags)
687906
+ return;
687907
+ for (const tagKey of Object.keys(tags)) {
687908
+ const colonIndex = tagKey.indexOf(":");
687909
+ if (colonIndex > 0) {
687910
+ return tagKey.substring(0, colonIndex);
687911
+ }
687912
+ }
687913
+ return;
687914
+ }
687915
+ constructor(conversation2, client2, alias) {
687891
687916
  this.id = conversation2.id;
687892
- this.channel = `${conversation2.integration}.${conversation2.channel}`;
687893
687917
  this.integration = conversation2.integration;
687918
+ this.alias = alias ?? _BaseConversationInstance.extractAliasFromTags(conversation2.tags) ?? conversation2.integration;
687919
+ this.channel = `${this.alias}.${conversation2.channel}`;
687894
687920
  this.conversation = conversation2;
687895
687921
  this.client = client2;
687896
687922
  const states = context3.get("states", { optional: true });
@@ -696254,6 +696280,17 @@ class ValidationErrors {
696254
696280
  context: { integration, version: version3 }
696255
696281
  };
696256
696282
  }
696283
+ static invalidIntegrationAlias(alias) {
696284
+ return {
696285
+ $type: ValidationErrors.$type,
696286
+ code: "INVALID_INTEGRATION_ALIAS",
696287
+ severity: "error",
696288
+ message: `Invalid integration alias '${alias}'`,
696289
+ file: "agent.config.ts",
696290
+ hint: 'Integration aliases must be 2-100 characters and contain only lowercase letters, numbers, underscores, and hyphens (e.g., "slack", "my-slack", "slack_prod")',
696291
+ context: { alias }
696292
+ };
696293
+ }
696257
696294
  static unknownIntegration(integration, source, detailedMessage) {
696258
696295
  return {
696259
696296
  $type: ValidationErrors.$type,
@@ -697829,6 +697866,9 @@ class EnhancedIntegrationCache {
697829
697866
  return key.replace(/[^a-zA-Z0-9_-]/g, "_");
697830
697867
  }
697831
697868
  }
697869
+ function isIntegrationAliasValid(alias) {
697870
+ return alias.length >= INTEGRATION_ALIAS_MIN_LENGTH && alias.length <= INTEGRATION_ALIAS_MAX_LENGTH && INTEGRATION_ALIAS_REGEX.test(alias);
697871
+ }
697832
697872
 
697833
697873
  class IntegrationParser {
697834
697874
  static parseIntegrationRef(versionString) {
@@ -697846,6 +697886,10 @@ class IntegrationParser {
697846
697886
  }
697847
697887
  for (const [alias, value2] of Object.entries(dependencies.integrations)) {
697848
697888
  try {
697889
+ if (!isIntegrationAliasValid(alias)) {
697890
+ errors.push(ValidationErrors.invalidIntegrationAlias(alias));
697891
+ continue;
697892
+ }
697849
697893
  const ref = this.parseIntegrationRef(value2.version);
697850
697894
  const versionResult = versionSchema.safeParse(ref.version);
697851
697895
  if (!versionResult.success) {
@@ -697869,13 +697913,30 @@ class IntegrationParser {
697869
697913
  const seen = new Map;
697870
697914
  for (const integration of integrations) {
697871
697915
  const key = integration.ref.fullName;
697872
- const aliases = seen.get(key) || [];
697873
- aliases.push(integration.alias);
697874
- seen.set(key, aliases);
697916
+ const group2 = seen.get(key) || [];
697917
+ group2.push(integration);
697918
+ seen.set(key, group2);
697875
697919
  }
697876
- for (const [integration, aliases] of seen.entries()) {
697877
- if (aliases.length > 1) {
697878
- errors.push(ValidationErrors.warning(`Integration '${integration}' is used with multiple aliases: ${aliases.join(", ")}. This is valid but ensure each has different configurations.`, "agent.config.ts"));
697920
+ for (const [integrationName, group2] of seen.entries()) {
697921
+ if (group2.length > 1) {
697922
+ const duplicateConfigs = [];
697923
+ for (let i2 = 0;i2 < group2.length; i2++) {
697924
+ for (let j = i2 + 1;j < group2.length; j++) {
697925
+ const configA = JSON.stringify(group2[i2].config ?? {});
697926
+ const configB = JSON.stringify(group2[j].config ?? {});
697927
+ if (configA === configB) {
697928
+ if (!duplicateConfigs.includes(group2[i2].alias)) {
697929
+ duplicateConfigs.push(group2[i2].alias);
697930
+ }
697931
+ if (!duplicateConfigs.includes(group2[j].alias)) {
697932
+ duplicateConfigs.push(group2[j].alias);
697933
+ }
697934
+ }
697935
+ }
697936
+ }
697937
+ if (duplicateConfigs.length > 0) {
697938
+ errors.push(ValidationErrors.warning(`Integration '${integrationName}' has aliases with identical configurations: ${duplicateConfigs.join(", ")}. Consider using different configs or removing duplicates.`, "agent.config.ts"));
697939
+ }
697879
697940
  }
697880
697941
  }
697881
697942
  return errors;
@@ -698617,12 +698678,17 @@ class IntegrationChecker {
698617
698678
  throw new Error(`Integration definition not found for ${alias}`);
698618
698679
  }
698619
698680
  let installedIntegration = null;
698620
- for (const [_key, installed] of Object.entries(installedIntegrations)) {
698621
- const matches = installed.name === ref.fullName || installed.name === ref.name;
698622
- if (matches) {
698623
- installedIntegration = installed;
698624
- processedIntegrationIds.add(installed.id);
698625
- break;
698681
+ if (installedIntegrations[alias]) {
698682
+ installedIntegration = installedIntegrations[alias];
698683
+ processedIntegrationIds.add(installedIntegration.id);
698684
+ } else {
698685
+ for (const [_key, installed] of Object.entries(installedIntegrations)) {
698686
+ const matches = installed.name === ref.fullName || installed.name === ref.name;
698687
+ if (matches) {
698688
+ installedIntegration = installed;
698689
+ processedIntegrationIds.add(installed.id);
698690
+ break;
698691
+ }
698626
698692
  }
698627
698693
  }
698628
698694
  const desiredInstallStatus = enabled === false ? "disabled" : "enabled";
@@ -699331,7 +699397,7 @@ class AgentProjectGenerator {
699331
699397
  deploy: "adk deploy"
699332
699398
  },
699333
699399
  dependencies: {
699334
- "@botpress/runtime": "^1.13.0"
699400
+ "@botpress/runtime": "^1.13.2"
699335
699401
  },
699336
699402
  devDependencies: {
699337
699403
  typescript: "^5.9.3"
@@ -703834,11 +703900,11 @@ var import_debug, import_debug2, import_ts_morph, __defProp11, __commonJS8 = (cb
703834
703900
  `));
703835
703901
  return code;
703836
703902
  }
703837
- }, ADK_VERSION = "1.13.0", relative22 = (from, to3) => {
703903
+ }, ADK_VERSION = "1.13.2", relative22 = (from, to3) => {
703838
703904
  const fromDir = path102.dirname(from);
703839
703905
  const relative32 = path102.relative(fromDir, to3);
703840
703906
  return relative32.startsWith(".") ? relative32 : `./${relative32}`;
703841
- }, init_utils10, exports_action_types, init_action_types, exports_integration_action_types, init_integration_action_types, require_package3, bpCliImporter, auth, debug, BP_CLI_VERSION = "5.1.1", BP_CLI_INSTALL_ALL, BP_CLI_INSTALL_DIR, BP_CLI_BIN_PATH, BpAddCommand, BpBuildCommand, BpDeployCommand, BpDevCommand, BpChatCommand, workspaceCache, agentInfoKeyOrder, dependenciesKeyOrder, integrationKeyOrder, defaultAdkFolder = ".adk", integrationRefSchema, versionSchema, HubCache, debug2, AgentProject, FileWatcher, CLAUDE_template_default = `# Botpress ADK Project Context
703907
+ }, init_utils10, exports_action_types, init_action_types, exports_integration_action_types, init_integration_action_types, require_package3, bpCliImporter, auth, debug, BP_CLI_VERSION = "5.1.1", BP_CLI_INSTALL_ALL, BP_CLI_INSTALL_DIR, BP_CLI_BIN_PATH, BpAddCommand, BpBuildCommand, BpDeployCommand, BpDevCommand, BpChatCommand, workspaceCache, agentInfoKeyOrder, dependenciesKeyOrder, integrationKeyOrder, defaultAdkFolder = ".adk", INTEGRATION_ALIAS_MIN_LENGTH = 2, INTEGRATION_ALIAS_MAX_LENGTH = 100, INTEGRATION_ALIAS_REGEX, integrationRefSchema, versionSchema, HubCache, debug2, AgentProject, FileWatcher, CLAUDE_template_default = `# Botpress ADK Project Context
703842
703908
 
703843
703909
  This project is built with the **Botpress Agent Development Kit (ADK)** - a TypeScript-first framework for building AI agents.
703844
703910
 
@@ -705232,6 +705298,7 @@ var init_dist17 = __esm(() => {
705232
705298
  ValidationErrorCode2["INVALID_DEPENDENCIES_SYNTAX"] = "INVALID_DEPENDENCIES_SYNTAX";
705233
705299
  ValidationErrorCode2["INVALID_DEPENDENCIES_SCHEMA"] = "INVALID_DEPENDENCIES_SCHEMA";
705234
705300
  ValidationErrorCode2["INVALID_VERSION_FORMAT"] = "INVALID_VERSION_FORMAT";
705301
+ ValidationErrorCode2["INVALID_INTEGRATION_ALIAS"] = "INVALID_INTEGRATION_ALIAS";
705235
705302
  ValidationErrorCode2["UNKNOWN_INTEGRATION"] = "UNKNOWN_INTEGRATION";
705236
705303
  ValidationErrorCode2["INCOMPATIBLE_VERSION"] = "INCOMPATIBLE_VERSION";
705237
705304
  ValidationErrorCode2["CIRCULAR_DEPENDENCY"] = "CIRCULAR_DEPENDENCY";
@@ -705313,7 +705380,7 @@ var init_dist17 = __esm(() => {
705313
705380
  require_package3 = __commonJS8((exports7, module) => {
705314
705381
  module.exports = {
705315
705382
  name: "@botpress/adk",
705316
- version: "1.13.0",
705383
+ version: "1.13.2",
705317
705384
  description: "Core ADK library for building AI agents on Botpress",
705318
705385
  type: "module",
705319
705386
  main: "dist/index.js",
@@ -705360,7 +705427,7 @@ var init_dist17 = __esm(() => {
705360
705427
  "@botpress/cli": "^5.1.1",
705361
705428
  "@botpress/client": "^1.28.0",
705362
705429
  "@botpress/cognitive": "^0.3.3",
705363
- "@botpress/runtime": "^1.13.0",
705430
+ "@botpress/runtime": "^1.13.2",
705364
705431
  "@botpress/sdk": "^5.0.2",
705365
705432
  "@bpinternal/jex": "^1.2.4",
705366
705433
  "@bpinternal/yargs-extra": "^0.0.21",
@@ -705862,6 +705929,7 @@ ${this.stderrLines.join(`
705862
705929
  integrationKeyOrder = ["version", "enabled", "configurationType", "config"];
705863
705930
  init_fs();
705864
705931
  init_validation_errors();
705932
+ INTEGRATION_ALIAS_REGEX = /^(?:[a-z][a-z0-9_-]*\/)?[a-z][a-z0-9_-]*$/;
705865
705933
  integrationRefSchema = X.string().transform((val, ctx) => {
705866
705934
  const match5 = val.match(/^(?:([^/]+)\/)?([^@]+)@(.+)$/);
705867
705935
  if (!match5) {
@@ -711961,7 +712029,7 @@ var init_Separator = __esm(async () => {
711961
712029
  var require_package4 = __commonJS((exports7, module) => {
711962
712030
  module.exports = {
711963
712031
  name: "@botpress/adk",
711964
- version: "1.13.0",
712032
+ version: "1.13.2",
711965
712033
  description: "Core ADK library for building AI agents on Botpress",
711966
712034
  type: "module",
711967
712035
  main: "dist/index.js",
@@ -712008,7 +712076,7 @@ var require_package4 = __commonJS((exports7, module) => {
712008
712076
  "@botpress/cli": "^5.1.1",
712009
712077
  "@botpress/client": "^1.28.0",
712010
712078
  "@botpress/cognitive": "^0.3.3",
712011
- "@botpress/runtime": "^1.13.0",
712079
+ "@botpress/runtime": "^1.13.2",
712012
712080
  "@botpress/sdk": "^5.0.2",
712013
712081
  "@bpinternal/jex": "^1.2.4",
712014
712082
  "@bpinternal/yargs-extra": "^0.0.21",
@@ -713950,7 +714018,7 @@ function checkRuntimeVersion(agentRoot) {
713950
714018
  `));
713951
714019
  }
713952
714020
  }
713953
- var semver2, EXPECTED_RUNTIME_VERSION = "1.13.0", SUPPORTED_RUNTIME_RANGE = ">=1.13.0";
714021
+ var semver2, EXPECTED_RUNTIME_VERSION = "1.13.2", SUPPORTED_RUNTIME_RANGE = ">=1.13.0";
713954
714022
  var init_runtime_version_check = __esm(() => {
713955
714023
  init_source();
713956
714024
  semver2 = __toESM(require_semver2(), 1);
@@ -729088,7 +729156,7 @@ function getPlatformInfo() {
729088
729156
  }
729089
729157
  return { target, extension, isWindows: isWindows6 };
729090
729158
  }
729091
- async function getLatestVersion() {
729159
+ async function getVersion(tagOrVersion) {
729092
729160
  const response = await fetch(REGISTRY_URL2, {
729093
729161
  headers: { Accept: "application/json" }
729094
729162
  });
@@ -729096,11 +729164,27 @@ async function getLatestVersion() {
729096
729164
  throw new Error("Failed to fetch version information from npm");
729097
729165
  }
729098
729166
  const data = await response.json();
729099
- const latest = data["dist-tags"]?.latest;
729100
- if (!latest) {
729101
- throw new Error("Could not determine latest version");
729167
+ const distTags = data["dist-tags"];
729168
+ const versions3 = Object.keys(data.versions || {});
729169
+ if (!tagOrVersion) {
729170
+ const latest = distTags?.latest;
729171
+ if (!latest) {
729172
+ throw new Error("Could not determine latest version");
729173
+ }
729174
+ return { version: latest, tag: "latest" };
729175
+ }
729176
+ if (distTags[tagOrVersion]) {
729177
+ return { version: distTags[tagOrVersion], tag: tagOrVersion };
729102
729178
  }
729103
- return latest;
729179
+ const normalizedVersion = tagOrVersion.replace(/^v/, "");
729180
+ if (versions3.includes(normalizedVersion)) {
729181
+ return { version: normalizedVersion, tag: null };
729182
+ }
729183
+ const availableTags = Object.keys(distTags).join(", ");
729184
+ throw new Error(`Unknown tag or version: ${tagOrVersion}
729185
+
729186
+ Available tags: ${availableTags}
729187
+ Or specify a version like: 1.13.0`);
729104
729188
  }
729105
729189
  async function downloadBinary(version3, target, extension) {
729106
729190
  const fileName = `adk-${target}${extension}`;
@@ -729202,16 +729286,21 @@ del "%~f0"
729202
729286
  }
729203
729287
  }
729204
729288
  }
729205
- async function adkSelfUpgrade(currentVersion) {
729289
+ async function adkSelfUpgrade(currentVersion, tagOrVersion) {
729206
729290
  try {
729291
+ const currentPath = getCurrentBinaryPath();
729207
729292
  console.log(`\uD83D\uDCE6 Current version: ${currentVersion}`);
729208
- const latestVersion = await getLatestVersion();
729209
- console.log(`\uD83D\uDCE6 Latest version: ${latestVersion}`);
729210
- if (currentVersion === latestVersion) {
729211
- console.log("\u2705 You already have the latest version!");
729293
+ console.log(`\uD83D\uDCCD Binary path: ${currentPath}`);
729294
+ const { version: targetVersion, tag } = await getVersion(tagOrVersion);
729295
+ if (tag) {
729296
+ console.log(`\uD83D\uDCE6 Target: ${tag} (v${targetVersion})`);
729297
+ } else {
729298
+ console.log(`\uD83D\uDCE6 Target version: ${targetVersion}`);
729299
+ }
729300
+ if (currentVersion === targetVersion) {
729301
+ console.log("\u2705 You already have this version!");
729212
729302
  return;
729213
729303
  }
729214
- const currentPath = getCurrentBinaryPath();
729215
729304
  const { isWindows: isWindows6 } = getPlatformInfo();
729216
729305
  if (!isWindows6 && !checkWritePermissions(currentPath)) {
729217
729306
  console.error(`
@@ -729230,14 +729319,14 @@ async function adkSelfUpgrade(currentVersion) {
729230
729319
  const { target, extension } = getPlatformInfo();
729231
729320
  let binaryBuffer;
729232
729321
  if (isWindows6) {
729233
- binaryBuffer = await downloadBinaryWindows(latestVersion, target, extension);
729322
+ binaryBuffer = await downloadBinaryWindows(targetVersion, target, extension);
729234
729323
  } else {
729235
- binaryBuffer = await downloadBinary(latestVersion, target, extension);
729324
+ binaryBuffer = await downloadBinary(targetVersion, target, extension);
729236
729325
  }
729237
729326
  replaceBinary(binaryBuffer, isWindows6);
729238
729327
  if (!isWindows6) {
729239
729328
  console.log(`
729240
- v${currentVersion} \u2192 v${latestVersion}`);
729329
+ v${currentVersion} \u2192 v${targetVersion}`);
729241
729330
  console.log(`
729242
729331
  Run \x1B[36madk --version\x1B[0m to verify`);
729243
729332
  }
@@ -890825,7 +890914,7 @@ if (!checkNodeVersion(true)) {
890825
890914
  checkNodeVersion(false);
890826
890915
  process.exit(1);
890827
890916
  }
890828
- var CLI_VERSION = "1.13.0";
890917
+ var CLI_VERSION = "1.13.2";
890829
890918
  if (CLI_VERSION.startsWith("<<") && CLI_VERSION.endsWith(">>")) {
890830
890919
  try {
890831
890920
  const __filename2 = fileURLToPath14(import.meta.url);
@@ -891032,11 +891121,11 @@ program.command("info").description("Show detailed information about an integrat
891032
891121
  process.exit(1);
891033
891122
  }
891034
891123
  });
891035
- program.command("self-upgrade").alias("self-update").description("Upgrade ADK CLI to the latest version").action(async () => {
891124
+ program.command("self-upgrade").alias("self-update").description("Upgrade ADK CLI to the latest version (or a specific tag/version)").argument("[tag-or-version]", "Tag (beta, next) or version (1.13.0) to install").action(async (tagOrVersion) => {
891036
891125
  try {
891037
891126
  await trackCmd("self-upgrade", async () => {
891038
891127
  const { adkSelfUpgrade: adkSelfUpgrade2 } = await Promise.resolve().then(() => (init_upgrade(), exports_upgrade));
891039
- await adkSelfUpgrade2(CLI_VERSION);
891128
+ await adkSelfUpgrade2(CLI_VERSION, tagOrVersion);
891040
891129
  }, false);
891041
891130
  } catch (error2) {
891042
891131
  console.error("Error:", error2 instanceof Error ? error2.message : String(error2));
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.13.0",
3
- "generatedAt": "2025-12-18T22:14:42.621Z",
2
+ "version": "1.13.2",
3
+ "generatedAt": "2025-12-19T01:48:01.829Z",
4
4
  "cliName": "adk",
5
5
  "globalOptions": [
6
6
  {
@@ -520,11 +520,17 @@
520
520
  {
521
521
  "name": "self-upgrade",
522
522
  "fullName": "self-upgrade",
523
- "description": "Upgrade ADK CLI to the latest version",
523
+ "description": "Upgrade ADK CLI to the latest version (or a specific tag/version)",
524
524
  "aliases": [
525
525
  "self-update"
526
526
  ],
527
- "arguments": [],
527
+ "arguments": [
528
+ {
529
+ "name": "tag-or-version",
530
+ "description": "Tag (beta, next) or version (1.13.0) to install",
531
+ "required": false
532
+ }
533
+ ],
528
534
  "options": []
529
535
  },
530
536
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botpress/adk-cli",
3
- "version": "1.13.0",
3
+ "version": "1.13.2",
4
4
  "description": "Command-line interface for the Botpress Agent Development Kit (ADK)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -41,9 +41,11 @@
41
41
  "url": "https://github.com/botpress/adk"
42
42
  },
43
43
  "dependencies": {
44
- "@botpress/adk": "^1.13.0",
44
+ "@botpress/adk": "^1.13.2",
45
45
  "@botpress/cli": "^5.1.1",
46
- "@botpress/runtime": "^1.13.0",
46
+ "@botpress/client": "^1.28.0",
47
+ "@botpress/runtime": "^1.13.2",
48
+ "@botpress/sdk": "^5.0.2",
47
49
  "@botpress/webchat-client": "^0.4.0",
48
50
  "@modelcontextprotocol/sdk": "^1.25.1",
49
51
  "adm-zip": "^0.5.16",