@opperai/agents 0.4.0 → 0.5.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/dist/index.cjs +33 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -1
- package/dist/index.d.ts +17 -1
- package/dist/index.js +33 -7
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1028,7 +1028,7 @@ var BaseAgent = class {
|
|
|
1028
1028
|
}
|
|
1029
1029
|
this.opperConfig = {
|
|
1030
1030
|
apiKey: config.opperConfig?.apiKey ?? process.env["OPPER_API_KEY"],
|
|
1031
|
-
baseUrl: config.opperConfig?.baseUrl,
|
|
1031
|
+
baseUrl: config.opperConfig?.baseUrl ?? process.env["OPPER_BASE_URL"],
|
|
1032
1032
|
...config.opperConfig
|
|
1033
1033
|
};
|
|
1034
1034
|
this.memory = this.initializeMemory(config);
|
|
@@ -1291,6 +1291,7 @@ var BaseAgent = class {
|
|
|
1291
1291
|
* @returns Tool execution result
|
|
1292
1292
|
*/
|
|
1293
1293
|
async executeTool(toolName, input, context, options) {
|
|
1294
|
+
const toolCallId = crypto.randomUUID();
|
|
1294
1295
|
const tool2 = this.tools.get(toolName);
|
|
1295
1296
|
if (!tool2) {
|
|
1296
1297
|
const failure = exports.ToolResultFactory.failure(
|
|
@@ -1299,6 +1300,7 @@ var BaseAgent = class {
|
|
|
1299
1300
|
);
|
|
1300
1301
|
const timestamp = Date.now();
|
|
1301
1302
|
context.recordToolCall({
|
|
1303
|
+
id: toolCallId,
|
|
1302
1304
|
toolName,
|
|
1303
1305
|
input,
|
|
1304
1306
|
success: false,
|
|
@@ -1310,7 +1312,8 @@ var BaseAgent = class {
|
|
|
1310
1312
|
await this.triggerHook(HookEvents.ToolError, {
|
|
1311
1313
|
context,
|
|
1312
1314
|
toolName,
|
|
1313
|
-
error: failure.error
|
|
1315
|
+
error: failure.error,
|
|
1316
|
+
toolCallId
|
|
1314
1317
|
});
|
|
1315
1318
|
return failure;
|
|
1316
1319
|
}
|
|
@@ -1325,11 +1328,13 @@ var BaseAgent = class {
|
|
|
1325
1328
|
await this.triggerHook(HookEvents.BeforeTool, {
|
|
1326
1329
|
context,
|
|
1327
1330
|
tool: tool2,
|
|
1328
|
-
input
|
|
1331
|
+
input,
|
|
1332
|
+
toolCallId
|
|
1329
1333
|
});
|
|
1330
1334
|
const result = await tool2.execute(input, executionContext);
|
|
1331
1335
|
const finishedAt = Date.now();
|
|
1332
1336
|
const record = context.recordToolCall({
|
|
1337
|
+
id: toolCallId,
|
|
1333
1338
|
toolName: tool2.name,
|
|
1334
1339
|
input,
|
|
1335
1340
|
...result.success && { output: result.output },
|
|
@@ -1341,6 +1346,15 @@ var BaseAgent = class {
|
|
|
1341
1346
|
finishedAt,
|
|
1342
1347
|
metadata: {}
|
|
1343
1348
|
});
|
|
1349
|
+
if (!result.success) {
|
|
1350
|
+
await this.triggerHook(HookEvents.ToolError, {
|
|
1351
|
+
context,
|
|
1352
|
+
tool: tool2,
|
|
1353
|
+
toolName: tool2.name,
|
|
1354
|
+
error: result.error,
|
|
1355
|
+
toolCallId
|
|
1356
|
+
});
|
|
1357
|
+
}
|
|
1344
1358
|
await this.triggerHook(HookEvents.AfterTool, {
|
|
1345
1359
|
context,
|
|
1346
1360
|
tool: tool2,
|
|
@@ -1358,6 +1372,7 @@ var BaseAgent = class {
|
|
|
1358
1372
|
}
|
|
1359
1373
|
);
|
|
1360
1374
|
const record = context.recordToolCall({
|
|
1375
|
+
id: toolCallId,
|
|
1361
1376
|
toolName: tool2.name,
|
|
1362
1377
|
input,
|
|
1363
1378
|
success: false,
|
|
@@ -1370,7 +1385,8 @@ var BaseAgent = class {
|
|
|
1370
1385
|
context,
|
|
1371
1386
|
tool: tool2,
|
|
1372
1387
|
toolName: tool2.name,
|
|
1373
|
-
error
|
|
1388
|
+
error,
|
|
1389
|
+
toolCallId
|
|
1374
1390
|
});
|
|
1375
1391
|
await this.triggerHook(HookEvents.AfterTool, {
|
|
1376
1392
|
context,
|
|
@@ -1639,7 +1655,7 @@ var mergeSchemaDefaults = (schema, value) => {
|
|
|
1639
1655
|
|
|
1640
1656
|
// package.json
|
|
1641
1657
|
var package_default = {
|
|
1642
|
-
version: "0.
|
|
1658
|
+
version: "0.5.0"};
|
|
1643
1659
|
|
|
1644
1660
|
// src/utils/version.ts
|
|
1645
1661
|
var SDK_NAME = "@opperai/agents";
|
|
@@ -1687,7 +1703,8 @@ var OpperClient = class {
|
|
|
1687
1703
|
constructor(apiKey, options = {}) {
|
|
1688
1704
|
this.client = new opperai.Opper({
|
|
1689
1705
|
httpBearer: apiKey ?? process.env["OPPER_HTTP_BEARER"] ?? "",
|
|
1690
|
-
userAgent: getUserAgent()
|
|
1706
|
+
userAgent: getUserAgent(),
|
|
1707
|
+
...options.baseUrl && { serverURL: options.baseUrl }
|
|
1691
1708
|
});
|
|
1692
1709
|
this.logger = options.logger ?? getDefaultLogger();
|
|
1693
1710
|
this.retryConfig = {
|
|
@@ -2132,7 +2149,8 @@ var Agent = class extends BaseAgent {
|
|
|
2132
2149
|
}
|
|
2133
2150
|
}
|
|
2134
2151
|
this.opperClient = config.opperClient ?? new OpperClient(this.opperConfig.apiKey, {
|
|
2135
|
-
logger: this.logger
|
|
2152
|
+
logger: this.logger,
|
|
2153
|
+
...this.opperConfig.baseUrl && { baseUrl: this.opperConfig.baseUrl }
|
|
2136
2154
|
});
|
|
2137
2155
|
}
|
|
2138
2156
|
/**
|
|
@@ -3400,6 +3418,11 @@ var mcp = (...configs) => {
|
|
|
3400
3418
|
|
|
3401
3419
|
// src/utils/tool-decorators.ts
|
|
3402
3420
|
init_tool();
|
|
3421
|
+
var isToolResult = (value) => {
|
|
3422
|
+
if (typeof value !== "object" || value === null) return false;
|
|
3423
|
+
const obj = value;
|
|
3424
|
+
return typeof obj["success"] === "boolean" && typeof obj["toolName"] === "string" && ("output" in obj || "error" in obj);
|
|
3425
|
+
};
|
|
3403
3426
|
var reflectWithMetadata = Reflect;
|
|
3404
3427
|
var ReflectMetadata = {
|
|
3405
3428
|
define: (metadataKey, metadataValue, target, propertyKey) => {
|
|
@@ -3529,6 +3552,9 @@ function createFunctionTool(fn, options = {}) {
|
|
|
3529
3552
|
} else {
|
|
3530
3553
|
result = await Promise.resolve(fn(input, context));
|
|
3531
3554
|
}
|
|
3555
|
+
if (isToolResult(result)) {
|
|
3556
|
+
return result;
|
|
3557
|
+
}
|
|
3532
3558
|
return exports.ToolResultFactory.success(name, result, {
|
|
3533
3559
|
startedAt,
|
|
3534
3560
|
finishedAt: Date.now(),
|