@friskai/frisk-js 0.2.2 → 0.2.4
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 +1055 -9624
- package/dist/adapters/claude/index.js.map +9 -58
- package/dist/adapters/langchain/frisk-langchain.d.ts +5 -1
- package/dist/adapters/langchain/frisk-langchain.d.ts.map +1 -1
- package/dist/adapters/langchain/frisk-tool-middleware.d.ts +27 -5
- package/dist/adapters/langchain/frisk-tool-middleware.d.ts.map +1 -1
- package/dist/adapters/langchain/index.js +5478 -14592
- package/dist/adapters/langchain/index.js.map +26 -77
- package/dist/adapters/langchain/interrupt-response-schema.d.ts +15 -0
- package/dist/adapters/langchain/interrupt-response-schema.d.ts.map +1 -0
- package/dist/adapters/langchain/types.d.ts +0 -5
- package/dist/adapters/langchain/types.d.ts.map +1 -1
- package/dist/core/frisk-session.d.ts.map +1 -1
- package/dist/core/frisk.d.ts +15 -0
- package/dist/core/frisk.d.ts.map +1 -1
- package/dist/core/tool-approval-request.d.ts +57 -0
- package/dist/core/tool-approval-request.d.ts.map +1 -0
- package/dist/core/types.d.ts +10 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +498 -9066
- package/dist/index.js.map +9 -58
- package/dist/native-bindings/index.d.ts +1 -3
- package/dist/native-bindings/index.d.ts.map +1 -1
- package/dist/utils/find-last.d.ts +2 -0
- package/dist/utils/find-last.d.ts.map +1 -0
- 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/native/index.d.ts +2 -0
- package/package.json +2 -1
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { DynamicStructuredTool } from '@langchain/core/tools';
|
|
7
7
|
import { type StateSchema } from '@langchain/langgraph';
|
|
8
|
+
import * as z from 'zod/v4';
|
|
8
9
|
import { ZodObject } from 'zod/v4';
|
|
9
10
|
import { Frisk } from '../../core/frisk';
|
|
10
11
|
import type { FriskOptions } from '../../core/types';
|
|
@@ -16,13 +17,16 @@ import { LangchainFrameworkAdapter, type LangchainToolCall } from './langchain-f
|
|
|
16
17
|
* LangChain-specific Frisk init params (without frameworkAdapter since it's preset)
|
|
17
18
|
*/
|
|
18
19
|
export type FriskLangchainOptions = Omit<FriskOptions<LangchainToolCall, LangchainTool>, 'adapter'>;
|
|
20
|
+
export declare const FRISK_CONTEXT_SCHEMA: z.ZodObject<{
|
|
21
|
+
friskSessionId: z.ZodOptional<z.ZodString>;
|
|
22
|
+
}, z.core.$strip>;
|
|
19
23
|
/** Parameters used to create Frisk LangGraph/LangChain middleware. */
|
|
20
24
|
export interface FriskGuardParams {
|
|
21
25
|
/** LangGraph state schema passed through to middleware creation. */
|
|
22
26
|
stateSchema: StateSchema<any>;
|
|
23
27
|
/** Feature toggles for Frisk middleware behavior. */
|
|
24
28
|
controls?: {
|
|
25
|
-
/** Enables policy checks in
|
|
29
|
+
/** Enables policy checks in afterModel middleware when true. */
|
|
26
30
|
toolPolicies?: boolean;
|
|
27
31
|
};
|
|
28
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frisk-langchain.d.ts","sourceRoot":"","sources":["../../../src/adapters/langchain/frisk-langchain.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,eAAe,EAChB,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2DAA2D,CAAA;AAC9F,OAAO,EACL,yBAAyB,EACzB,KAAK,iBAAiB,EACvB,MAAM,2DAA2D,CAAA;
|
|
1
|
+
{"version":3,"file":"frisk-langchain.d.ts","sourceRoot":"","sources":["../../../src/adapters/langchain/frisk-langchain.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,eAAe,EAChB,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2DAA2D,CAAA;AAC9F,OAAO,EACL,yBAAyB,EACzB,KAAK,iBAAiB,EACvB,MAAM,2DAA2D,CAAA;AAGlE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,YAAY,CAAC,iBAAiB,EAAE,aAAa,CAAC,EAC9C,SAAS,CACV,CAAA;AAGD,eAAO,MAAM,oBAAoB;;iBAE/B,CAAA;AAEF,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;IAC7B,qDAAqD;IACrD,QAAQ,CAAC,EAAE;QACT,gEAAgE;QAChE,YAAY,CAAC,EAAE,OAAO,CAAA;KAGvB,CAAA;CACF;AAED,4DAA4D;AAC5D,eAAO,MAAM,yBAAyB;;CAErC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,cAAe,SAAQ,KAAK,CACvC,iBAAiB,EACjB,aAAa,EACb,yBAAyB,CAC1B;gBACa,MAAM,CAAC,EAAE,qBAAqB;IAOnC,OAAO,IAAI,qBAAqB;IAiBhC,KAAK,CAAC,EACX,WAAW,EACX,QAAoC,GACrC,EAAE,gBAAgB;IA8BnB;;;;;;;;;;;;OAYG;IACI,SAAS,CACd,KAAK,EAAE,QAAQ,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,EACjD,OAAO,GAAE,eAAwC,GAChD,qBAAqB,EAAE;IAI1B;;;;;;;;;;;;OAYG;IACI,QAAQ,CACb,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,EACtC,OAAO,GAAE,eAAwC,GAChD,qBAAqB;CAGzB"}
|
|
@@ -4,8 +4,7 @@
|
|
|
4
4
|
* Middleware for intercepting and evaluating LangChain tool calls
|
|
5
5
|
* against Frisk policies before execution.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
8
|
-
import { ToolCallHandler, ToolCallRequest, ToolMessage } from 'langchain';
|
|
7
|
+
import { BaseMessage, Runtime, ToolMessage } from 'langchain';
|
|
9
8
|
import { FriskSDKLoggingOptions } from '../../logging';
|
|
10
9
|
import { FriskLangchain } from './frisk-langchain';
|
|
11
10
|
import { FriskLangchainContext } from './types';
|
|
@@ -13,8 +12,13 @@ import { FriskLangchainContext } from './types';
|
|
|
13
12
|
* Options for creating a Frisk tool middleware
|
|
14
13
|
*/
|
|
15
14
|
export interface FriskToolMiddlewareOptions {
|
|
15
|
+
controls?: {
|
|
16
|
+
toolPolicies?: boolean;
|
|
17
|
+
};
|
|
16
18
|
logging?: FriskSDKLoggingOptions;
|
|
17
19
|
}
|
|
20
|
+
export declare const DENIED_TOOL_CALL_EXPLANATION = "This is not an error, this is a security measure by the purveyor of the agent. Do not retry this tool call with the same arguments. You may attempt to fulfill the underlying request using a different strategy. Other tool calls in this batch have been executed, unless otherwise stated.";
|
|
21
|
+
export declare const EXPIRED_TOOL_CALL_APPROVAL_EXPLANATION = "This is not an error, this is a security measure by the purveyor of the agent. Retrying this tool call will likely require a new request for external approval. You may attempt to fulfill the underlying request using a different strategy. Other tool calls in this batch have been executed, unless otherwise stated.";
|
|
18
22
|
/**
|
|
19
23
|
* FriskToolMiddleware - Middleware for LangChain tool call interception
|
|
20
24
|
*
|
|
@@ -49,19 +53,37 @@ export interface FriskToolMiddlewareOptions {
|
|
|
49
53
|
* );
|
|
50
54
|
* ```
|
|
51
55
|
*/
|
|
52
|
-
export declare class FriskToolMiddleware<TState extends
|
|
56
|
+
export declare class FriskToolMiddleware<TState extends {
|
|
57
|
+
messages: BaseMessage[];
|
|
58
|
+
} = {
|
|
59
|
+
messages: BaseMessage[];
|
|
60
|
+
}, TContext extends FriskLangchainContext = FriskLangchainContext> {
|
|
53
61
|
private _frisk;
|
|
54
62
|
private logger;
|
|
63
|
+
private readonly toolPoliciesEnabled;
|
|
55
64
|
constructor(frisk: FriskLangchain, options?: FriskToolMiddlewareOptions);
|
|
56
65
|
/**
|
|
57
66
|
* Get the Frisk instance
|
|
58
67
|
*/
|
|
59
68
|
get frisk(): FriskLangchain;
|
|
60
|
-
|
|
69
|
+
afterModel(state: TState, runtime: Runtime<TContext>): Promise<{
|
|
70
|
+
messages: ToolMessage<import("@langchain/core/messages").MessageStructure<import("@langchain/core/messages").MessageToolSet>>[];
|
|
71
|
+
jumpTo: string;
|
|
72
|
+
} | {
|
|
73
|
+
messages: ToolMessage<import("@langchain/core/messages").MessageStructure<import("@langchain/core/messages").MessageToolSet>>[];
|
|
74
|
+
jumpTo?: undefined;
|
|
75
|
+
} | null>;
|
|
61
76
|
/**
|
|
62
77
|
* Get the Frisk session from the RunnableConfig
|
|
63
78
|
*/
|
|
64
79
|
private resolveFriskSession;
|
|
65
|
-
private
|
|
80
|
+
private filterPendingApprovalRequestsByToolCallId;
|
|
81
|
+
private makeInterruptPayload;
|
|
82
|
+
private getToolCallResumeActionsByIdFromInterruptResponse;
|
|
83
|
+
private createEscalatedCanceledToolMessage;
|
|
84
|
+
private createEscalatedExpiredToolMessage;
|
|
85
|
+
private createEscalatedRejectedToolMessage;
|
|
86
|
+
private createDeniedToolCallMessage;
|
|
87
|
+
private createSyntheticToolCallMessage;
|
|
66
88
|
}
|
|
67
89
|
//# sourceMappingURL=frisk-tool-middleware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frisk-tool-middleware.d.ts","sourceRoot":"","sources":["../../../src/adapters/langchain/frisk-tool-middleware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"frisk-tool-middleware.d.ts","sourceRoot":"","sources":["../../../src/adapters/langchain/frisk-tool-middleware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAa,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAmBxE,OAAO,EAAE,sBAAsB,EAAa,MAAM,eAAe,CAAA;AAGjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAMlD,OAAO,EAEL,qBAAqB,EAEtB,MAAM,SAAS,CAAA;AAEhB;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,OAAO,CAAA;KACvB,CAAA;IACD,OAAO,CAAC,EAAE,sBAAsB,CAAA;CACjC;AAED,eAAO,MAAM,4BAA4B,kSAAkS,CAAA;AAE3U,eAAO,MAAM,sCAAsC,8TAA8T,CAAA;AAEjX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,mBAAmB,CAC9B,MAAM,SAAS;IAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;CAAE,EACxE,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB;IAG9D,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;gBAEjC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,0BAA0B;IAQvE;;OAEG;IACH,IAAI,KAAK,IAAI,cAAc,CAE1B;IAEY,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;;;;;;;IAmOjE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,yCAAyC;IAYjD,OAAO,CAAC,oBAAoB;IA0B5B,OAAO,CAAC,iDAAiD;IAoEzD,OAAO,CAAC,kCAAkC;IAO1C,OAAO,CAAC,iCAAiC;IAOzC,OAAO,CAAC,kCAAkC;IAM1C,OAAO,CAAC,2BAA2B;IAQnC,OAAO,CAAC,8BAA8B;CAYvC"}
|