@friskai/frisk-js 0.2.8 → 0.2.10
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/claude/index.js +86 -12
- package/dist/adapters/claude/index.js.map +7 -7
- package/dist/adapters/langchain/frisk-callback-handler.d.ts +1 -2
- package/dist/adapters/langchain/frisk-callback-handler.d.ts.map +1 -1
- package/dist/adapters/langchain/index.js +899 -870
- package/dist/adapters/langchain/index.js.map +17 -17
- package/dist/core/frisk-session.d.ts +24 -1
- package/dist/core/frisk-session.d.ts.map +1 -1
- package/dist/core/tool-call-span.d.ts +1 -2
- package/dist/core/tool-call-span.d.ts.map +1 -1
- package/dist/generated/sdk-meta.d.ts +1 -1
- package/dist/generated/sdk-meta.d.ts.map +1 -1
- package/dist/index.js +84 -10
- package/dist/index.js.map +7 -7
- package/dist/telemetry/constants.d.ts +3 -1
- package/dist/telemetry/constants.d.ts.map +1 -1
- package/native/frisk-js.darwin-arm64.node +0 -0
- package/native/frisk-js.darwin-x64.node +0 -0
- package/native/frisk-js.linux-arm64-gnu.node +0 -0
- package/native/frisk-js.linux-arm64-musl.node +0 -0
- package/native/frisk-js.linux-x64-gnu.node +0 -0
- package/native/frisk-js.linux-x64-musl.node +0 -0
- package/native/frisk-js.win32-arm64-msvc.node +0 -0
- package/native/frisk-js.win32-x64-msvc.node +0 -0
- package/native/index.cjs +52 -52
- package/package.json +1 -1
|
@@ -43867,9 +43867,11 @@ var ATTRIBUTE_NAME_DECISION_OUTCOME = "frisk.decision.outcome";
|
|
|
43867
43867
|
var ATTRIBUTE_NAME_DECISION_REASON = "frisk.decision.reason";
|
|
43868
43868
|
var ATTRIBUTE_NAME_ERROR_TYPE = "error.type";
|
|
43869
43869
|
var ATTRIBUTE_NAME_ERROR_MESSAGE = "error.message";
|
|
43870
|
-
var ATTRIBUTE_NAME_LATENCY_NS = "latency_ns";
|
|
43871
43870
|
var ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS = "frisk.tool_call.is_success";
|
|
43872
43871
|
var ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR = "frisk.tool_call.is_error";
|
|
43872
|
+
var ATTRIBUTE_NAME_TOOL_CALL_COUNT = "frisk.tool_calls.count";
|
|
43873
|
+
var ATTRIBUTE_NAME_TOOL_CALL_ERROR_COUNT = "frisk.tool_calls.error_count";
|
|
43874
|
+
var ATTRIBUTE_NAME_TOOL_CALL_SEQUENCE_NUMBER = "frisk.tool_call.sequence_number";
|
|
43873
43875
|
// src/telemetry/tracing-manager.ts
|
|
43874
43876
|
var import_grpc_js = __toESM(require_src3(), 1);
|
|
43875
43877
|
var import_exporter_trace_otlp_grpc = __toESM(require_src12(), 1);
|
|
@@ -44162,6 +44164,9 @@ class AccessTokenProvider {
|
|
|
44162
44164
|
}
|
|
44163
44165
|
}
|
|
44164
44166
|
|
|
44167
|
+
// src/core/frisk-session.ts
|
|
44168
|
+
var import_api2 = __toESM(require_src4(), 1);
|
|
44169
|
+
|
|
44165
44170
|
// ../../node_modules/zod/v4/core/core.js
|
|
44166
44171
|
var NEVER = Object.freeze({
|
|
44167
44172
|
status: "aborted"
|
|
@@ -48511,7 +48516,6 @@ class ToolCallSpan {
|
|
|
48511
48516
|
tracer;
|
|
48512
48517
|
redaction;
|
|
48513
48518
|
_span = null;
|
|
48514
|
-
_startTimeNs = null;
|
|
48515
48519
|
_traceContextCarrier = null;
|
|
48516
48520
|
sessionId;
|
|
48517
48521
|
friskToolVersionId;
|
|
@@ -48592,7 +48596,6 @@ class ToolCallSpan {
|
|
|
48592
48596
|
}
|
|
48593
48597
|
enter() {
|
|
48594
48598
|
const parentContext = this.parent ? import_api.trace.setSpan(import_api.context.active(), this.parent) : import_api.context.active();
|
|
48595
|
-
this._startTimeNs = process.hrtime.bigint();
|
|
48596
48599
|
const redactedToolArgsResult = this.adapter.serializeToolArgs(removeLlmReasoningArg(this.toolCall.args), { redact: this.redaction.redactToolArgs });
|
|
48597
48600
|
const redactedAgentStateResult = this.adapter.serializeAgentState(this.agentState, { redact: this.redaction.redactAgentState });
|
|
48598
48601
|
this._span = this.tracer.startSpan(SPAN_NAME_DECIDE_TOOL_CALL, {
|
|
@@ -48618,11 +48621,6 @@ class ToolCallSpan {
|
|
|
48618
48621
|
if (!this.span) {
|
|
48619
48622
|
return;
|
|
48620
48623
|
}
|
|
48621
|
-
if (this._startTimeNs !== null) {
|
|
48622
|
-
const endTimeNs = process.hrtime.bigint();
|
|
48623
|
-
const latencyNs = endTimeNs - this._startTimeNs;
|
|
48624
|
-
this.setAttribute(ATTRIBUTE_NAME_LATENCY_NS, Number(latencyNs));
|
|
48625
|
-
}
|
|
48626
48624
|
this.span.end();
|
|
48627
48625
|
}
|
|
48628
48626
|
}
|
|
@@ -48646,6 +48644,9 @@ class FriskSession {
|
|
|
48646
48644
|
logger;
|
|
48647
48645
|
_rootRunId = null;
|
|
48648
48646
|
_isTracing = false;
|
|
48647
|
+
toolCallSequenceNumber = 0;
|
|
48648
|
+
toolCallSequenceGenerator = this.createToolCallSequenceGenerator();
|
|
48649
|
+
toolCallErrorCount = 0;
|
|
48649
48650
|
constructor({ frisk, redact, tracer, logging }) {
|
|
48650
48651
|
const sessionId = this.constructor.generateSessionId();
|
|
48651
48652
|
this.logger = deriveSdkLogger(logging, {
|
|
@@ -48668,6 +48669,63 @@ class FriskSession {
|
|
|
48668
48669
|
get rootRunId() {
|
|
48669
48670
|
return this._rootRunId;
|
|
48670
48671
|
}
|
|
48672
|
+
async createToolCallSpan({
|
|
48673
|
+
name,
|
|
48674
|
+
args: toolArgsInput
|
|
48675
|
+
}) {
|
|
48676
|
+
const toolArgs = this.validateToolArgs(toolArgsInput);
|
|
48677
|
+
const redactedToolArgsResult = this.frisk.adapter?.serializeToolArgs(removeLlmReasoningArg(toolArgs), { redact: this.redaction.redactToolArgs }) ?? {
|
|
48678
|
+
value: "{}",
|
|
48679
|
+
redactedPaths: []
|
|
48680
|
+
};
|
|
48681
|
+
const sessionSpan = this.rootSpan;
|
|
48682
|
+
const parentContext = sessionSpan ? import_api2.trace.setSpan(import_api2.context.active(), sessionSpan) : import_api2.context.active();
|
|
48683
|
+
const spanAttributes = {
|
|
48684
|
+
[ATTRIBUTE_NAME_SESSION_ID]: this.id,
|
|
48685
|
+
[ATTRIBUTE_NAME_TOOL_NAME]: name,
|
|
48686
|
+
[ATTRIBUTE_NAME_TOOL_ARGS_JSON]: redactedToolArgsResult.value,
|
|
48687
|
+
[ATTRIBUTE_NAME_TOOL_ARGS_REDACTED_PATHS_JSON]: JSON.stringify(redactedToolArgsResult.redactedPaths),
|
|
48688
|
+
[ATTRIBUTE_NAME_TOOL_CALL_SEQUENCE_NUMBER]: this.toolCallSequenceGenerator.next().value
|
|
48689
|
+
};
|
|
48690
|
+
await this.frisk.toolRegistrationComplete;
|
|
48691
|
+
const registeredTool = this.frisk.getRegisteredTool(name);
|
|
48692
|
+
if (registeredTool) {
|
|
48693
|
+
spanAttributes[ATTRIBUTE_NAME_FRISK_TOOL_ID] = registeredTool.id;
|
|
48694
|
+
spanAttributes[ATTRIBUTE_NAME_FRISK_TOOL_VERSION_ID] = registeredTool.versionId;
|
|
48695
|
+
}
|
|
48696
|
+
const span = this.getTracer().startSpan(SPAN_NAME_OBSERVE_TOOL_CALL, {
|
|
48697
|
+
attributes: spanAttributes
|
|
48698
|
+
}, parentContext);
|
|
48699
|
+
return span;
|
|
48700
|
+
}
|
|
48701
|
+
closeToolCallSpan({
|
|
48702
|
+
toolCallId,
|
|
48703
|
+
span,
|
|
48704
|
+
err,
|
|
48705
|
+
status
|
|
48706
|
+
}) {
|
|
48707
|
+
if (toolCallId) {
|
|
48708
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_ID, toolCallId);
|
|
48709
|
+
}
|
|
48710
|
+
if (status === "error" /* Error */ || !!err) {
|
|
48711
|
+
this.incrementToolCallErrors();
|
|
48712
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR, true);
|
|
48713
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS, false);
|
|
48714
|
+
} else if (status === "success" /* Success */) {
|
|
48715
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS, true);
|
|
48716
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR, false);
|
|
48717
|
+
}
|
|
48718
|
+
if (err && err instanceof Error) {
|
|
48719
|
+
span.setAttribute(ATTRIBUTE_NAME_ERROR_MESSAGE, `${err}`);
|
|
48720
|
+
span.setAttribute(ATTRIBUTE_NAME_ERROR_TYPE, `${err.constructor.name}`);
|
|
48721
|
+
}
|
|
48722
|
+
span.end();
|
|
48723
|
+
}
|
|
48724
|
+
validateToolArgs(parsedToolArgs) {
|
|
48725
|
+
const isPlainObject2 = typeof parsedToolArgs === "object" && parsedToolArgs !== null && !Array.isArray(parsedToolArgs) && (Object.getPrototypeOf(parsedToolArgs) === Object.prototype || Object.getPrototypeOf(parsedToolArgs) === null);
|
|
48726
|
+
const toolArgs = isPlainObject2 ? parsedToolArgs : {};
|
|
48727
|
+
return toolArgs;
|
|
48728
|
+
}
|
|
48671
48729
|
decideToolCall({
|
|
48672
48730
|
toolCall,
|
|
48673
48731
|
agentState
|
|
@@ -48724,6 +48782,20 @@ class FriskSession {
|
|
|
48724
48782
|
}
|
|
48725
48783
|
});
|
|
48726
48784
|
}
|
|
48785
|
+
*createToolCallSequenceGenerator() {
|
|
48786
|
+
while (true) {
|
|
48787
|
+
yield this.toolCallSequenceNumber++;
|
|
48788
|
+
}
|
|
48789
|
+
}
|
|
48790
|
+
getToolCallCount() {
|
|
48791
|
+
return this.toolCallSequenceNumber;
|
|
48792
|
+
}
|
|
48793
|
+
incrementToolCallErrors() {
|
|
48794
|
+
this.toolCallErrorCount += 1;
|
|
48795
|
+
}
|
|
48796
|
+
getToolCallErrorCount() {
|
|
48797
|
+
return this.toolCallErrorCount;
|
|
48798
|
+
}
|
|
48727
48799
|
initTracing({ runId, inputs }) {
|
|
48728
48800
|
this._rootRunId = runId;
|
|
48729
48801
|
this._isTracing = true;
|
|
@@ -48739,6 +48811,8 @@ class FriskSession {
|
|
|
48739
48811
|
}
|
|
48740
48812
|
endTracing() {
|
|
48741
48813
|
if (this._rootSpan) {
|
|
48814
|
+
this._rootSpan.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_COUNT, this.getToolCallCount());
|
|
48815
|
+
this._rootSpan.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_ERROR_COUNT, this.getToolCallErrorCount());
|
|
48742
48816
|
this._rootSpan.end();
|
|
48743
48817
|
}
|
|
48744
48818
|
this._isTracing = false;
|
|
@@ -48793,7 +48867,7 @@ import { fileURLToPath } from "node:url";
|
|
|
48793
48867
|
|
|
48794
48868
|
// src/generated/sdk-meta.ts
|
|
48795
48869
|
var SDK_NAME = "@friskai/frisk-js";
|
|
48796
|
-
var SDK_VERSION = "0.2.
|
|
48870
|
+
var SDK_VERSION = "0.2.10";
|
|
48797
48871
|
|
|
48798
48872
|
// src/core/sdk-attributes/read-sdk-meta.ts
|
|
48799
48873
|
function getSdkMeta() {
|
|
@@ -51153,7 +51227,7 @@ var require_code2 = __commonJS2((exports) => {
|
|
|
51153
51227
|
return allSchemaProperties(schemaMap).filter((p) => !(0, util_1.alwaysValidSchema)(it, schemaMap[p]));
|
|
51154
51228
|
}
|
|
51155
51229
|
exports.schemaProperties = schemaProperties;
|
|
51156
|
-
function callValidateCode({ schemaCode, data, it: { gen, topSchemaRef, schemaPath, errorPath }, it }, func,
|
|
51230
|
+
function callValidateCode({ schemaCode, data, it: { gen, topSchemaRef, schemaPath, errorPath }, it }, func, context3, passSchema) {
|
|
51157
51231
|
const dataAndSchema = passSchema ? (0, codegen_1._)`${schemaCode}, ${data}, ${topSchemaRef}${schemaPath}` : data;
|
|
51158
51232
|
const valCxt = [
|
|
51159
51233
|
[names_1.default.instancePath, (0, codegen_1.strConcat)(names_1.default.instancePath, errorPath)],
|
|
@@ -51164,7 +51238,7 @@ var require_code2 = __commonJS2((exports) => {
|
|
|
51164
51238
|
if (it.opts.dynamicRef)
|
|
51165
51239
|
valCxt.push([names_1.default.dynamicAnchors, names_1.default.dynamicAnchors]);
|
|
51166
51240
|
const args = (0, codegen_1._)`${dataAndSchema}, ${gen.object(...valCxt)}`;
|
|
51167
|
-
return
|
|
51241
|
+
return context3 !== codegen_1.nil ? (0, codegen_1._)`${func}.call(${context3}, ${args})` : (0, codegen_1._)`${func}(${args})`;
|
|
51168
51242
|
}
|
|
51169
51243
|
exports.callValidateCode = callValidateCode;
|
|
51170
51244
|
var newRegExp = (0, codegen_1._)`new RegExp`;
|
|
@@ -65654,5 +65728,5 @@ export {
|
|
|
65654
65728
|
FriskClaude as Frisk
|
|
65655
65729
|
};
|
|
65656
65730
|
|
|
65657
|
-
//# debugId=
|
|
65731
|
+
//# debugId=5119FBBBF820D1B564756E2164756E21
|
|
65658
65732
|
//# sourceMappingURL=index.js.map
|