@friskai/frisk-js 0.2.10 → 0.3.1

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.
Files changed (82) hide show
  1. package/README.md +1 -1
  2. package/dist/adapters/langchain/frisk-callback-handler.d.ts +80 -3
  3. package/dist/adapters/langchain/frisk-callback-handler.d.ts.map +1 -1
  4. package/dist/adapters/langchain/frisk-tool-middleware.d.ts.map +1 -1
  5. package/dist/adapters/langchain/index.js +758 -388
  6. package/dist/adapters/langchain/index.js.map +1 -454
  7. package/dist/adapters/langchain/langchain-framework-adapter/langchain-framework-adapter.d.ts +3 -3
  8. package/dist/adapters/langchain/langchain-framework-adapter/langchain-framework-adapter.d.ts.map +1 -1
  9. package/dist/core/extensions.d.ts +30 -0
  10. package/dist/core/extensions.d.ts.map +1 -0
  11. package/dist/core/frisk-session.d.ts +48 -12
  12. package/dist/core/frisk-session.d.ts.map +1 -1
  13. package/dist/core/frisk.d.ts +14 -24
  14. package/dist/core/frisk.d.ts.map +1 -1
  15. package/dist/core/llm-reasoning/extractLlmReasoning.d.ts +8 -0
  16. package/dist/core/llm-reasoning/extractLlmReasoning.d.ts.map +1 -0
  17. package/dist/core/spans/frisk-span.d.ts +38 -0
  18. package/dist/core/spans/frisk-span.d.ts.map +1 -0
  19. package/dist/core/spans/index.d.ts +7 -0
  20. package/dist/core/spans/index.d.ts.map +1 -0
  21. package/dist/core/spans/llm-call-span.d.ts +23 -0
  22. package/dist/core/spans/llm-call-span.d.ts.map +1 -0
  23. package/dist/core/spans/operation-span.d.ts +13 -0
  24. package/dist/core/spans/operation-span.d.ts.map +1 -0
  25. package/dist/core/spans/session-span.d.ts +20 -0
  26. package/dist/core/spans/session-span.d.ts.map +1 -0
  27. package/dist/core/spans/tool-call-decision-span.d.ts +27 -0
  28. package/dist/core/spans/tool-call-decision-span.d.ts.map +1 -0
  29. package/dist/core/spans/tool-call-observation-span.d.ts +28 -0
  30. package/dist/core/spans/tool-call-observation-span.d.ts.map +1 -0
  31. package/dist/core/types.d.ts +5 -0
  32. package/dist/core/types.d.ts.map +1 -1
  33. package/dist/errors/index.d.ts +6 -0
  34. package/dist/errors/index.d.ts.map +1 -1
  35. package/dist/framework-adapter/base-framework-adapter.d.ts +3 -3
  36. package/dist/framework-adapter/base-framework-adapter.d.ts.map +1 -1
  37. package/dist/framework-adapter/framework-adapter.d.ts +3 -3
  38. package/dist/framework-adapter/framework-adapter.d.ts.map +1 -1
  39. package/dist/framework-adapter/index.d.ts +2 -2
  40. package/dist/framework-adapter/index.d.ts.map +1 -1
  41. package/dist/generated/sdk-meta.d.ts +1 -1
  42. package/dist/generated/sdk-meta.d.ts.map +1 -1
  43. package/dist/index.d.ts +3 -3
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +526 -333
  46. package/dist/index.js.map +1 -440
  47. package/dist/telemetry/constants.d.ts +24 -0
  48. package/dist/telemetry/constants.d.ts.map +1 -1
  49. package/dist/utils/redact.d.ts +5 -5
  50. package/dist/utils/redact.d.ts.map +1 -1
  51. package/package.json +4 -27
  52. package/dist/adapters/claude/claude-framework-adapter/claude-framework-adapter.d.ts +0 -99
  53. package/dist/adapters/claude/claude-framework-adapter/claude-framework-adapter.d.ts.map +0 -1
  54. package/dist/adapters/claude/claude-framework-adapter/get-claude-agent-sdk-version.d.ts +0 -2
  55. package/dist/adapters/claude/claude-framework-adapter/get-claude-agent-sdk-version.d.ts.map +0 -1
  56. package/dist/adapters/claude/claude-framework-adapter/wrap-tool-with-llm-reasoning.d.ts +0 -4
  57. package/dist/adapters/claude/claude-framework-adapter/wrap-tool-with-llm-reasoning.d.ts.map +0 -1
  58. package/dist/adapters/claude/frisk-claude-session.d.ts +0 -29
  59. package/dist/adapters/claude/frisk-claude-session.d.ts.map +0 -1
  60. package/dist/adapters/claude/frisk-claude.d.ts +0 -71
  61. package/dist/adapters/claude/frisk-claude.d.ts.map +0 -1
  62. package/dist/adapters/claude/index.d.ts +0 -3
  63. package/dist/adapters/claude/index.d.ts.map +0 -1
  64. package/dist/adapters/claude/index.js +0 -65732
  65. package/dist/adapters/claude/index.js.map +0 -449
  66. package/dist/adapters/claude/resolve-claude-tool-name.d.ts +0 -2
  67. package/dist/adapters/claude/resolve-claude-tool-name.d.ts.map +0 -1
  68. package/dist/core/tool-call-span.d.ts +0 -102
  69. package/dist/core/tool-call-span.d.ts.map +0 -1
  70. package/dist/native-bindings/index.d.ts +0 -23
  71. package/dist/native-bindings/index.d.ts.map +0 -1
  72. package/native/README.md +0 -55
  73. package/native/frisk-js.darwin-arm64.node +0 -0
  74. package/native/frisk-js.darwin-x64.node +0 -0
  75. package/native/frisk-js.linux-arm64-gnu.node +0 -0
  76. package/native/frisk-js.linux-arm64-musl.node +0 -0
  77. package/native/frisk-js.linux-x64-gnu.node +0 -0
  78. package/native/frisk-js.linux-x64-musl.node +0 -0
  79. package/native/frisk-js.win32-arm64-msvc.node +0 -0
  80. package/native/frisk-js.win32-x64-msvc.node +0 -0
  81. package/native/index.cjs +0 -580
  82. package/native/index.d.ts +0 -73
