@letta-ai/letta-agent-sdk 0.5.8 → 0.6.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.
- package/README.md +19 -0
- package/dist/app-server-session.d.ts +3 -2
- package/dist/app-server-session.d.ts.map +1 -1
- package/dist/client-entry.js +41 -8
- package/dist/client-entry.js.map +5 -5
- package/dist/cloud-session.d.ts.map +1 -1
- package/dist/index.js +42 -9
- package/dist/index.js.map +6 -6
- package/dist/types.d.ts +13 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/validation.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/app-server-session.ts +16 -2
- package/src/cloud-session.ts +4 -2
- package/src/types.ts +23 -0
- package/src/validation.ts +39 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-session.d.ts","sourceRoot":"","sources":["../src/cloud-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAgChD,OAAO,EACL,uBAAuB,EAIvB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAEV,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAI5B,MAAM,YAAY,CAAC;AAqEpB;;;;;GAKG;AACH,qBAAa,+BAAgC,SAAQ,KAAK;IAItD,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM;IAJjC,QAAQ,CAAC,IAAI,EAAG,yBAAyB,CAAU;gBAGxC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM;CAOlC;AAED,KAAK,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAiCzE,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAarF;AAkGD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,KAAK,EACb,YAAY,EAAE,kBAAkB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,6BAA6B,GACrC,IAAI,CAKN;AAED,qBAAa,uBAAwB,SAAQ,uBAAuB;IAiBhE,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAlB5B,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,yBAAyB,CAA6B;IAC9D,OAAO,CAAC,2BAA2B,CAA6B;IAChE,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,mBAAmB,CAA+C;IAC1E,OAAO,CAAC,sBAAsB,CAA8B;IAC5D,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,qBAAqB,CAAqB;IAClD,OAAO,CAAC,sCAAsC,CAAqB;IACnE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA2B;IAChE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;gBAG1B,YAAY,EAAE,2BAA2B,EAC1D,IAAI,EAAE,gBAAgB,EACL,SAAS,GAAE,KAAuC;cAY5C,2BAA2B,IAAI,OAAO,CAAC,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"cloud-session.d.ts","sourceRoot":"","sources":["../src/cloud-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAgChD,OAAO,EACL,uBAAuB,EAIvB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAEV,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAI5B,MAAM,YAAY,CAAC;AAqEpB;;;;;GAKG;AACH,qBAAa,+BAAgC,SAAQ,KAAK;IAItD,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM;IAJjC,QAAQ,CAAC,IAAI,EAAG,yBAAyB,CAAU;gBAGxC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM;CAOlC;AAED,KAAK,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAiCzE,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAarF;AAkGD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,KAAK,EACb,YAAY,EAAE,kBAAkB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,6BAA6B,GACrC,IAAI,CAKN;AAED,qBAAa,uBAAwB,SAAQ,uBAAuB;IAiBhE,OAAO,CAAC,QAAQ,CAAC,YAAY;IAE7B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAlB5B,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,yBAAyB,CAA6B;IAC9D,OAAO,CAAC,2BAA2B,CAA6B;IAChE,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,mBAAmB,CAA+C;IAC1E,OAAO,CAAC,sBAAsB,CAA8B;IAC5D,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,qBAAqB,CAAqB;IAClD,OAAO,CAAC,sCAAsC,CAAqB;IACnE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA2B;IAChE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;gBAG1B,YAAY,EAAE,2BAA2B,EAC1D,IAAI,EAAE,gBAAgB,EACL,SAAS,GAAE,KAAuC;cAY5C,2BAA2B,IAAI,OAAO,CAAC,kBAAkB,CAAC;YA6GrE,iBAAiB;cA8BN,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;cAUxC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;cAMjC,WAAW,IAAI,IAAI;cAeb,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxD,OAAO,CAAC,cAAc;YAOR,cAAc;YA8Cd,yBAAyB;YA6CzB,0BAA0B;YAgC1B,qBAAqB;IAenC,OAAO,CAAC,mBAAmB;YAkBb,sBAAsB;YActB,kBAAkB;YAUlB,oBAAoB;YAUpB,2BAA2B;YAc3B,yBAAyB;YAQzB,8BAA8B;YAiC9B,oBAAoB;YA2DpB,qBAAqB;YAcrB,yBAAyB;YA4CzB,uBAAuB;YA4BvB,+BAA+B;IA4B7C,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,yBAAyB;YAMnB,qBAAqB;IAuBnC,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,sBAAsB;CAG/B"}
|
package/dist/index.js
CHANGED
|
@@ -10341,10 +10341,12 @@ class AppServerRuntimeController {
|
|
|
10341
10341
|
client;
|
|
10342
10342
|
options;
|
|
10343
10343
|
clientToolAllowlist;
|
|
10344
|
-
|
|
10344
|
+
clientToolset;
|
|
10345
|
+
constructor(client, options, clientToolAllowlist, clientToolset) {
|
|
10345
10346
|
this.client = client;
|
|
10346
10347
|
this.options = options;
|
|
10347
10348
|
this.clientToolAllowlist = clientToolAllowlist;
|
|
10349
|
+
this.clientToolset = clientToolset;
|
|
10348
10350
|
}
|
|
10349
10351
|
onMessage(handler) {
|
|
10350
10352
|
return this.client.onMessage((message, channel) => {
|
|
@@ -10368,6 +10370,12 @@ class AppServerRuntimeController {
|
|
|
10368
10370
|
if (this.clientToolAllowlist !== undefined) {
|
|
10369
10371
|
payload.client_tool_allowlist = [...new Set(this.clientToolAllowlist)];
|
|
10370
10372
|
}
|
|
10373
|
+
if (this.clientToolset !== undefined) {
|
|
10374
|
+
payload.client_toolset = {
|
|
10375
|
+
...this.clientToolset.base !== undefined ? { base: this.clientToolset.base } : {},
|
|
10376
|
+
...this.clientToolset.include !== undefined ? { include: [...new Set(this.clientToolset.include)] } : {}
|
|
10377
|
+
};
|
|
10378
|
+
}
|
|
10371
10379
|
payload.exclude_interactive_tools = true;
|
|
10372
10380
|
this.client.input({
|
|
10373
10381
|
runtime,
|
|
@@ -10508,12 +10516,13 @@ class AppServerSession extends RemoteClientSessionCore {
|
|
|
10508
10516
|
throw new Error(response.error ?? "Failed to start app-server runtime");
|
|
10509
10517
|
}
|
|
10510
10518
|
const tools = agentToolNames(response.agent);
|
|
10511
|
-
const skillSources =
|
|
10519
|
+
const skillSources = options.skillSources;
|
|
10520
|
+
const clientToolset = "toolset" in options ? options.toolset : undefined;
|
|
10512
10521
|
const mcpToolNames = this.mcpBridge?.tools.map((tool) => tool.name) ?? [];
|
|
10513
|
-
const allowedTools = expandMcpToolWildcards(
|
|
10522
|
+
const allowedTools = expandMcpToolWildcards(options.allowedTools, mcpToolNames);
|
|
10514
10523
|
const availableTools = tools === undefined && mcpToolNames.length === 0 ? undefined : [...tools ?? [], ...mcpToolNames];
|
|
10515
10524
|
return {
|
|
10516
|
-
controller: new AppServerRuntimeController(client, this.remoteOptions, allowedTools),
|
|
10525
|
+
controller: new AppServerRuntimeController(client, this.remoteOptions, allowedTools, clientToolset),
|
|
10517
10526
|
runtime: response.runtime,
|
|
10518
10527
|
model: typeof response.agent?.model === "string" ? response.agent.model : "",
|
|
10519
10528
|
modelSettings: objectRecord(response.agent?.model_settings) ?? null,
|
|
@@ -11276,14 +11285,15 @@ class CloudEnvironmentSession extends RemoteClientSessionCore {
|
|
|
11276
11285
|
throw new Error(response.error ?? "Failed to start Cloud status runtime");
|
|
11277
11286
|
}
|
|
11278
11287
|
const tools = agentToolNames(response.agent);
|
|
11279
|
-
const skillSources =
|
|
11288
|
+
const skillSources = options.skillSources;
|
|
11289
|
+
const clientToolset = "toolset" in options ? options.toolset : undefined;
|
|
11280
11290
|
const mcpToolNames = this.mcpBridge?.tools.map((tool) => tool.name) ?? [];
|
|
11281
|
-
const allowedTools = expandMcpToolWildcards(
|
|
11291
|
+
const allowedTools = expandMcpToolWildcards(options.allowedTools, mcpToolNames);
|
|
11282
11292
|
const availableTools = tools === undefined && mcpToolNames.length === 0 ? undefined : [...tools ?? [], ...mcpToolNames];
|
|
11283
11293
|
return {
|
|
11284
11294
|
controller: new AppServerRuntimeController(client, {
|
|
11285
11295
|
requestTimeoutMs: this.cloudOptions.requestTimeoutMs ?? DEFAULT_TURN_TIMEOUT_MS
|
|
11286
|
-
}, allowedTools),
|
|
11296
|
+
}, allowedTools, clientToolset),
|
|
11287
11297
|
runtime: response.runtime,
|
|
11288
11298
|
model: typeof response.agent?.model === "string" ? response.agent.model : "",
|
|
11289
11299
|
modelSettings: response.agent?.model_settings ?? null,
|
|
@@ -11793,6 +11803,15 @@ var VALID_SKILL_SOURCES = [
|
|
|
11793
11803
|
"agent",
|
|
11794
11804
|
"project"
|
|
11795
11805
|
];
|
|
11806
|
+
var VALID_TOOLSET_BASES = [
|
|
11807
|
+
"auto",
|
|
11808
|
+
"codex",
|
|
11809
|
+
"codex_snake",
|
|
11810
|
+
"default",
|
|
11811
|
+
"gemini",
|
|
11812
|
+
"gemini_snake",
|
|
11813
|
+
"none"
|
|
11814
|
+
];
|
|
11796
11815
|
var VALID_REASONING_EFFORTS = [
|
|
11797
11816
|
"none",
|
|
11798
11817
|
"minimal",
|
|
@@ -11853,6 +11872,19 @@ function validateSystemPromptPreset(preset) {
|
|
|
11853
11872
|
throw new Error(`Invalid system prompt preset '${preset}'. ` + `Valid presets: ${validPresets.join(", ")}`);
|
|
11854
11873
|
}
|
|
11855
11874
|
}
|
|
11875
|
+
function validateClientToolset(toolset) {
|
|
11876
|
+
if (toolset === undefined)
|
|
11877
|
+
return;
|
|
11878
|
+
if (!toolset || typeof toolset !== "object" || Array.isArray(toolset)) {
|
|
11879
|
+
throw new Error("Invalid toolset. Expected an object with optional base and include fields.");
|
|
11880
|
+
}
|
|
11881
|
+
if (toolset.base !== undefined && !VALID_TOOLSET_BASES.includes(toolset.base)) {
|
|
11882
|
+
throw new Error(`Invalid toolset.base '${String(toolset.base)}'. Valid values: ${VALID_TOOLSET_BASES.join(", ")}`);
|
|
11883
|
+
}
|
|
11884
|
+
if (toolset.include !== undefined && (!Array.isArray(toolset.include) || toolset.include.some((toolName) => typeof toolName !== "string" || toolName.length === 0))) {
|
|
11885
|
+
throw new Error("Invalid toolset.include. Expected an array of non-empty bundled tool names.");
|
|
11886
|
+
}
|
|
11887
|
+
}
|
|
11856
11888
|
function validateSkillSources(sources) {
|
|
11857
11889
|
if (sources === undefined) {
|
|
11858
11890
|
return;
|
|
@@ -11912,6 +11944,7 @@ function validateMcpServers(servers) {
|
|
|
11912
11944
|
}
|
|
11913
11945
|
}
|
|
11914
11946
|
function validateCreateSessionOptions(options) {
|
|
11947
|
+
validateClientToolset(options.toolset);
|
|
11915
11948
|
validateSkillSources(options.skillSources);
|
|
11916
11949
|
validateMcpServers(options.mcpServers);
|
|
11917
11950
|
validateReasoningEffort(options.reasoningEffort);
|
|
@@ -29465,7 +29498,7 @@ class StreamableHTTPClientTransport {
|
|
|
29465
29498
|
}
|
|
29466
29499
|
var DEFAULT_CLIENT_INFO = {
|
|
29467
29500
|
name: "letta-code",
|
|
29468
|
-
version: "0.
|
|
29501
|
+
version: "0.30.0"
|
|
29469
29502
|
};
|
|
29470
29503
|
async function connectMcpServer(config2, options = {}) {
|
|
29471
29504
|
let client = new Client(options.clientInfo ?? DEFAULT_CLIENT_INFO);
|
|
@@ -29963,4 +29996,4 @@ export {
|
|
|
29963
29996
|
CloudManagedSandboxExpiredError
|
|
29964
29997
|
};
|
|
29965
29998
|
|
|
29966
|
-
//# debugId=
|
|
29999
|
+
//# debugId=CE7ED5A95338695C64756E2164756E21
|