@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.
- package/dist/adapters.cjs +275 -78
- package/dist/adapters.d.cts +24 -3
- package/dist/adapters.d.ts +24 -3
- package/dist/adapters.js +271 -77
- package/dist/{chunk-JJF44XWA.js → chunk-U6AFCLYZ.js} +13 -6
- package/dist/{chunk-FYVLUGW7.js → chunk-V5TSWS7P.js} +4 -1
- package/dist/converters.cjs +4 -1
- package/dist/converters.js +1 -1
- package/dist/index.cjs +15 -13
- package/dist/index.js +1 -1
- package/dist/runtime.cjs +12 -10
- package/dist/runtime.js +1 -1
- package/package.json +1 -1
package/dist/converters.cjs
CHANGED
|
@@ -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
|
}
|
package/dist/converters.js
CHANGED
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(
|
|
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:
|
|
2555
|
-
participants:
|
|
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(
|
|
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(
|
|
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(
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
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: () =>
|
|
44
|
+
ParticipantRoster: () => import_band_sdk_core6.ParticipantRoster,
|
|
45
45
|
PlatformRuntime: () => PlatformRuntime,
|
|
46
|
-
RetryTracker: () =>
|
|
46
|
+
RetryTracker: () => import_band_sdk_core6.RetryTracker,
|
|
47
47
|
RoomPresence: () => RoomPresence,
|
|
48
|
-
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(
|
|
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:
|
|
4814
|
-
participants:
|
|
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(
|
|
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(
|
|
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(
|
|
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
|
|
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