@@ -8,7 +8,7 @@ import { DynamicStructuredTool } from '@langchain/core/tools';
8
8
  import { ZodObject } from 'zod/v4';
9
9
  import type { RegisterToolProperties } from '../../../core/tool-registry';
10
10
  import { FrameworkAdapter, ToolCallInfo, WrapToolOptions } from '../../../framework-adapter/framework-adapter';
11
- import type { RedactedDictionary, RedactedSerializedObject, RedactOption } from '../../../utils/redact';
11
+ import type { RedactedObject, RedactedSerializedObject, RedactOption } from '../../../utils/redact';
12
12
  /**
13
13
  * LangChain ToolCall type
14
14
  * Represents a tool call from LangChain messages
@@ -66,7 +66,7 @@ export declare class LangchainFrameworkAdapter implements FrameworkAdapter<Langc
66
66
  */
67
67
  toolArgsToDict(toolArgs: Record<string, unknown>, options?: {
68
68
  redact?: RedactOption;
69
- }): RedactedDictionary;
69
+ }): RedactedObject;
70
70
  /**
71
71
  * Convert agent state to dictionary with optional redaction
72
72
  *
@@ -74,7 +74,7 @@ export declare class LangchainFrameworkAdapter implements FrameworkAdapter<Langc
74
74
  */
75
75
  agentStateToDict(agentState: Record<string, unknown>, options?: {
76
76
  redact?: RedactOption;
77
- }): RedactedDictionary;
77
+ }): RedactedObject;
78
78
  /**
79
79
  * Extract tool call information from a LangChain ToolCall
80
80
  */
