@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
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* FriskSession represents a single session for tracking tool calls and tracing.
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
6
|
+
import { Span, Tracer } from '@opentelemetry/api';
|
|
7
7
|
import { FriskSDKLoggingOptions, SDKLogger } from '../logging';
|
|
8
8
|
import type { DecideToolCallOptions, Frisk } from './frisk';
|
|
9
9
|
import { type ResolvedRedactionOptions } from './redaction-options';
|
|
@@ -19,6 +19,10 @@ interface InitTracingOptions {
|
|
|
19
19
|
runId: string;
|
|
20
20
|
inputs: Record<string, unknown>;
|
|
21
21
|
}
|
|
22
|
+
export declare enum ToolCallStatus {
|
|
23
|
+
Success = "success",
|
|
24
|
+
Error = "error"
|
|
25
|
+
}
|
|
22
26
|
/**
|
|
23
27
|
* A Frisk session for tracking a sequence of tool calls
|
|
24
28
|
*
|
|
@@ -36,6 +40,9 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
|
|
|
36
40
|
protected logger: SDKLogger;
|
|
37
41
|
protected _rootRunId: string | null;
|
|
38
42
|
protected _isTracing: boolean;
|
|
43
|
+
private toolCallSequenceNumber;
|
|
44
|
+
private toolCallSequenceGenerator;
|
|
45
|
+
private toolCallErrorCount;
|
|
39
46
|
constructor({ frisk, redact, tracer, logging }: FriskSessionOptions<TFrisk>);
|
|
40
47
|
get rootSpan(): Span | null;
|
|
41
48
|
getTracer(): Tracer;
|
|
@@ -44,6 +51,18 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
|
|
|
44
51
|
*/
|
|
45
52
|
get isTracing(): boolean;
|
|
46
53
|
get rootRunId(): string | null;
|
|
54
|
+
createToolCallSpan({ name, args: toolArgsInput, }: {
|
|
55
|
+
name: string;
|
|
56
|
+
args: object | any;
|
|
57
|
+
}): Promise<Span>;
|
|
58
|
+
closeToolCallSpan({ toolCallId, // todo! Make this a method on toolcallspan
|
|
59
|
+
span, err, status, }: {
|
|
60
|
+
toolCallId: string | null;
|
|
61
|
+
span: Span;
|
|
62
|
+
status: ToolCallStatus | null;
|
|
63
|
+
err: Error | null;
|
|
64
|
+
}): void;
|
|
65
|
+
private validateToolArgs;
|
|
47
66
|
/**
|
|
48
67
|
* Evaluate a tool call against policies
|
|
49
68
|
*
|
|
@@ -52,6 +71,10 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
|
|
|
52
71
|
* context propagation.
|
|
53
72
|
*/
|
|
54
73
|
decideToolCall({ toolCall, agentState, }: DecideToolCallOptions): ToolCallDecision;
|
|
74
|
+
private createToolCallSequenceGenerator;
|
|
75
|
+
getToolCallCount(): number;
|
|
76
|
+
incrementToolCallErrors(): void;
|
|
77
|
+
getToolCallErrorCount(): number;
|
|
55
78
|
/**
|
|
56
79
|
* Initialize tracing for this session
|
|
57
80
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frisk-session.d.ts","sourceRoot":"","sources":["../../src/core/frisk-session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"frisk-session.d.ts","sourceRoot":"","sources":["../../src/core/frisk-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,7 +53,6 @@ export declare class ToolCallSpan {
|
|
|
53
53
|
private tracer;
|
|
54
54
|
private redaction;
|
|
55
55
|
private _span;
|
|
56
|
-
private _startTimeNs;
|
|
57
56
|
private _traceContextCarrier;
|
|
58
57
|
private sessionId;
|
|
59
58
|
private friskToolVersionId;
|
|
@@ -95,7 +94,7 @@ export declare class ToolCallSpan {
|
|
|
95
94
|
*/
|
|
96
95
|
private enter;
|
|
97
96
|
/**
|
|
98
|
-
* Exit the span context
|
|
97
|
+
* Exit the span context
|
|
99
98
|
*/
|
|
100
99
|
private exit;
|
|
101
100
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-call-span.d.ts","sourceRoot":"","sources":["../../src/core/tool-call-span.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,UAAU,EACV,cAAc,EAGd,KAAK,IAAI,EACT,KAAK,MAAM,EAEZ,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"tool-call-span.d.ts","sourceRoot":"","sources":["../../src/core/tool-call-span.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,UAAU,EACV,cAAc,EAGd,KAAK,IAAI,EACT,KAAK,MAAM,EAEZ,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAmB5D,OAAO,EACL,gBAAgB,EAGjB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AAEhB,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAA0B;IAE3C,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,oBAAoB,CAAmC;IAC/D,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,kBAAkB,CAAe;gBAE7B,EACV,SAAS,EACT,OAAO,EACP,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,MAAM,EACN,MAAM,EACN,MAAM,GACP,EAAE,mBAAmB;IAYtB;;OAEG;IACH,OAAO,KAAK,IAAI,GAKf;IAED;;OAEG;IACH,IAAI,mBAAmB,IAAI,mBAAmB,GAAG,IAAI,CAEpD;IAED;;;;;OAKG;IACH,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,CAAC,GAAG,CAAC;IAS9C;;;;;OAKG;IACG,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAS3E,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI;IAItD,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAI3C;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAiB5C;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAe/B;;OAEG;IACH,OAAO,CAAC,KAAK;IAwDb;;OAEG;IACH,OAAO,CAAC,IAAI;CAOb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-meta.d.ts","sourceRoot":"","sources":["../../src/generated/sdk-meta.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,EAAG,mBAA4B,CAAC;AACrD,eAAO,MAAM,WAAW,EAAG,
|
|
1
|
+
{"version":3,"file":"sdk-meta.d.ts","sourceRoot":"","sources":["../../src/generated/sdk-meta.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,EAAG,mBAA4B,CAAC;AACrD,eAAO,MAAM,WAAW,EAAG,QAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -44103,9 +44103,11 @@ var ATTRIBUTE_NAME_DECISION_OUTCOME = "frisk.decision.outcome";
|
|
|
44103
44103
|
var ATTRIBUTE_NAME_DECISION_REASON = "frisk.decision.reason";
|
|
44104
44104
|
var ATTRIBUTE_NAME_ERROR_TYPE = "error.type";
|
|
44105
44105
|
var ATTRIBUTE_NAME_ERROR_MESSAGE = "error.message";
|
|
44106
|
-
var ATTRIBUTE_NAME_LATENCY_NS = "latency_ns";
|
|
44107
44106
|
var ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS = "frisk.tool_call.is_success";
|
|
44108
44107
|
var ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR = "frisk.tool_call.is_error";
|
|
44108
|
+
var ATTRIBUTE_NAME_TOOL_CALL_COUNT = "frisk.tool_calls.count";
|
|
44109
|
+
var ATTRIBUTE_NAME_TOOL_CALL_ERROR_COUNT = "frisk.tool_calls.error_count";
|
|
44110
|
+
var ATTRIBUTE_NAME_TOOL_CALL_SEQUENCE_NUMBER = "frisk.tool_call.sequence_number";
|
|
44109
44111
|
// src/telemetry/tracing-manager.ts
|
|
44110
44112
|
var import_grpc_js = __toESM(require_src3(), 1);
|
|
44111
44113
|
var import_exporter_trace_otlp_grpc = __toESM(require_src12(), 1);
|
|
@@ -44161,6 +44163,9 @@ class TracingManager {
|
|
|
44161
44163
|
}
|
|
44162
44164
|
}
|
|
44163
44165
|
|
|
44166
|
+
// src/core/frisk-session.ts
|
|
44167
|
+
var import_api2 = __toESM(require_src4(), 1);
|
|
44168
|
+
|
|
44164
44169
|
// ../../node_modules/zod/v4/core/core.js
|
|
44165
44170
|
var NEVER = Object.freeze({
|
|
44166
44171
|
status: "aborted"
|
|
@@ -48510,7 +48515,6 @@ class ToolCallSpan {
|
|
|
48510
48515
|
tracer;
|
|
48511
48516
|
redaction;
|
|
48512
48517
|
_span = null;
|
|
48513
|
-
_startTimeNs = null;
|
|
48514
48518
|
_traceContextCarrier = null;
|
|
48515
48519
|
sessionId;
|
|
48516
48520
|
friskToolVersionId;
|
|
@@ -48591,7 +48595,6 @@ class ToolCallSpan {
|
|
|
48591
48595
|
}
|
|
48592
48596
|
enter() {
|
|
48593
48597
|
const parentContext = this.parent ? import_api.trace.setSpan(import_api.context.active(), this.parent) : import_api.context.active();
|
|
48594
|
-
this._startTimeNs = process.hrtime.bigint();
|
|
48595
48598
|
const redactedToolArgsResult = this.adapter.serializeToolArgs(removeLlmReasoningArg(this.toolCall.args), { redact: this.redaction.redactToolArgs });
|
|
48596
48599
|
const redactedAgentStateResult = this.adapter.serializeAgentState(this.agentState, { redact: this.redaction.redactAgentState });
|
|
48597
48600
|
this._span = this.tracer.startSpan(SPAN_NAME_DECIDE_TOOL_CALL, {
|
|
@@ -48617,11 +48620,6 @@ class ToolCallSpan {
|
|
|
48617
48620
|
if (!this.span) {
|
|
48618
48621
|
return;
|
|
48619
48622
|
}
|
|
48620
|
-
if (this._startTimeNs !== null) {
|
|
48621
|
-
const endTimeNs = process.hrtime.bigint();
|
|
48622
|
-
const latencyNs = endTimeNs - this._startTimeNs;
|
|
48623
|
-
this.setAttribute(ATTRIBUTE_NAME_LATENCY_NS, Number(latencyNs));
|
|
48624
|
-
}
|
|
48625
48623
|
this.span.end();
|
|
48626
48624
|
}
|
|
48627
48625
|
}
|
|
@@ -48645,6 +48643,9 @@ class FriskSession {
|
|
|
48645
48643
|
logger;
|
|
48646
48644
|
_rootRunId = null;
|
|
48647
48645
|
_isTracing = false;
|
|
48646
|
+
toolCallSequenceNumber = 0;
|
|
48647
|
+
toolCallSequenceGenerator = this.createToolCallSequenceGenerator();
|
|
48648
|
+
toolCallErrorCount = 0;
|
|
48648
48649
|
constructor({ frisk, redact, tracer, logging }) {
|
|
48649
48650
|
const sessionId = this.constructor.generateSessionId();
|
|
48650
48651
|
this.logger = deriveSdkLogger(logging, {
|
|
@@ -48667,6 +48668,63 @@ class FriskSession {
|
|
|
48667
48668
|
get rootRunId() {
|
|
48668
48669
|
return this._rootRunId;
|
|
48669
48670
|
}
|
|
48671
|
+
async createToolCallSpan({
|
|
48672
|
+
name,
|
|
48673
|
+
args: toolArgsInput
|
|
48674
|
+
}) {
|
|
48675
|
+
const toolArgs = this.validateToolArgs(toolArgsInput);
|
|
48676
|
+
const redactedToolArgsResult = this.frisk.adapter?.serializeToolArgs(removeLlmReasoningArg(toolArgs), { redact: this.redaction.redactToolArgs }) ?? {
|
|
48677
|
+
value: "{}",
|
|
48678
|
+
redactedPaths: []
|
|
48679
|
+
};
|
|
48680
|
+
const sessionSpan = this.rootSpan;
|
|
48681
|
+
const parentContext = sessionSpan ? import_api2.trace.setSpan(import_api2.context.active(), sessionSpan) : import_api2.context.active();
|
|
48682
|
+
const spanAttributes = {
|
|
48683
|
+
[ATTRIBUTE_NAME_SESSION_ID]: this.id,
|
|
48684
|
+
[ATTRIBUTE_NAME_TOOL_NAME]: name,
|
|
48685
|
+
[ATTRIBUTE_NAME_TOOL_ARGS_JSON]: redactedToolArgsResult.value,
|
|
48686
|
+
[ATTRIBUTE_NAME_TOOL_ARGS_REDACTED_PATHS_JSON]: JSON.stringify(redactedToolArgsResult.redactedPaths),
|
|
48687
|
+
[ATTRIBUTE_NAME_TOOL_CALL_SEQUENCE_NUMBER]: this.toolCallSequenceGenerator.next().value
|
|
48688
|
+
};
|
|
48689
|
+
await this.frisk.toolRegistrationComplete;
|
|
48690
|
+
const registeredTool = this.frisk.getRegisteredTool(name);
|
|
48691
|
+
if (registeredTool) {
|
|
48692
|
+
spanAttributes[ATTRIBUTE_NAME_FRISK_TOOL_ID] = registeredTool.id;
|
|
48693
|
+
spanAttributes[ATTRIBUTE_NAME_FRISK_TOOL_VERSION_ID] = registeredTool.versionId;
|
|
48694
|
+
}
|
|
48695
|
+
const span = this.getTracer().startSpan(SPAN_NAME_OBSERVE_TOOL_CALL, {
|
|
48696
|
+
attributes: spanAttributes
|
|
48697
|
+
}, parentContext);
|
|
48698
|
+
return span;
|
|
48699
|
+
}
|
|
48700
|
+
closeToolCallSpan({
|
|
48701
|
+
toolCallId,
|
|
48702
|
+
span,
|
|
48703
|
+
err,
|
|
48704
|
+
status
|
|
48705
|
+
}) {
|
|
48706
|
+
if (toolCallId) {
|
|
48707
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_ID, toolCallId);
|
|
48708
|
+
}
|
|
48709
|
+
if (status === "error" /* Error */ || !!err) {
|
|
48710
|
+
this.incrementToolCallErrors();
|
|
48711
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR, true);
|
|
48712
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS, false);
|
|
48713
|
+
} else if (status === "success" /* Success */) {
|
|
48714
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_SUCCESS, true);
|
|
48715
|
+
span.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_IS_ERROR, false);
|
|
48716
|
+
}
|
|
48717
|
+
if (err && err instanceof Error) {
|
|
48718
|
+
span.setAttribute(ATTRIBUTE_NAME_ERROR_MESSAGE, `${err}`);
|
|
48719
|
+
span.setAttribute(ATTRIBUTE_NAME_ERROR_TYPE, `${err.constructor.name}`);
|
|
48720
|
+
}
|
|
48721
|
+
span.end();
|
|
48722
|
+
}
|
|
48723
|
+
validateToolArgs(parsedToolArgs) {
|
|
48724
|
+
const isPlainObject2 = typeof parsedToolArgs === "object" && parsedToolArgs !== null && !Array.isArray(parsedToolArgs) && (Object.getPrototypeOf(parsedToolArgs) === Object.prototype || Object.getPrototypeOf(parsedToolArgs) === null);
|
|
48725
|
+
const toolArgs = isPlainObject2 ? parsedToolArgs : {};
|
|
48726
|
+
return toolArgs;
|
|
48727
|
+
}
|
|
48670
48728
|
decideToolCall({
|
|
48671
48729
|
toolCall,
|
|
48672
48730
|
agentState
|
|
@@ -48723,6 +48781,20 @@ class FriskSession {
|
|
|
48723
48781
|
}
|
|
48724
48782
|
});
|
|
48725
48783
|
}
|
|
48784
|
+
*createToolCallSequenceGenerator() {
|
|
48785
|
+
while (true) {
|
|
48786
|
+
yield this.toolCallSequenceNumber++;
|
|
48787
|
+
}
|
|
48788
|
+
}
|
|
48789
|
+
getToolCallCount() {
|
|
48790
|
+
return this.toolCallSequenceNumber;
|
|
48791
|
+
}
|
|
48792
|
+
incrementToolCallErrors() {
|
|
48793
|
+
this.toolCallErrorCount += 1;
|
|
48794
|
+
}
|
|
48795
|
+
getToolCallErrorCount() {
|
|
48796
|
+
return this.toolCallErrorCount;
|
|
48797
|
+
}
|
|
48726
48798
|
initTracing({ runId, inputs }) {
|
|
48727
48799
|
this._rootRunId = runId;
|
|
48728
48800
|
this._isTracing = true;
|
|
@@ -48738,6 +48810,8 @@ class FriskSession {
|
|
|
48738
48810
|
}
|
|
48739
48811
|
endTracing() {
|
|
48740
48812
|
if (this._rootSpan) {
|
|
48813
|
+
this._rootSpan.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_COUNT, this.getToolCallCount());
|
|
48814
|
+
this._rootSpan.setAttribute(ATTRIBUTE_NAME_TOOL_CALL_ERROR_COUNT, this.getToolCallErrorCount());
|
|
48741
48815
|
this._rootSpan.end();
|
|
48742
48816
|
}
|
|
48743
48817
|
this._isTracing = false;
|
|
@@ -48792,7 +48866,7 @@ import { fileURLToPath } from "node:url";
|
|
|
48792
48866
|
|
|
48793
48867
|
// src/generated/sdk-meta.ts
|
|
48794
48868
|
var SDK_NAME = "@friskai/frisk-js";
|
|
48795
|
-
var SDK_VERSION = "0.2.
|
|
48869
|
+
var SDK_VERSION = "0.2.10";
|
|
48796
48870
|
|
|
48797
48871
|
// src/core/sdk-attributes/read-sdk-meta.ts
|
|
48798
48872
|
function getSdkMeta() {
|
|
@@ -49466,5 +49540,5 @@ export {
|
|
|
49466
49540
|
AccessTokenProvider
|
|
49467
49541
|
};
|
|
49468
49542
|
|
|
49469
|
-
//# debugId=
|
|
49543
|
+
//# debugId=40ACC90B60961E6C64756E2164756E21
|
|
49470
49544
|
//# sourceMappingURL=index.js.map
|