@band-ai/sdk 0.3.1 → 0.3.3

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.
@@ -46,6 +46,9 @@ var ACPClientHistoryConverter = class {
46
46
  convert(raw) {
47
47
  const roomToSession = {};
48
48
  for (const entry of raw) {
49
+ if (entry.message_type !== "task") {
50
+ continue;
51
+ }
49
52
  const metadataRaw = entry.metadata;
50
53
  if (!metadataRaw || typeof metadataRaw !== "object" || Array.isArray(metadataRaw)) {
51
54
  continue;
@@ -53,7 +56,7 @@ var ACPClientHistoryConverter = class {
53
56
  const metadata = metadataRaw;
54
57
  const sessionId = metadata.acp_client_session_id;
55
58
  const roomId = metadata.acp_client_room_id;
56
- if (typeof sessionId === "string" && typeof roomId === "string" && sessionId && roomId) {
59
+ if (typeof sessionId === "string" && typeof roomId === "string" && sessionId && roomId && roomId === entry.room_id) {
57
60
  roomToSession[roomId] = sessionId;
58
61
  }
59
62
  }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  ACPClientHistoryConverter,
3
3
  ACPServerHistoryConverter
4
- } from "./chunk-FYVLUGW7.js";
4
+ } from "./chunk-V5TSWS7P.js";
5
5
  import {
6
6
  A2AHistoryConverter,
7
7
  ClaudeSDKHistoryConverter,
package/dist/index.cjs CHANGED
@@ -2175,6 +2175,7 @@ async function readResponseBody(response) {
2175
2175
  }
2176
2176
 
2177
2177
  // src/platform/streaming/PhoenixChannelsTransport.ts
2178
+ var import_band_sdk_core = require("@band-ai/band-sdk-core");
2178
2179
  var PhoenixChannelsTransport = class {
2179
2180
  socket;
2180
2181
  agentId;
@@ -2441,7 +2442,7 @@ var PhoenixChannelsTransport = class {
2441
2442
  if (!this.agentId) {
2442
2443
  return;
2443
2444
  }
2444
- await this.join(`agent_control:${this.agentId}`, {
2445
+ await this.join((0, import_band_sdk_core.agentControlTopic)(this.agentId), {
2445
2446
  supersede: (payload) => {
2446
2447
  const reason = parseSupersedeDisconnectReason(payload);
2447
2448
  if (!reason) {
@@ -2543,6 +2544,7 @@ function getSocketChannelCount(socket) {
2543
2544
  // src/platform/BandLink.ts
2544
2545
  init_protocols();
2545
2546
  var import_rest_client = require("@band-ai/rest-client");
2547
+ var import_band_sdk_core2 = require("@band-ai/band-sdk-core");
2546
2548
  var DEFAULT_WS_URL = "wss://app.band.ai/api/v1/socket";
2547
2549
  function deriveDefaultRestUrl(wsUrl) {
2548
2550
  const parsed = new URL(wsUrl);
@@ -2551,8 +2553,8 @@ function deriveDefaultRestUrl(wsUrl) {
2551
2553
  }
2552
2554
  function roomTopics(roomId) {
2553
2555
  return {
2554
- chat: `chat_room:${roomId}`,
2555
- participants: `room_participants:${roomId}`
2556
+ chat: (0, import_band_sdk_core2.chatRoomTopic)(roomId),
2557
+ participants: (0, import_band_sdk_core2.roomParticipantsTopic)(roomId)
2556
2558
  };
2557
2559
  }
2558
2560
  function toPlatformMessage(roomId, message) {
@@ -2672,7 +2674,7 @@ var BandLink = class {
2672
2674
  this.eventQueue.push(event);
2673
2675
  }
2674
2676
  async subscribeAgentRooms() {
2675
- await this.transport.join(`agent_rooms:${this.agentId}`, {
2677
+ await this.transport.join((0, import_band_sdk_core2.agentRoomsTopic)(this.agentId), {
2676
2678
  room_added: (payload) => {
2677
2679
  const roomId = typeof payload.id === "string" ? payload.id : "";
2678
2680
  this.emit("room_added", payload, roomId);
@@ -2725,7 +2727,7 @@ var BandLink = class {
2725
2727
  }
2726
2728
  async subscribeAgentContacts() {
2727
2729
  assertCapability(this.capabilities, "contacts", "Contacts streaming");
2728
- await this.transport.join(`agent_contacts:${this.agentId}`, {
2730
+ await this.transport.join((0, import_band_sdk_core2.agentContactsTopic)(this.agentId), {
2729
2731
  contact_request_received: (payload) => {
2730
2732
  this.emit("contact_request_received", payload, null);
2731
2733
  },
@@ -2741,7 +2743,7 @@ var BandLink = class {
2741
2743
  });
2742
2744
  }
2743
2745
  async unsubscribeAgentContacts() {
2744
- await this.transport.leave(`agent_contacts:${this.agentId}`);
2746
+ await this.transport.leave((0, import_band_sdk_core2.agentContactsTopic)(this.agentId));
2745
2747
  }
2746
2748
  async nextEvent(signal) {
2747
2749
  if (this.terminalDisconnectError) {
@@ -3213,7 +3215,7 @@ init_errors();
3213
3215
 
3214
3216
  // src/runtime/tools/AgentTools.ts
3215
3217
  init_errors();
3216
- var import_band_sdk_core = require("@band-ai/band-sdk-core");
3218
+ var import_band_sdk_core3 = require("@band-ai/band-sdk-core");
3217
3219
 
3218
3220
  // src/runtime/types.ts
3219
3221
  var HistoryProvider = class {
@@ -3360,7 +3362,7 @@ var AgentTools = class {
3360
3362
  constructor(options) {
3361
3363
  this.roomId = options.roomId;
3362
3364
  this.rest = options.rest;
3363
- this.roster = options.roster ?? new import_band_sdk_core.ParticipantRoster();
3365
+ this.roster = options.roster ?? new import_band_sdk_core3.ParticipantRoster();
3364
3366
  this.logger = options.logger ?? new NoopLogger();
3365
3367
  this.capabilities = {
3366
3368
  ...DEFAULT_AGENT_TOOLS_CAPABILITIES,
@@ -4185,7 +4187,7 @@ function validateToolArgs(toolName, args) {
4185
4187
  }
4186
4188
 
4187
4189
  // src/runtime/ExecutionContext.ts
4188
- var import_band_sdk_core2 = require("@band-ai/band-sdk-core");
4190
+ var import_band_sdk_core4 = require("@band-ai/band-sdk-core");
4189
4191
  var DEDUP_CACHE_MAX = 500;
4190
4192
  var ExecutionContext = class {
4191
4193
  roomId;
@@ -4197,7 +4199,7 @@ var ExecutionContext = class {
4197
4199
  history = [];
4198
4200
  messageIds = /* @__PURE__ */ new Set();
4199
4201
  dedupCache = /* @__PURE__ */ new Map();
4200
- roster = new import_band_sdk_core2.ParticipantRoster();
4202
+ roster = new import_band_sdk_core4.ParticipantRoster();
4201
4203
  tools;
4202
4204
  adapterTools;
4203
4205
  participantsMessage = null;
@@ -4215,7 +4217,7 @@ var ExecutionContext = class {
4215
4217
  this.enableContextCache = options.enableContextCache ?? true;
4216
4218
  this.contextCacheTtlMs = Math.max(0, (options.contextCacheTtlSeconds ?? 300) * 1e3);
4217
4219
  this.enableContextHydration = options.enableContextHydration ?? true;
4218
- this.retryTrackerInstance = new import_band_sdk_core2.RetryTracker(options.maxMessageRetries ?? 1);
4220
+ this.retryTrackerInstance = new import_band_sdk_core4.RetryTracker(options.maxMessageRetries ?? 1);
4219
4221
  this.tools = new AgentTools({
4220
4222
  roomId: this.roomId,
4221
4223
  rest: this.link.rest,
@@ -4471,7 +4473,7 @@ var ExecutionContext = class {
4471
4473
 
4472
4474
  // src/runtime/rooms/RoomPresence.ts
4473
4475
  init_errors();
4474
- var import_band_sdk_core3 = require("@band-ai/band-sdk-core");
4476
+ var import_band_sdk_core5 = require("@band-ai/band-sdk-core");
4475
4477
 
4476
4478
  // src/runtime/rooms/subscriptions.ts
4477
4479
  init_errors();
@@ -4502,7 +4504,7 @@ async function hydrateExistingRooms(options) {
4502
4504
 
4503
4505
  // src/runtime/rooms/RoomPresence.ts
4504
4506
  var RoomPresence = class {
4505
- roster = new import_band_sdk_core3.RoomRoster();
4507
+ roster = new import_band_sdk_core5.RoomRoster();
4506
4508
  onRoomJoined = null;
4507
4509
  onRoomLeft = null;
4508
4510
  onRoomEvent = null;
package/dist/index.js CHANGED
@@ -35,7 +35,7 @@ import {
35
35
  PlatformRuntime,
36
36
  deriveDefaultRestUrl,
37
37
  runWithGracefulShutdown
38
- } from "./chunk-JJF44XWA.js";
38
+ } from "./chunk-U6AFCLYZ.js";
39
39
  import "./chunk-OH6VVVKT.js";
40
40
  import "./chunk-YJ42AZO4.js";
41
41
  import {
package/dist/runtime.cjs CHANGED
@@ -41,11 +41,11 @@ __export(runtime_exports, {
41
41
  MCP_TOOL_PREFIX: () => MCP_TOOL_PREFIX,
42
42
  MEMORY_SECTION: () => MEMORY_SECTION,
43
43
  MEMORY_TOOL_NAMES: () => MEMORY_TOOL_NAMES,
44
- ParticipantRoster: () => import_band_sdk_core4.ParticipantRoster,
44
+ ParticipantRoster: () => import_band_sdk_core6.ParticipantRoster,
45
45
  PlatformRuntime: () => PlatformRuntime,
46
- RetryTracker: () => import_band_sdk_core4.RetryTracker,
46
+ RetryTracker: () => import_band_sdk_core6.RetryTracker,
47
47
  RoomPresence: () => RoomPresence,
48
- RoomRoster: () => import_band_sdk_core4.RoomRoster,
48
+ RoomRoster: () => import_band_sdk_core6.RoomRoster,
49
49
  SYNTHETIC_CONTACT_EVENTS_SENDER_ID: () => SYNTHETIC_CONTACT_EVENTS_SENDER_ID,
50
50
  SYNTHETIC_CONTACT_EVENTS_SENDER_NAME: () => SYNTHETIC_CONTACT_EVENTS_SENDER_NAME,
51
51
  SYNTHETIC_SENDER_TYPE: () => SYNTHETIC_SENDER_TYPE,
@@ -4435,6 +4435,7 @@ async function readResponseBody(response) {
4435
4435
  }
4436
4436
 
4437
4437
  // src/platform/streaming/PhoenixChannelsTransport.ts
4438
+ var import_band_sdk_core4 = require("@band-ai/band-sdk-core");
4438
4439
  var PhoenixChannelsTransport = class {
4439
4440
  socket;
4440
4441
  agentId;
@@ -4701,7 +4702,7 @@ var PhoenixChannelsTransport = class {
4701
4702
  if (!this.agentId) {
4702
4703
  return;
4703
4704
  }
4704
- await this.join(`agent_control:${this.agentId}`, {
4705
+ await this.join((0, import_band_sdk_core4.agentControlTopic)(this.agentId), {
4705
4706
  supersede: (payload) => {
4706
4707
  const reason = parseSupersedeDisconnectReason(payload);
4707
4708
  if (!reason) {
@@ -4802,6 +4803,7 @@ function getSocketChannelCount(socket) {
4802
4803
 
4803
4804
  // src/platform/BandLink.ts
4804
4805
  var import_rest_client = require("@band-ai/rest-client");
4806
+ var import_band_sdk_core5 = require("@band-ai/band-sdk-core");
4805
4807
  var DEFAULT_WS_URL = "wss://app.band.ai/api/v1/socket";
4806
4808
  function deriveDefaultRestUrl(wsUrl) {
4807
4809
  const parsed = new URL(wsUrl);
@@ -4810,8 +4812,8 @@ function deriveDefaultRestUrl(wsUrl) {
4810
4812
  }
4811
4813
  function roomTopics(roomId) {
4812
4814
  return {
4813
- chat: `chat_room:${roomId}`,
4814
- participants: `room_participants:${roomId}`
4815
+ chat: (0, import_band_sdk_core5.chatRoomTopic)(roomId),
4816
+ participants: (0, import_band_sdk_core5.roomParticipantsTopic)(roomId)
4815
4817
  };
4816
4818
  }
4817
4819
  function toPlatformMessage(roomId, message) {
@@ -4931,7 +4933,7 @@ var BandLink = class {
4931
4933
  this.eventQueue.push(event);
4932
4934
  }
4933
4935
  async subscribeAgentRooms() {
4934
- await this.transport.join(`agent_rooms:${this.agentId}`, {
4936
+ await this.transport.join((0, import_band_sdk_core5.agentRoomsTopic)(this.agentId), {
4935
4937
  room_added: (payload) => {
4936
4938
  const roomId = typeof payload.id === "string" ? payload.id : "";
4937
4939
  this.emit("room_added", payload, roomId);
@@ -4984,7 +4986,7 @@ var BandLink = class {
4984
4986
  }
4985
4987
  async subscribeAgentContacts() {
4986
4988
  assertCapability(this.capabilities, "contacts", "Contacts streaming");
4987
- await this.transport.join(`agent_contacts:${this.agentId}`, {
4989
+ await this.transport.join((0, import_band_sdk_core5.agentContactsTopic)(this.agentId), {
4988
4990
  contact_request_received: (payload) => {
4989
4991
  this.emit("contact_request_received", payload, null);
4990
4992
  },
@@ -5000,7 +5002,7 @@ var BandLink = class {
5000
5002
  });
5001
5003
  }
5002
5004
  async unsubscribeAgentContacts() {
5003
- await this.transport.leave(`agent_contacts:${this.agentId}`);
5005
+ await this.transport.leave((0, import_band_sdk_core5.agentContactsTopic)(this.agentId));
5004
5006
  }
5005
5007
  async nextEvent(signal) {
5006
5008
  if (this.terminalDisconnectError) {
@@ -5488,7 +5490,7 @@ var PlatformRuntime = class {
5488
5490
  };
5489
5491
 
5490
5492
  // src/runtime/index.ts
5491
- var import_band_sdk_core4 = require("@band-ai/band-sdk-core");
5493
+ var import_band_sdk_core6 = require("@band-ai/band-sdk-core");
5492
5494
 
5493
5495
  // src/runtime/prompts/base.ts
5494
5496
  var ENVIRONMENT_SECTION = `
package/dist/runtime.js CHANGED
@@ -11,7 +11,7 @@ import {
11
11
  PlatformRuntime,
12
12
  RoomPresence,
13
13
  runWithGracefulShutdown
14
- } from "./chunk-JJF44XWA.js";
14
+ } from "./chunk-U6AFCLYZ.js";
15
15
  import {
16
16
  HistoryProvider,
17
17
  SYNTHETIC_CONTACT_EVENTS_SENDER_ID,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@band-ai/sdk",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "Band TypeScript SDK core runtime",
5
5
  "license": "MIT",
6
6
  "repository": {