@@ -1 +1 @@
1
- {"version":3,"file":"langchain-framework-adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapters/langchain/langchain-framework-adapter/langchain-framework-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAEL,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,8CAA8C,CAAA;AAErD,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACb,MAAM,uBAAuB,CAAA;AAS9B;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,aAAa;CAG7B;AAQD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,yBACX,YAAW,gBAAgB,CAAC,iBAAiB,EAAE,aAAa,CAAC;IAE7D,SAAgB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAc;IAC3D,SAAgB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAC1B;IAE1B;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;;;;OAKG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACtD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,kBAAkB;IAIrB;;;;OAIG;IACH,gBAAgB,CACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,kBAAkB;IAQrB;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,YAAY;IAQ5D;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;OAEG;IACH,OAAO,CAAC,WAAW;IASnB;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI;IA6BjE;;;;;OAKG;IACH,SAAS,CACP,KAAK,EAAE,QAAQ,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,EACjD,OAAO,GAAE,eAAwC,GAChD,qBAAqB,EAAE;IAI1B;;;;OAIG;IACI,QAAQ,CACb,YAAY,EAAE,qBAAqB,CAAC,SAAS,CAAC,EAC9C,OAAO,GAAE,eAAwC,GAChD,qBAAqB;IAUxB,6BAA6B,CAC3B,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,GACrC,sBAAsB,GAAG,IAAI;CAYjC"}
1
+ {"version":3,"file":"langchain-framework-adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapters/langchain/langchain-framework-adapter/langchain-framework-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAEL,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,8CAA8C,CAAA;AAErD,OAAO,KAAK,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACb,MAAM,uBAAuB,CAAA;AAM9B;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,aAAa;CAG7B;AAQD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,yBACX,YAAW,gBAAgB,CAAC,iBAAiB,EAAE,aAAa,CAAC;IAE7D,SAAgB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAc;IAC3D,SAAgB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAC1B;IAE1B;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;;;;OAKG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACtD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,cAAc;IAIjB;;;;OAIG;IACH,gBAAgB,CACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,cAAc;IAQjB;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,YAAY;IAQ5D;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;OAEG;IACH,OAAO,CAAC,WAAW;IASnB;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI;IA6BjE;;;;;OAKG;IACH,SAAS,CACP,KAAK,EAAE,QAAQ,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,EACjD,OAAO,GAAE,eAAwC,GAChD,qBAAqB,EAAE;IAI1B;;;;OAIG;IACI,QAAQ,CACb,YAAY,EAAE,qBAAqB,CAAC,SAAS,CAAC,EAC9C,OAAO,GAAE,eAAwC,GAChD,qBAAqB;IAUxB,6BAA6B,CAC3B,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,GACrC,sBAAsB,GAAG,IAAI;CAYjC"}
@@ -0,0 +1,30 @@
1
+ import type { Frisk } from './frisk';
2
+ import type { NormalizedToolCall, ToolCallDecision, TraceContextCarrier } from './types';
3
+ type AnyFrisk = Frisk<any, any, any, any>;
4
+ export interface FriskExtension {
5
+ readonly name: string;
6
+ initialize(frisk: AnyFrisk): void | Promise<void>;
7
+ shutdown(): void;
8
+ }
9
+ export type DecideToolCallOptions = {
10
+ toolCall: NormalizedToolCall;
11
+ agentState: Record<string, unknown>;
12
+ traceContextCarrier?: TraceContextCarrier;
13
+ };
14
+ export type ToolPoliciesDecideInput = {
15
+ toolCall: NormalizedToolCall;
16
+ toolArgsJson: string | null;
17
+ toolArgsRedactedJson: string | null;
18
+ toolArgsRedactedPathsJson: string;
19
+ agentStateJson: string | null;
20
+ agentStateRedactedJson: string | null;
21
+ agentStateRedactedPathsJson: string;
22
+ traceContextCarrier?: TraceContextCarrier;
23
+ };
24
+ export interface ToolPoliciesProvider extends FriskExtension {
25
+ readonly available: boolean;
26
+ decideToolCall(opts: ToolPoliciesDecideInput): ToolCallDecision;
27
+ updateAccessToken(token: string): void;
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/core/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AAGhB,KAAK,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAEzC,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,QAAQ,IAAI,IAAI,CAAA;CACjB;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,yBAAyB,EAAE,MAAM,CAAA;IACjC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,2BAA2B,EAAE,MAAM,CAAA;IACnC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;CAC1C,CAAA;AAED,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,cAAc,CAAC,IAAI,EAAE,uBAAuB,GAAG,gBAAgB,CAAA;IAC/D,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACvC"}
@@ -3,10 +3,12 @@
3
3
  *
4
4
  * FriskSession represents a single session for tracking tool calls and tracing.
5
5
  */
6
- import { Span, Tracer } from '@opentelemetry/api';
6
+ import { type Tracer } from '@opentelemetry/api';
7
7
  import { FriskSDKLoggingOptions, SDKLogger } from '../logging';
8
- import type { DecideToolCallOptions, Frisk } from './frisk';
8
+ import type { DecideToolCallOptions } from './extensions';
9
+ import type { Frisk } from './frisk';
9
10
  import { type ResolvedRedactionOptions } from './redaction-options';
11
+ import { FriskSpan, LlmCallSpan, OperationSpan, SessionSpan, ToolCallObservationSpan } from './spans';
10
12
  import { ToolCallDecision } from './types';
11
13
  type AnyFrisk = Frisk<any, any, any, any>;
12
14
  export interface FriskSessionOptions<FriskClass extends AnyFrisk = AnyFrisk> {
@@ -17,7 +19,7 @@ export interface FriskSessionOptions<FriskClass extends AnyFrisk = AnyFrisk> {
17
19
  }
18
20
  interface InitTracingOptions {
19
21
  runId: string;
20
- inputs: Record<string, unknown>;
22
+ agentState: Record<string, unknown>;
21
23
  }
22
24
  export declare enum ToolCallStatus {
23
25
  Success = "success",
@@ -40,25 +42,44 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
40
42
  protected logger: SDKLogger;
41
43
  protected _rootRunId: string | null;
42
44
  protected _isTracing: boolean;
45
+ protected _agentState: Record<string, unknown> | null;
43
46
  private toolCallSequenceNumber;
44
47
  private toolCallSequenceGenerator;
45
48
  private toolCallErrorCount;
49
+ private tokenUsageInput;
50
+ private tokenUsageOutput;
51
+ private tokenUsageTotal;
46
52
  constructor({ frisk, redact, tracer, logging }: FriskSessionOptions<TFrisk>);
47
- get rootSpan(): Span | null;
53
+ get rootSpan(): SessionSpan | null;
48
54
  getTracer(): Tracer;
49
55
  /**
50
56
  * Check if tracing is active
51
57
  */
52
58
  get isTracing(): boolean;
53
59
  get rootRunId(): string | null;
54
- createToolCallSpan({ name, args: toolArgsInput, }: {
60
+ /**
61
+ * Open a span for a single LLM invocation, parented under `parent` (or the
62
+ * session root span).
63
+ */
64
+ createLlmCallSpan({ parent, }?: {
65
+ parent?: FriskSpan | null;
66
+ }): LlmCallSpan;
67
+ /**
68
+ * Open a span for a single operation (e.g. a nested LangChain run), parented
69
+ * under `parent` (or the session root span).
70
+ */
71
+ createOperationSpan({ parent, }?: {
72
+ parent?: FriskSpan | null;
73
+ }): OperationSpan;
74
+ createToolCallSpan({ name, args: toolArgsInput, agentState, parent, }: {
55
75
  name: string;
56
76
  args: object | any;
57
- }): Promise<Span>;
58
- closeToolCallSpan({ toolCallId, // todo! Make this a method on toolcallspan
59
- span, err, status, }: {
77
+ agentState?: Record<string, unknown> | null;
78
+ parent?: FriskSpan | null;
79
+ }): Promise<ToolCallObservationSpan>;
80
+ closeToolCallSpan({ toolCallId, span, err, status, }: {
60
81
  toolCallId: string | null;
61
- span: Span;
82
+ span: ToolCallObservationSpan;
62
83
  status: ToolCallStatus | null;
63
84
  err: Error | null;
64
85
  }): void;
@@ -68,17 +89,32 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
68
89
  *
69
90
  * This method wraps the tool call evaluation in an OpenTelemetry span,
70
91
  * handling redaction of sensitive data, latency recording, and trace
71
- * context propagation.
92
+ * context propagation. Serialization/redaction and decision/error
93
+ * translation live here; the span is a pure typed-attribute wrapper.
72
94
  */
73
95
  decideToolCall({ toolCall, agentState, }: DecideToolCallOptions): ToolCallDecision;
74
96
  private createToolCallSequenceGenerator;
75
97
  getToolCallCount(): number;
76
98
  incrementToolCallErrors(): void;
77
99
  getToolCallErrorCount(): number;
100
+ /**
101
+ * Add one LLM call's token usage to the session running totals and mirror the
102
+ * cumulative values onto the root session span. Missing counts default to 0.
103
+ */
104
+ recordTokenUsage({ inputTokens, outputTokens, totalTokens, }: {
105
+ inputTokens?: number;
106
+ outputTokens?: number;
107
+ totalTokens?: number;
108
+ }): void;
109
+ getTokenUsage(): {
110
+ inputTokens: number;
111
+ outputTokens: number;
112
+ totalTokens: number;
113
+ };
78
114
  /**
79
115
  * Initialize tracing for this session
80
116
  */
81
- initTracing({ runId, inputs }: InitTracingOptions): Span;
117
+ initTracing({ runId, agentState }: InitTracingOptions): SessionSpan;
82
118
  /**
83
119
  * End tracing for this session
84
120
  */
@@ -86,7 +122,7 @@ export declare class FriskSession<TFrisk extends AnyFrisk = AnyFrisk> {
86
122
  /**
87
123
  * Set the root span for the session
88
124
  */
89
- setRootSpan(span: Span): void;
125
+ setRootSpan(span: SessionSpan): void;
90
126
  private static generateSessionId;
91
127
  }
92
128
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"frisk-session.d.ts","sourceRoot":"","sources":["../../src/core/frisk-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frisk-session.d.ts","sourceRoot":"","sources":["../../src/core/frisk-session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAwB,KAAK,MAAM,EAAS,MAAM,oBAAoB,CAAA;AAI7E,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAGpC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,OAAO,EACL,SAAS,EACT,WAAW,EACX,aAAa,EACb,WAAW,EAEX,uBAAuB,EACxB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAmB,gBAAgB,EAAuB,MAAM,SAAS,CAAA;AAEhF,KAAK,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAEzC,MAAM,WAAW,mBAAmB,CAAC,UAAU,SAAS,QAAQ,GAAG,QAAQ;IACzE,KAAK,EAAE,UAAU,CAAA;IACjB,MAAM,EAAE,wBAAwB,CAAA;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,sBAAsB,CAAA;CACjC;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED;;;;;;;GAOG;AACH,qBAAa,YAAY,CAAC,MAAM,SAAS,QAAQ,GAAG,QAAQ;IAC1D,SAAgB,KAAK,EAAE,MAAM,CAAA;IAC7B,SAAgB,EAAE,EAAE,MAAM,CAAA;IAE1B,OAAO,CAAC,SAAS,CAA2B;IAC5C,SAAS,CAAC,SAAS,EAAE,wBAAwB,CAAA;IAC7C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,MAAM,EAAE,SAAS,CAAA;IAC3B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAO;IAC1C,SAAS,CAAC,UAAU,EAAE,OAAO,CAAQ;IACrC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAO;IAE5D,OAAO,CAAC,sBAAsB,CAAY;IAC1C,OAAO,CAAC,yBAAyB,CAAyC;IAC1E,OAAO,CAAC,kBAAkB,CAAY;IAItC,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,gBAAgB,CAAY;IACpC,OAAO,CAAC,eAAe,CAAY;gBAEvB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,mBAAmB,CAAC,MAAM,CAAC;IAc3E,IAAW,QAAQ,IAAI,WAAW,GAAG,IAAI,CAExC;IAEM,SAAS,IAAI,MAAM;IAI1B;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED;;;OAGG;IACH,iBAAiB,CAAC,EAChB,MAAM,GACP,GAAE;QACD,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KACrB,GAAG,WAAW;IASpB;;;OAGG;IACH,mBAAmB,CAAC,EAClB,MAAM,GACP,GAAE;QACD,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KACrB,GAAG,aAAa;IAShB,kBAAkB,CAAC,EACvB,IAAI,EACJ,IAAI,EAAE,aAAa,EACnB,UAAU,EACV,MAAM,GACP,EAAE;QACD,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;QAC3C,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAC1B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAqD7B,iBAAiB,CAAC,EACvB,UAAU,EACV,IAAI,EACJ,GAAG,EACH,MAAM,GACP,EAAE;QACD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;QACzB,IAAI,EAAE,uBAAuB,CAAA;QAC7B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;QAC7B,GAAG,EAAE,KAAK,GAAG,IAAI,CAAA;KAClB;IAsBD,OAAO,CAAC,gBAAgB;IAcxB;;;;;;;OAOG;IACH,cAAc,CAAC,EACb,QAAQ,EACR,UAAU,GACX,EAAE,qBAAqB,GAAG,gBAAgB;IAsF3C,OAAO,CAAE,+BAA+B;IAMjC,gBAAgB,IAAI,MAAM;IAI1B,uBAAuB;IAIvB,qBAAqB,IAAI,MAAM;IAItC;;;OAGG;IACI,gBAAgB,CAAC,EACtB,WAAe,EACf,YAAgB,EAChB,WAAe,GAChB,EAAE;QACD,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,GAAG,IAAI;IAWD,aAAa,IAAI;QACtB,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,WAAW,EAAE,MAAM,CAAA;KACpB;IAQD;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,kBAAkB,GAAG,WAAW;IAkBnE;;OAEG;IACH,UAAU,IAAI,IAAI;IAkBlB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAIpC,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAGjC"}
@@ -7,21 +7,15 @@
7
7
  import { BaseFrameworkAdapter, FrameworkAdapter } from '../framework-adapter';
8
8
  import { WrapToolOptions } from '../framework-adapter/framework-adapter';
9
9
  import { LogLevel, SDKLogger } from '../logging';
10
- import { type FriskHandleInstance } from '../native-bindings';
11
10
  import { TracingManager } from '../telemetry/tracing-manager';
12
11
  import { AccessTokenProvider } from './access-token-provider';
12
+ import type { DecideToolCallOptions } from './extensions';
13
13
  import { FriskSession } from './frisk-session';
14
14
  import { type ResolvedRedactionOptions } from './redaction-options';
15
15
  import { type ToolApprovalRequest, type ToolApprovalRequestInput, type ToolApprovalRequestStatusUpdateResult } from './tool-approval-request';
16
16
  import { ToolRegistryItem } from './tool-registry';
17
- import { FriskOptions, NormalizedToolCall, ToolCall, ToolCallDecision, TraceContextCarrier } from './types';
17
+ import { FriskOptions, NormalizedToolCall, ToolCall, ToolCallDecision } from './types';
18
18
  type Ctor<T> = new (opts: any) => T;
19
- /** Input required to evaluate a normalized tool call within a session. */
20
- export type DecideToolCallOptions = {
21
- toolCall: NormalizedToolCall;
22
- agentState: Record<string, unknown>;
23
- traceContextCarrier?: TraceContextCarrier;
24
- };
25
19
  /**
26
20
  * Main Frisk SDK class
27
21
  *
@@ -60,35 +54,31 @@ export type DecideToolCallOptions = {
60
54
  * ```
61
55
  */
62
56
  export declare class Frisk<ToolCallT extends ToolCall = ToolCall, ToolT = unknown, FrameworkAdapterT extends FrameworkAdapter<ToolCallT, ToolT> = BaseFrameworkAdapter, SessionMetadataT = never> {
57
+ get toolPoliciesAvailable(): boolean;
63
58
  get redaction(): ResolvedRedactionOptions;
64
59
  private _redaction;
65
- protected apiBaseUrl: string;
66
- protected otlpEndpoint: string;
67
- protected accessTokenProvider: AccessTokenProvider;
60
+ readonly apiBaseUrl: string;
61
+ readonly otlpEndpoint: string;
62
+ readonly accessTokenProvider: AccessTokenProvider;
63
+ get adapter(): FrameworkAdapterT;
64
+ get logLevel(): LogLevel | undefined;
65
+ get tracingManager(): TracingManager;
68
66
  protected initialized: boolean;
69
67
  protected rootLogger: SDKLogger;
70
68
  protected logger: SDKLogger;
71
69
  private _logLevel?;
72
70
  private _adapter;
73
- private _friskHandle;
74
71
  private _tracingManager;
75
- private _toolRegistry;
72
+ private toolRegistry;
76
73
  private sdkAttributes;
74
+ private extensions;
75
+ private toolPolicies;
77
76
  private wrapToolsCalled;
78
77
  get toolRegistrationComplete(): Promise<boolean>;
79
- get logLevel(): LogLevel | undefined;
80
78
  static connect<T extends Frisk>(this: Ctor<T>, options?: FriskOptions): Promise<T>;
81
79
  constructor(options?: FriskOptions<ToolCallT, ToolT, FrameworkAdapterT>);
82
- /**
83
- * Get the native handle (for internal use)
84
- * @internal
85
- */
86
- get friskHandle(): FriskHandleInstance;
87
- get adapter(): FrameworkAdapterT;
88
- /**
89
- * Get the OpenTelemetry tracer handle
90
- */
91
- get tracingManager(): TracingManager;
80
+ private mountExtensions;
81
+ private initializeExtensions;
92
82
  connect(): Promise<void>;
93
83
  /**
94
84
  * Create a new session for tracking tool calls
@@ -1 +1 @@
1
- {"version":3,"file":"frisk.d.ts","sourceRoot":"","sources":["../../src/core/frisk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frisk.d.ts","sourceRoot":"","sources":["../../src/core/frisk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Return the synthetic LLM reasoning argument as a string, if present.
3
+ *
4
+ * Returns `null` when `toolArgs` is not a plain object or the reasoning arg is
5
+ * absent or nullish.
6
+ */
7
+ export declare function extractLlmReasoning(toolArgs: unknown): string | null;
8
+ //# sourceMappingURL=extractLlmReasoning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractLlmReasoning.d.ts","sourceRoot":"","sources":["../../../src/core/llm-reasoning/extractLlmReasoning.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAepE"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * FriskSpan — typed wrapper around an OpenTelemetry span with an in-memory
3
+ * attribute mirror.
4
+ *
5
+ * Subclasses pass their `spanName` and `attributeFields` (public camelCase
6
+ * field name -> telemetry attribute constant) to `super()` and expose a typed
7
+ * `setAttributes({...})` API. Every write is validated against the field map,
8
+ * mirrored into an in-memory record (keyed by constant), and written verbatim
9
+ * to the underlying otel span. Span classes never format or transform values.
10
+ */
11
+ import { type AttributeValue, type Span, type Tracer } from '@opentelemetry/api';
12
+ export declare abstract class FriskSpan {
13
+ private readonly _spanName;
14
+ private readonly _attributeFields;
15
+ private readonly _otelSpan;
16
+ private readonly _attributes;
17
+ private _ended;
18
+ protected constructor({ tracer, parent, spanName, attributeFields, }: {
19
+ tracer: Tracer;
20
+ parent?: FriskSpan | null;
21
+ spanName: string;
22
+ attributeFields: Readonly<Record<string, string>>;
23
+ });
24
+ /** The wrapped otel span. Internal to `core` (trace-context propagation). */
25
+ get otelSpan(): Span;
26
+ /** The otel span id — for cross-span linkage without leaking otel types. */
27
+ get spanId(): string;
28
+ /** Set a single attribute by field name, e.g. `setAttribute('prompt', x)`. */
29
+ setAttribute(field: string, value: AttributeValue): void;
30
+ /** Read the in-memory value for `field`, or undefined if not set. */
31
+ getAttribute(field: string): AttributeValue | undefined;
32
+ /** End the underlying otel span. Subsequent calls are no-ops. */
33
+ end(): void;
34
+ /** Worker for subclasses' typed `setAttributes`. Skips null/undefined. */
35
+ protected setAttributesByField(values: Record<string, AttributeValue | null | undefined>): void;
36
+ private constantFor;
37
+ }
38
+ //# sourceMappingURL=frisk-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frisk-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/frisk-span.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,IAAI,EACT,KAAK,MAAM,EAEZ,MAAM,oBAAoB,CAAA;AAE3B,8BAAsB,SAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAM;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;IACjE,OAAO,CAAC,MAAM,CAAQ;IAEtB,SAAS,aAAa,EACpB,MAAM,EACN,MAAM,EACN,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;QACzB,QAAQ,EAAE,MAAM,CAAA;QAChB,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;KAClD;IASD,6EAA6E;IAC7E,IAAI,QAAQ,IAAI,IAAI,CAEnB;IAED,4EAA4E;IAC5E,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,8EAA8E;IAC9E,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI;IAIxD,qEAAqE;IACrE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAIvD,iEAAiE;IACjE,GAAG,IAAI,IAAI;IAQX,0EAA0E;IAC1E,SAAS,CAAC,oBAAoB,CAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC,GACxD,IAAI;IAWP,OAAO,CAAC,WAAW;CASpB"}
@@ -0,0 +1,7 @@
1
+ export { FriskSpan } from './frisk-span';
2
+ export { LlmCallSpan } from './llm-call-span';
3
+ export { OperationSpan } from './operation-span';
4
+ export { SessionSpan } from './session-span';
5
+ export { ToolCallDecisionSpan } from './tool-call-decision-span';
6
+ export { ToolCallObservationSpan } from './tool-call-observation-span';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/spans/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,23 @@
1
+ import type { Tracer } from '@opentelemetry/api';
2
+ import { FriskSpan } from './frisk-span';
3
+ /** Typed span for a single LLM invocation. */
4
+ export declare class LlmCallSpan extends FriskSpan {
5
+ constructor(args: {
6
+ tracer: Tracer;
7
+ parent?: FriskSpan | null;
8
+ });
9
+ setAttributes(values: {
10
+ sessionId?: string;
11
+ promptsJson?: string;
12
+ responsesJson?: string;
13
+ toolCallsJson?: string;
14
+ modelName?: string;
15
+ modelProvider?: string;
16
+ inputTokens?: number;
17
+ outputTokens?: number;
18
+ totalTokens?: number;
19
+ errorType?: string;
20
+ errorMessage?: string;
21
+ }): void;
22
+ }
23
+ //# sourceMappingURL=llm-call-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-call-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/llm-call-span.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAehE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAgBxC,8CAA8C;AAC9C,qBAAa,WAAY,SAAQ,SAAS;gBAC5B,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE;IAI/D,aAAa,CAAC,MAAM,EAAE;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GAAG,IAAI;CAKT"}
@@ -0,0 +1,13 @@
1
+ import type { Tracer } from '@opentelemetry/api';
2
+ import { FriskSpan } from './frisk-span';
3
+ /** Typed span for a single operation (e.g. a nested LangChain run). */
4
+ export declare class OperationSpan extends FriskSpan {
5
+ constructor(args: {
6
+ tracer: Tracer;
7
+ parent?: FriskSpan | null;
8
+ });
9
+ setAttributes(values: {
10
+ sessionId?: string;
11
+ }): void;
12
+ }
13
+ //# sourceMappingURL=operation-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/operation-span.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAKhE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAMxC,uEAAuE;AACvE,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE;IAI/D,aAAa,CAAC,MAAM,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAKpD"}
@@ -0,0 +1,20 @@
1
+ import type { Tracer } from '@opentelemetry/api';
2
+ import { FriskSpan } from './frisk-span';
3
+ /** Typed span for the Frisk session root. */
4
+ export declare class SessionSpan extends FriskSpan {
5
+ constructor(args: {
6
+ tracer: Tracer;
7
+ parent?: FriskSpan | null;
8
+ });
9
+ setAttributes(values: {
10
+ sessionId?: string;
11
+ remoteSessionId?: string;
12
+ prompt?: string;
13
+ toolCallCount?: number;
14
+ toolCallErrorCount?: number;
15
+ inputTokens?: number;
16
+ outputTokens?: number;
17
+ totalTokens?: number;
18
+ }): void;
19
+ }
20
+ //# sourceMappingURL=session-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/session-span.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAYhE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAcxC,6CAA6C;AAC7C,qBAAa,WAAY,SAAQ,SAAS;gBAC5B,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE;IAQ/D,aAAa,CAAC,MAAM,EAAE;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,GAAG,IAAI;CAKT"}
@@ -0,0 +1,27 @@
1
+ import type { Tracer } from '@opentelemetry/api';
2
+ import { FriskSpan } from './frisk-span';
3
+ /** Typed span for a tool-call policy decision. */
4
+ export declare class ToolCallDecisionSpan extends FriskSpan {
5
+ constructor(args: {
6
+ tracer: Tracer;
7
+ parent?: FriskSpan | null;
8
+ });
9
+ setAttributes(values: {
10
+ sessionId?: string;
11
+ toolName?: string;
12
+ toolCallId?: string;
13
+ toolArgsJson?: string;
14
+ toolArgsRedactedPathsJson?: string;
15
+ agentStateJson?: string;
16
+ agentStateRedactedPathsJson?: string;
17
+ friskToolId?: string;
18
+ friskToolVersionId?: string;
19
+ llmReasoning?: string;
20
+ decisionOutcome?: string;
21
+ decisionMatchedRuleCount?: number;
22
+ decisionReason?: string;
23
+ errorType?: string;
24
+ errorMessage?: string;
25
+ }): void;
26
+ }
27
+ //# sourceMappingURL=tool-call-decision-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-call-decision-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/tool-call-decision-span.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAmBhE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAoBxC,kDAAkD;AAClD,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE;IAQ/D,aAAa,CAAC,MAAM,EAAE;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,yBAAyB,CAAC,EAAE,MAAM,CAAA;QAClC,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,2BAA2B,CAAC,EAAE,MAAM,CAAA;QACpC,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,wBAAwB,CAAC,EAAE,MAAM,CAAA;QACjC,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GAAG,IAAI;CAKT"}
@@ -0,0 +1,28 @@
1
+ import type { Tracer } from '@opentelemetry/api';
2
+ import { FriskSpan } from './frisk-span';
3
+ /** Typed span for observing an executed tool call. */
4
+ export declare class ToolCallObservationSpan extends FriskSpan {
5
+ constructor(args: {
6
+ tracer: Tracer;
7
+ parent?: FriskSpan | null;
8
+ });
9
+ setAttributes(values: {
10
+ sessionId?: string;
11
+ toolName?: string;
12
+ toolCallId?: string;
13
+ toolArgsJson?: string;
14
+ toolArgsRedactedPathsJson?: string;
15
+ agentStateJson?: string;
16
+ agentStateRedactedPathsJson?: string;
17
+ toolCallSequenceNumber?: number;
18
+ friskToolId?: string;
19
+ friskToolVersionId?: string;
20
+ llmReasoning?: string;
21
+ isSuccess?: boolean;
22
+ isError?: boolean;
23
+ errorMessage?: string;
24
+ errorType?: string;
25
+ llmCallSpanId?: string;
26
+ }): void;
27
+ }
28
+ //# sourceMappingURL=tool-call-observation-span.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-call-observation-span.d.ts","sourceRoot":"","sources":["../../../src/core/spans/tool-call-observation-span.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAoBhE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAqBxC,sDAAsD;AACtD,qBAAa,uBAAwB,SAAQ,SAAS;gBACxC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE;IAQ/D,aAAa,CAAC,MAAM,EAAE;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,yBAAyB,CAAC,EAAE,MAAM,CAAA;QAClC,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,2BAA2B,CAAC,EAAE,MAAM,CAAA;QACpC,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,SAAS,CAAC,EAAE,OAAO,CAAA;QACnB,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,aAAa,CAAC,EAAE,MAAM,CAAA;KACvB,GAAG,IAAI;CAKT"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { FrameworkAdapter } from '../framework-adapter';
7
7
  import type { FriskSDKLoggingOptions } from '../logging';
8
+ import type { FriskExtension } from './extensions';
8
9
  import type { RedactionOptions } from './redaction-options';
9
10
  /**
10
11
  * Decision made by the policy engine for a tool call
@@ -72,6 +73,10 @@ export interface FriskOptions<ToolCallT = unknown, ToolT = unknown, FrameworkAda
72
73
  * Logging options for the SDK, including custom logger and log level.
73
74
  */
74
75
  logging?: FriskSDKLoggingOptions;
76
+ /**
77
+ * Extensions to register with the Frisk instance (e.g. ToolPolicies).
78
+ */
79
+ extensions?: FriskExtension[];
75
80
  }
76
81
  /** Raw tool-call shape accepted by generic Frisk evaluation APIs. */
77
82
  export interface ToolCall {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D;;GAEG;AACH,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,eAAe,CAAA;IAExB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IAEzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAC3B,SAAS,GAAG,OAAO,EACnB,KAAK,GAAG,OAAO,EACf,iBAAiB,SAAS,gBAAgB,CACxC,SAAS,EACT,KAAK,CACN,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC;IAEtC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAA;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,sBAAsB,CAAA;CACjC;AAED,qEAAqE;AACrE,MAAM,WAAW,QAAQ;IACvB,gDAAgD;IAChD,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAA;IAEZ,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D;;GAEG;AACH,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,eAAe,CAAA;IAExB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IAEzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAC3B,SAAS,GAAG,OAAO,EACnB,KAAK,GAAG,OAAO,EACf,iBAAiB,SAAS,gBAAgB,CACxC,SAAS,EACT,KAAK,CACN,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC;IAEtC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAA;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAEhC;;OAEG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;CAC9B;AAED,qEAAqE;AACrE,MAAM,WAAW,QAAQ;IACvB,gDAAgD;IAChD,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAA;IAEZ,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB"}
@@ -97,6 +97,12 @@ export declare class FriskInvalidAPIKeyError extends Error {
97
97
  export declare class UnexpectedFriskServerResponseError extends Error {
98
98
  constructor(message?: string);
99
99
  }
100
+ /**
101
+ * Error thrown when tool policy evaluation is attempted without the native extension available.
102
+ */
103
+ export declare class MissingToolPoliciesExtensionError extends FriskError {
104
+ constructor(options?: FriskErrorOptions);
105
+ }
100
106
  /** Raised when tool-call span APIs are used before span initialization. */
101
107
  export declare class ToolCallSpanNotInitializedError extends Error {
102
108
  constructor(message?: string);
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,qDAAqD;IACrD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAE9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CASzD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;gBACrC,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAO3D;AAED;;GAEG;AACH,qBAAa,+BAAgC,SAAQ,UAAU;gBACjD,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,UAAU;gBAC5C,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAO9D;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,UAAU;IACrD,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAA;gBAEjB,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAU9D;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,SAAgC;CAIpD;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,SAAiC;CAIrD;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,SAA0B;CAI9C;AAED;;GAEG;AACH,qBAAa,kCAAmC,SAAQ,KAAK;gBAC/C,OAAO,SAA0C;CAI9D;AAED,2EAA2E;AAC3E,qBAAa,+BAAgC,SAAQ,KAAK;gBAEtD,OAAO,SAAiE;CAK3E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,qDAAqD;IACrD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAE9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CASzD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;gBACrC,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAO3D;AAED;;GAEG;AACH,qBAAa,+BAAgC,SAAQ,UAAU;gBACjD,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,UAAU;gBAC1C,OAAO,CAAC,EAAE,iBAAiB;CAOxC;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,UAAU;gBAC5C,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAO9D;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,UAAU;IACrD,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAA;gBAEjB,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,iBAAiB;CAU9D;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,SAAgC;CAIpD;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,SAAiC;CAIrD;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,SAA0B;CAI9C;AAED;;GAEG;AACH,qBAAa,kCAAmC,SAAQ,KAAK;gBAC/C,OAAO,SAA0C;CAI9D;AAED;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,UAAU;gBACnD,OAAO,CAAC,EAAE,iBAAiB;CAQxC;AAED,2EAA2E;AAC3E,qBAAa,+BAAgC,SAAQ,KAAK;gBAEtD,OAAO,SAAiE;CAK3E"}
@@ -5,7 +5,7 @@
5
5
  * Use this as a base for custom adapters or when not using a specific framework.
6
6
  */
7
7
  import type { RegisterToolProperties } from '../core/tool-registry';
8
- import type { RedactedDictionary, RedactedSerializedObject, RedactOption } from '../utils/redact';
8
+ import type { RedactedObject, RedactedSerializedObject, RedactOption } from '../utils/redact';
9
9
  import type { FrameworkAdapter, ToolCallInfo } from './framework-adapter';
10
10
  /**
11
11
  * Generic tool call type for base adapter
@@ -52,13 +52,13 @@ export declare class BaseFrameworkAdapter implements FrameworkAdapter<GenericToo
52
52
  */
53
53
  toolArgsToDict(toolArgs: Record<string, unknown>, options?: {
54
54
  redact?: RedactOption;
55
- }): RedactedDictionary;
55
+ }): RedactedObject;
56
56
  /**
57
57
  * Convert agent state to dictionary with optional redaction
58
58
  */
59
59
  agentStateToDict(agentState: Record<string, unknown>, options?: {
60
60
  redact?: RedactOption;
61
- }): RedactedDictionary;
61
+ }): RedactedObject;
62
62
  /**
63
63
  * Extract tool call information from a generic tool call object
64
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base-framework-adapter.d.ts","sourceRoot":"","sources":["../../src/framework-adapter/base-framework-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AACnE,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACb,MAAM,iBAAiB,CAAA;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEzE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,oBACX,YAAW,gBAAgB,CAAC,eAAe,EAAE,OAAO,CAAC;IAErD,SAAgB,cAAc,UAAS;IACvC,SAAgB,qBAAqB,OAAO;IAE5C;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACtD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,kBAAkB;IAIrB;;OAEG;IACH,gBAAgB,CACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,kBAAkB;IAIrB;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,YAAY;IAQ1D;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI;IAKjE,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,GAAG,IAAI;CAG7E"}
1
+ {"version":3,"file":"base-framework-adapter.d.ts","sourceRoot":"","sources":["../../src/framework-adapter/base-framework-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AACnE,OAAO,KAAK,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACb,MAAM,iBAAiB,CAAA;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEzE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,oBACX,YAAW,gBAAgB,CAAC,eAAe,EAAE,OAAO,CAAC;IAErD,SAAgB,cAAc,UAAS;IACvC,SAAgB,qBAAqB,OAAO;IAE5C;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,mBAAmB,CACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACtD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,wBAAwB;IAY3B;;OAEG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,cAAc;IAIjB;;OAEG;IACH,gBAAgB,CACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAE,GAClC,cAAc;IAIjB;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,YAAY;IAQ1D;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI;IAKjE,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,GAAG,IAAI;CAG7E"}
@@ -5,7 +5,7 @@
5
5
  * to integrate with different AI/LLM frameworks.
6
6
  */
7
7
  import type { RegisterToolProperties } from '../core/tool-registry';
8
- import type { RedactedDictionary, RedactedSerializedObject, RedactOption } from '../utils/redact';
8
+ import type { RedactedObject, RedactedSerializedObject, RedactOption } from '../utils/redact';
9
9
  /**
10
10
  * Information about a tool call extracted by the framework adapter
11
11
  */
@@ -73,7 +73,7 @@ export interface FrameworkAdapter<ToolCallT = unknown, ToolT = unknown> {
73
73
  */
74
74
  toolArgsToDict(toolArgs: Record<string, unknown>, options?: {
75
75
  redact?: RedactOption;
76
- }): RedactedDictionary;
76
+ }): RedactedObject;
77
77
  /**
78
78
  * Convert agent state to a dictionary with optional redaction
79
79
  *
@@ -83,7 +83,7 @@ export interface FrameworkAdapter<ToolCallT = unknown, ToolT = unknown> {
83
83
  */
84
84
  agentStateToDict(agentState: Record<string, unknown>, options?: {
85
85
  redact?: RedactOption;
86
- }): RedactedDictionary;
86
+ }): RedactedObject;
87
87
  /**
88
88
  * Extract tool call information from a framework-specific tool call object
89
89
  *