@mastra/core 0.12.0-alpha.1 → 0.12.0-alpha.3
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/agent/input-processor/processors.d.ts +1 -0
- package/dist/agent/index.cjs +24 -4
- package/dist/agent/index.d.ts +11 -2
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +2 -2
- package/dist/agent/input-processor/index.d.ts +10 -0
- package/dist/agent/input-processor/index.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/index.d.ts +6 -0
- package/dist/agent/input-processor/processors/index.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/language-detector.d.ts +142 -0
- package/dist/agent/input-processor/processors/language-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/moderation.d.ts +122 -0
- package/dist/agent/input-processor/processors/moderation.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/pii-detector.d.ts +176 -0
- package/dist/agent/input-processor/processors/pii-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts +118 -0
- package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/unicode-normalizer.d.ts +34 -0
- package/dist/agent/input-processor/processors/unicode-normalizer.d.ts.map +1 -0
- package/dist/agent/input-processor/runner.d.ts +4 -0
- package/dist/agent/input-processor/runner.d.ts.map +1 -0
- package/dist/agent/message-list/index.d.ts +5 -0
- package/dist/agent/message-list/index.d.ts.map +1 -1
- package/dist/agent/trip-wire.d.ts +4 -0
- package/dist/agent/trip-wire.d.ts.map +1 -0
- package/dist/agent/types.d.ts +2 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/{chunk-XSEIFC4O.js → chunk-A5M6H62S.js} +1419 -25
- package/dist/{chunk-BP2Y7DKK.js → chunk-AMETU3JF.js} +43 -9
- package/dist/{chunk-7OWQ47GV.js → chunk-AQIQJHSJ.js} +1 -1
- package/dist/{chunk-3CA2IRYB.js → chunk-AW3O6LVD.js} +4 -3
- package/dist/{chunk-NFW7IT6E.cjs → chunk-CC3AUZ4I.cjs} +5 -4
- package/dist/{chunk-7GWHQCIA.cjs → chunk-DB5ATCFQ.cjs} +2 -2
- package/dist/{chunk-O3YMKNEP.cjs → chunk-EUUWJR6D.cjs} +43 -9
- package/dist/{chunk-OUNJXFDT.js → chunk-GCQ4KKLG.js} +1 -1
- package/dist/{chunk-IKMYFSCS.js → chunk-IGFHXXJK.js} +12 -0
- package/dist/{chunk-OJ4D6A2W.cjs → chunk-KJ26LMYV.cjs} +10 -6
- package/dist/{chunk-AFVFQE25.cjs → chunk-KZZXSYED.cjs} +7 -1
- package/dist/{chunk-YRTB3QT6.cjs → chunk-LJJZMGB6.cjs} +1447 -46
- package/dist/{chunk-6GPLJIFB.js → chunk-MBZBQG2W.js} +7 -1
- package/dist/{chunk-RB6MUY7D.js → chunk-PUPMEPC2.js} +7 -3
- package/dist/{chunk-TCS63CEG.cjs → chunk-Q56KGUAY.cjs} +2 -2
- package/dist/{chunk-Y7LDWGY5.cjs → chunk-SSJT3HFU.cjs} +4 -4
- package/dist/{chunk-AVIFI54E.js → chunk-URX64UP7.js} +1 -1
- package/dist/{chunk-3EVETPCH.cjs → chunk-X4IVDI6Q.cjs} +2 -2
- package/dist/{chunk-C2VITVPN.js → chunk-XM4DZF2K.js} +1 -1
- package/dist/{chunk-2QYQYDSE.cjs → chunk-XXJ65TNC.cjs} +12 -0
- package/dist/index.cjs +36 -36
- package/dist/index.js +11 -11
- package/dist/llm/index.d.ts +1 -1
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/model/base.types.d.ts +8 -4
- package/dist/llm/model/base.types.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +4 -4
- package/dist/memory/index.js +1 -1
- package/dist/memory/memory.d.ts +21 -4
- package/dist/memory/memory.d.ts.map +1 -1
- package/dist/network/index.cjs +2 -2
- package/dist/network/index.js +1 -1
- package/dist/network/vNext/index.cjs +13 -13
- package/dist/network/vNext/index.d.ts +11 -11
- package/dist/network/vNext/index.js +2 -2
- package/dist/relevance/index.cjs +4 -4
- package/dist/relevance/index.js +1 -1
- package/dist/scores/index.cjs +7 -7
- package/dist/scores/index.js +2 -2
- package/dist/server/index.cjs +2 -2
- package/dist/server/index.js +1 -1
- package/dist/storage/base.d.ts +6 -4
- package/dist/storage/base.d.ts.map +1 -1
- package/dist/storage/domains/memory/base.d.ts +7 -4
- package/dist/storage/domains/memory/base.d.ts.map +1 -1
- package/dist/storage/domains/memory/inmemory.d.ts +6 -4
- package/dist/storage/domains/memory/inmemory.d.ts.map +1 -1
- package/dist/storage/index.cjs +101 -19
- package/dist/storage/index.js +96 -14
- package/dist/storage/mock.d.ts +12 -4
- package/dist/storage/mock.d.ts.map +1 -1
- package/dist/storage/types.d.ts +6 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/telemetry/index.cjs +7 -7
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/telemetry.d.ts.map +1 -1
- package/dist/telemetry/telemetry.decorators.d.ts.map +1 -1
- package/dist/telemetry/utility.d.ts +2 -0
- package/dist/telemetry/utility.d.ts.map +1 -1
- package/dist/tts/index.cjs +2 -2
- package/dist/tts/index.js +1 -1
- package/dist/types.d.ts +3 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/vector/types.d.ts +14 -0
- package/dist/vector/types.d.ts.map +1 -1
- package/dist/voice/index.cjs +4 -4
- package/dist/voice/index.js +1 -1
- package/dist/workflows/default.d.ts.map +1 -1
- package/dist/workflows/index.cjs +10 -10
- package/dist/workflows/index.js +1 -1
- package/dist/workflows/legacy/index.cjs +22 -22
- package/dist/workflows/legacy/index.js +1 -1
- package/package.json +13 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './../../dist/agent/index.d.ts';
|
package/dist/agent/index.cjs
CHANGED
|
@@ -1,15 +1,35 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkLJJZMGB6_cjs = require('../chunk-LJJZMGB6.cjs');
|
|
4
|
+
var chunkXXJ65TNC_cjs = require('../chunk-XXJ65TNC.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "Agent", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkLJJZMGB6_cjs.Agent; }
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "LanguageDetector", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return chunkLJJZMGB6_cjs.LanguageDetector; }
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "ModerationInputProcessor", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () { return chunkLJJZMGB6_cjs.ModerationInputProcessor; }
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(exports, "PIIDetector", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function () { return chunkLJJZMGB6_cjs.PIIDetector; }
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "PromptInjectionDetector", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () { return chunkLJJZMGB6_cjs.PromptInjectionDetector; }
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "UnicodeNormalizer", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () { return chunkLJJZMGB6_cjs.UnicodeNormalizer; }
|
|
11
31
|
});
|
|
12
32
|
Object.defineProperty(exports, "MessageList", {
|
|
13
33
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
34
|
+
get: function () { return chunkXXJ65TNC_cjs.MessageList; }
|
|
15
35
|
});
|
package/dist/agent/index.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ import type { MessageInput, UIMessageWithMetadata } from './message-list';
|
|
|
26
26
|
import { SaveQueueManager } from './save-queue';
|
|
27
27
|
import type { AgentConfig, MastraLanguageModel, AgentGenerateOptions, AgentStreamOptions, AiMessageType, ToolsetsInput, ToolsInput } from './types';
|
|
28
28
|
export type { ChunkType, MastraAgentStream } from '../stream/MastraAgentStream';
|
|
29
|
+
export * from './input-processor';
|
|
29
30
|
export { MessageList };
|
|
30
31
|
export * from './types';
|
|
31
32
|
type IDGenerator = () => string;
|
|
@@ -118,6 +119,7 @@ export declare class Agent<TAgentId extends string = string, TTools extends Tool
|
|
|
118
119
|
messages: CoreMessage[];
|
|
119
120
|
}>;
|
|
120
121
|
private getMemoryTools;
|
|
122
|
+
private __runInputProcessors;
|
|
121
123
|
private getMemoryMessages;
|
|
122
124
|
private getAssignedTools;
|
|
123
125
|
private getToolsets;
|
|
@@ -154,17 +156,23 @@ export declare class Agent<TAgentId extends string = string, TTools extends Tool
|
|
|
154
156
|
writableStream?: WritableStream<ChunkType>;
|
|
155
157
|
}): {
|
|
156
158
|
before: () => Promise<{
|
|
159
|
+
tripwire?: boolean | undefined;
|
|
160
|
+
tripwireReason?: string | undefined;
|
|
157
161
|
messageObjects: CoreMessage[];
|
|
158
162
|
convertedTools: Record<string, CoreTool>;
|
|
163
|
+
threadExists: boolean;
|
|
164
|
+
thread: undefined;
|
|
159
165
|
messageList: MessageList;
|
|
160
|
-
thread?: undefined;
|
|
161
166
|
} | {
|
|
167
|
+
threadExists: boolean;
|
|
168
|
+
tripwire?: boolean | undefined;
|
|
169
|
+
tripwireReason?: string | undefined;
|
|
162
170
|
convertedTools: Record<string, CoreTool>;
|
|
163
171
|
thread: StorageThreadType;
|
|
164
172
|
messageList: MessageList;
|
|
165
173
|
messageObjects: CoreMessage[];
|
|
166
174
|
}>;
|
|
167
|
-
after: ({ result, thread: threadAfter, threadId, memoryConfig, outputText, runId, messageList, toolCallsCollection, structuredOutput, }: {
|
|
175
|
+
after: ({ result, thread: threadAfter, threadId, memoryConfig, outputText, runId, messageList, threadExists, toolCallsCollection, structuredOutput, }: {
|
|
168
176
|
runId: string;
|
|
169
177
|
result: Record<string, any>;
|
|
170
178
|
thread: StorageThreadType | null | undefined;
|
|
@@ -172,6 +180,7 @@ export declare class Agent<TAgentId extends string = string, TTools extends Tool
|
|
|
172
180
|
memoryConfig: MemoryConfig | undefined;
|
|
173
181
|
outputText: string;
|
|
174
182
|
messageList: MessageList;
|
|
183
|
+
threadExists: boolean;
|
|
175
184
|
toolCallsCollection: Map<string, any>;
|
|
176
185
|
structuredOutput?: boolean;
|
|
177
186
|
}) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,cAAc,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAkB,SAAS,EAAE,MAAM,IAAI,CAAC;AAEvG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAe,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { Agent } from '../chunk-
|
|
2
|
-
export { MessageList } from '../chunk-
|
|
1
|
+
export { Agent, LanguageDetector, ModerationInputProcessor, PIIDetector, PromptInjectionDetector, UnicodeNormalizer } from '../chunk-A5M6H62S.js';
|
|
2
|
+
export { MessageList } from '../chunk-IGFHXXJK.js';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { MastraMessageV2 } from '../message-list';
|
|
2
|
+
export interface InputProcessor {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
process(args: {
|
|
5
|
+
messages: MastraMessageV2[];
|
|
6
|
+
abort: (reason?: string) => never;
|
|
7
|
+
}): Promise<MastraMessageV2[]> | MastraMessageV2[];
|
|
8
|
+
}
|
|
9
|
+
export * from './processors';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/input-processor/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,IAAI,EAAE;QACZ,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;KACnC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC;CACpD;AAED,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { UnicodeNormalizer, type UnicodeNormalizerOptions } from './unicode-normalizer';
|
|
2
|
+
export { ModerationInputProcessor, type ModerationOptions, type ModerationResult, type ModerationCategories, type ModerationCategoryScores, } from './moderation';
|
|
3
|
+
export { PromptInjectionDetector, type PromptInjectionOptions, type PromptInjectionResult, type PromptInjectionCategories, type PromptInjectionCategoryScores, } from './prompt-injection-detector';
|
|
4
|
+
export { PIIDetector, type PIIDetectorOptions, type PIIDetectionResult, type PIICategories, type PIICategoryScores, type PIIDetection, } from './pii-detector';
|
|
5
|
+
export { LanguageDetector, type LanguageDetectorOptions, type LanguageDetectionResult, type LanguageDetection, type TranslationResult, } from './language-detector';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agent/input-processor/processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,wBAAwB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,GAC9B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,GACnC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import type { MastraLanguageModel } from '../../index';
|
|
2
|
+
import type { MastraMessageV2 } from '../../message-list';
|
|
3
|
+
import type { InputProcessor } from '../index';
|
|
4
|
+
/**
|
|
5
|
+
* Language detection result for a single text
|
|
6
|
+
*/
|
|
7
|
+
export interface LanguageDetection {
|
|
8
|
+
language: string;
|
|
9
|
+
confidence: number;
|
|
10
|
+
iso_code: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Translation result
|
|
14
|
+
*/
|
|
15
|
+
export interface TranslationResult {
|
|
16
|
+
original_text: string;
|
|
17
|
+
original_language: string;
|
|
18
|
+
translated_text: string;
|
|
19
|
+
target_language: string;
|
|
20
|
+
confidence: number;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Language detection and translation result
|
|
24
|
+
*/
|
|
25
|
+
export interface LanguageDetectionResult {
|
|
26
|
+
detected_language: string;
|
|
27
|
+
iso_code: string;
|
|
28
|
+
confidence: number;
|
|
29
|
+
is_target_language: boolean;
|
|
30
|
+
translation?: TranslationResult;
|
|
31
|
+
reason?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Configuration options for LanguageDetector
|
|
35
|
+
*/
|
|
36
|
+
export interface LanguageDetectorOptions {
|
|
37
|
+
/** Model configuration for the detection/translation agent */
|
|
38
|
+
model: MastraLanguageModel;
|
|
39
|
+
/**
|
|
40
|
+
* Target language(s) for the project.
|
|
41
|
+
* If content is detected in a different language, it may be translated.
|
|
42
|
+
* Can be language name ('English') or ISO code ('en')
|
|
43
|
+
*/
|
|
44
|
+
targetLanguages?: string[];
|
|
45
|
+
/**
|
|
46
|
+
* Confidence threshold for language detection (0-1, default: 0.7)
|
|
47
|
+
* Only process when detection confidence exceeds this threshold
|
|
48
|
+
*/
|
|
49
|
+
threshold?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Strategy when non-target language is detected:
|
|
52
|
+
* - 'detect': Only detect language, don't translate (default)
|
|
53
|
+
* - 'translate': Automatically translate to target language
|
|
54
|
+
* - 'block': Reject content not in target language
|
|
55
|
+
* - 'warn': Log warning but allow content through
|
|
56
|
+
*/
|
|
57
|
+
strategy?: 'detect' | 'translate' | 'block' | 'warn';
|
|
58
|
+
/**
|
|
59
|
+
* Whether to preserve original content in message metadata (default: true)
|
|
60
|
+
* Useful for audit trails and debugging
|
|
61
|
+
*/
|
|
62
|
+
preserveOriginal?: boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Custom detection instructions for the agent
|
|
65
|
+
* If not provided, uses default instructions
|
|
66
|
+
*/
|
|
67
|
+
instructions?: string;
|
|
68
|
+
/**
|
|
69
|
+
* Minimum text length to perform detection (default: 10)
|
|
70
|
+
* Short text is often unreliable for language detection
|
|
71
|
+
*/
|
|
72
|
+
minTextLength?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Whether to include detailed detection info in logs (default: false)
|
|
75
|
+
*/
|
|
76
|
+
includeDetectionDetails?: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Translation quality preference:
|
|
79
|
+
* - 'speed': Prioritize fast translation
|
|
80
|
+
* - 'quality': Prioritize translation accuracy (default)
|
|
81
|
+
* - 'balanced': Balance between speed and quality
|
|
82
|
+
*/
|
|
83
|
+
translationQuality?: 'speed' | 'quality' | 'balanced';
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* LanguageDetector identifies the language of input text and optionally
|
|
87
|
+
* translates it to a target language for consistent processing.
|
|
88
|
+
*
|
|
89
|
+
* Supports 100+ languages via internal agent-based detection and translation,
|
|
90
|
+
* making it ideal for multilingual AI applications and global deployment.
|
|
91
|
+
*/
|
|
92
|
+
export declare class LanguageDetector implements InputProcessor {
|
|
93
|
+
readonly name = "language-detector";
|
|
94
|
+
private detectionAgent;
|
|
95
|
+
private targetLanguages;
|
|
96
|
+
private threshold;
|
|
97
|
+
private strategy;
|
|
98
|
+
private preserveOriginal;
|
|
99
|
+
private minTextLength;
|
|
100
|
+
private includeDetectionDetails;
|
|
101
|
+
private translationQuality;
|
|
102
|
+
private static readonly DEFAULT_TARGET_LANGUAGES;
|
|
103
|
+
private static readonly LANGUAGE_MAP;
|
|
104
|
+
constructor(options: LanguageDetectorOptions);
|
|
105
|
+
process(args: {
|
|
106
|
+
messages: MastraMessageV2[];
|
|
107
|
+
abort: (reason?: string) => never;
|
|
108
|
+
}): Promise<MastraMessageV2[]>;
|
|
109
|
+
/**
|
|
110
|
+
* Detect language using the internal agent
|
|
111
|
+
*/
|
|
112
|
+
private detectLanguage;
|
|
113
|
+
/**
|
|
114
|
+
* Handle detected language based on strategy
|
|
115
|
+
*/
|
|
116
|
+
private handleDetectedLanguage;
|
|
117
|
+
/**
|
|
118
|
+
* Create a translated message with original preserved in metadata
|
|
119
|
+
*/
|
|
120
|
+
private createTranslatedMessage;
|
|
121
|
+
/**
|
|
122
|
+
* Add language detection metadata to message
|
|
123
|
+
*/
|
|
124
|
+
private addLanguageMetadata;
|
|
125
|
+
/**
|
|
126
|
+
* Extract text content from message for analysis
|
|
127
|
+
*/
|
|
128
|
+
private extractTextContent;
|
|
129
|
+
/**
|
|
130
|
+
* Get language code from language name or vice versa
|
|
131
|
+
*/
|
|
132
|
+
private getLanguageCode;
|
|
133
|
+
/**
|
|
134
|
+
* Create default detection and translation instructions
|
|
135
|
+
*/
|
|
136
|
+
private createDefaultInstructions;
|
|
137
|
+
/**
|
|
138
|
+
* Create detection prompt for the agent
|
|
139
|
+
*/
|
|
140
|
+
private createDetectionPrompt;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=language-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"language-detector.d.ts","sourceRoot":"","sources":["../../../../src/agent/input-processor/processors/language-detector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,8DAA8D;IAC9D,KAAK,EAAE,mBAAmB,CAAC;IAE3B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;IAErD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;CACvD;AAED;;;;;;GAMG;AACH,qBAAa,gBAAiB,YAAW,cAAc;IACrD,QAAQ,CAAC,IAAI,uBAAuB;IAEpC,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,gBAAgB,CAAU;IAClC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,uBAAuB,CAAU;IACzC,OAAO,CAAC,kBAAkB,CAAmC;IAG7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAqB;IAGrE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAsClC;gBAEU,OAAO,EAAE,uBAAuB;IAiBtC,OAAO,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;QAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA8CnH;;OAEG;YACW,cAAc;IAsC5B;;OAEG;YACW,sBAAsB;IAgDpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAiB/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAoDjC;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAkB9B"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import type { MastraLanguageModel } from '../../index';
|
|
2
|
+
import type { MastraMessageV2 } from '../../message-list';
|
|
3
|
+
import type { InputProcessor } from '../index';
|
|
4
|
+
/**
|
|
5
|
+
* Moderation categories based on OpenAI's structure but configurable
|
|
6
|
+
*/
|
|
7
|
+
export interface ModerationCategories {
|
|
8
|
+
hate?: boolean;
|
|
9
|
+
'hate/threatening'?: boolean;
|
|
10
|
+
harassment?: boolean;
|
|
11
|
+
'harassment/threatening'?: boolean;
|
|
12
|
+
'self-harm'?: boolean;
|
|
13
|
+
'self-harm/intent'?: boolean;
|
|
14
|
+
'self-harm/instructions'?: boolean;
|
|
15
|
+
sexual?: boolean;
|
|
16
|
+
'sexual/minors'?: boolean;
|
|
17
|
+
violence?: boolean;
|
|
18
|
+
'violence/graphic'?: boolean;
|
|
19
|
+
[customCategory: string]: boolean | undefined;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Confidence scores for each moderation category (0-1)
|
|
23
|
+
*/
|
|
24
|
+
export interface ModerationCategoryScores {
|
|
25
|
+
hate?: number;
|
|
26
|
+
'hate/threatening'?: number;
|
|
27
|
+
harassment?: number;
|
|
28
|
+
'harassment/threatening'?: number;
|
|
29
|
+
'self-harm'?: number;
|
|
30
|
+
'self-harm/intent'?: number;
|
|
31
|
+
'self-harm/instructions'?: number;
|
|
32
|
+
sexual?: number;
|
|
33
|
+
'sexual/minors'?: number;
|
|
34
|
+
violence?: number;
|
|
35
|
+
'violence/graphic'?: number;
|
|
36
|
+
[customCategory: string]: number | undefined;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Result structure similar to OpenAI's moderation API
|
|
40
|
+
*/
|
|
41
|
+
export interface ModerationResult {
|
|
42
|
+
flagged: boolean;
|
|
43
|
+
categories: ModerationCategories;
|
|
44
|
+
category_scores: ModerationCategoryScores;
|
|
45
|
+
reason?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Configuration options for ModerationInputProcessor
|
|
49
|
+
*/
|
|
50
|
+
export interface ModerationOptions {
|
|
51
|
+
/** Model configuration for the moderation agent */
|
|
52
|
+
model: MastraLanguageModel;
|
|
53
|
+
/**
|
|
54
|
+
* Categories to check for moderation.
|
|
55
|
+
* If not specified, uses default OpenAI categories.
|
|
56
|
+
*/
|
|
57
|
+
categories?: string[];
|
|
58
|
+
/**
|
|
59
|
+
* Confidence threshold for flagging (0-1, default: 0.5)
|
|
60
|
+
* Content is flagged if any category score exceeds this threshold
|
|
61
|
+
*/
|
|
62
|
+
threshold?: number;
|
|
63
|
+
/**
|
|
64
|
+
* Strategy when content is flagged:
|
|
65
|
+
* - 'block': Reject the entire input with an error (default)
|
|
66
|
+
* - 'warn': Log warning but allow content through
|
|
67
|
+
* - 'filter': Remove flagged messages but continue with remaining
|
|
68
|
+
*/
|
|
69
|
+
strategy?: 'block' | 'warn' | 'filter';
|
|
70
|
+
/**
|
|
71
|
+
* Custom moderation instructions for the agent
|
|
72
|
+
* If not provided, uses default instructions based on categories
|
|
73
|
+
*/
|
|
74
|
+
instructions?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Whether to include confidence scores in logs (default: false)
|
|
77
|
+
* Useful for tuning thresholds and debugging
|
|
78
|
+
*/
|
|
79
|
+
includeScores?: boolean;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* ModerationInputProcessor uses an internal Mastra agent to evaluate content
|
|
83
|
+
* against configurable moderation categories for content safety.
|
|
84
|
+
*
|
|
85
|
+
* Provides flexible moderation with custom categories, thresholds, and strategies
|
|
86
|
+
* while maintaining compatibility with OpenAI's moderation API structure.
|
|
87
|
+
*/
|
|
88
|
+
export declare class ModerationInputProcessor implements InputProcessor {
|
|
89
|
+
readonly name = "moderation";
|
|
90
|
+
private moderationAgent;
|
|
91
|
+
private categories;
|
|
92
|
+
private threshold;
|
|
93
|
+
private strategy;
|
|
94
|
+
private includeScores;
|
|
95
|
+
private static readonly DEFAULT_CATEGORIES;
|
|
96
|
+
constructor(options: ModerationOptions);
|
|
97
|
+
process(args: {
|
|
98
|
+
messages: MastraMessageV2[];
|
|
99
|
+
abort: (reason?: string) => never;
|
|
100
|
+
}): Promise<MastraMessageV2[]>;
|
|
101
|
+
/**
|
|
102
|
+
* Moderate content using the internal agent
|
|
103
|
+
*/
|
|
104
|
+
private moderateContent;
|
|
105
|
+
/**
|
|
106
|
+
* Handle flagged content based on strategy
|
|
107
|
+
*/
|
|
108
|
+
private handleFlaggedContent;
|
|
109
|
+
/**
|
|
110
|
+
* Extract text content from message for moderation
|
|
111
|
+
*/
|
|
112
|
+
private extractTextContent;
|
|
113
|
+
/**
|
|
114
|
+
* Create default moderation instructions
|
|
115
|
+
*/
|
|
116
|
+
private createDefaultInstructions;
|
|
117
|
+
/**
|
|
118
|
+
* Create moderation prompt for the agent
|
|
119
|
+
*/
|
|
120
|
+
private createModerationPrompt;
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=moderation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moderation.d.ts","sourceRoot":"","sources":["../../../../src/agent/input-processor/processors/moderation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import type { MastraLanguageModel } from '../../index';
|
|
2
|
+
import type { MastraMessageV2 } from '../../message-list';
|
|
3
|
+
import type { InputProcessor } from '../index';
|
|
4
|
+
/**
|
|
5
|
+
* PII categories for detection and redaction
|
|
6
|
+
*/
|
|
7
|
+
export interface PIICategories {
|
|
8
|
+
email?: boolean;
|
|
9
|
+
phone?: boolean;
|
|
10
|
+
'credit-card'?: boolean;
|
|
11
|
+
ssn?: boolean;
|
|
12
|
+
'api-key'?: boolean;
|
|
13
|
+
'ip-address'?: boolean;
|
|
14
|
+
name?: boolean;
|
|
15
|
+
address?: boolean;
|
|
16
|
+
'date-of-birth'?: boolean;
|
|
17
|
+
url?: boolean;
|
|
18
|
+
uuid?: boolean;
|
|
19
|
+
'crypto-wallet'?: boolean;
|
|
20
|
+
iban?: boolean;
|
|
21
|
+
[customType: string]: boolean | undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Confidence scores for each PII category (0-1)
|
|
25
|
+
*/
|
|
26
|
+
export interface PIICategoryScores {
|
|
27
|
+
email?: number;
|
|
28
|
+
phone?: number;
|
|
29
|
+
'credit-card'?: number;
|
|
30
|
+
ssn?: number;
|
|
31
|
+
'api-key'?: number;
|
|
32
|
+
'ip-address'?: number;
|
|
33
|
+
name?: number;
|
|
34
|
+
address?: number;
|
|
35
|
+
'date-of-birth'?: number;
|
|
36
|
+
url?: number;
|
|
37
|
+
uuid?: number;
|
|
38
|
+
'crypto-wallet'?: number;
|
|
39
|
+
iban?: number;
|
|
40
|
+
[customType: string]: number | undefined;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Individual PII detection with location and redaction info
|
|
44
|
+
*/
|
|
45
|
+
export interface PIIDetection {
|
|
46
|
+
type: string;
|
|
47
|
+
value: string;
|
|
48
|
+
confidence: number;
|
|
49
|
+
start: number;
|
|
50
|
+
end: number;
|
|
51
|
+
redacted_value?: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Result structure for PII detection (simplified for minimal tokens)
|
|
55
|
+
*/
|
|
56
|
+
export interface PIIDetectionResult {
|
|
57
|
+
category_scores?: PIICategoryScores;
|
|
58
|
+
detections?: PIIDetection[];
|
|
59
|
+
redacted_content?: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Configuration options for PIIDetector
|
|
63
|
+
*/
|
|
64
|
+
export interface PIIDetectorOptions {
|
|
65
|
+
/** Model configuration for the detection agent */
|
|
66
|
+
model: MastraLanguageModel;
|
|
67
|
+
/**
|
|
68
|
+
* PII types to detect.
|
|
69
|
+
* If not specified, uses default types.
|
|
70
|
+
*/
|
|
71
|
+
detectionTypes?: string[];
|
|
72
|
+
/**
|
|
73
|
+
* Confidence threshold for flagging (0-1, default: 0.6)
|
|
74
|
+
* PII is flagged if any category score exceeds this threshold
|
|
75
|
+
*/
|
|
76
|
+
threshold?: number;
|
|
77
|
+
/**
|
|
78
|
+
* Strategy when PII is detected:
|
|
79
|
+
* - 'block': Reject the entire input with an error
|
|
80
|
+
* - 'warn': Log warning but allow content through
|
|
81
|
+
* - 'filter': Remove flagged messages but continue with remaining
|
|
82
|
+
* - 'redact': Replace detected PII with redacted versions (default)
|
|
83
|
+
*/
|
|
84
|
+
strategy?: 'block' | 'warn' | 'filter' | 'redact';
|
|
85
|
+
/**
|
|
86
|
+
* Redaction method for PII:
|
|
87
|
+
* - 'mask': Replace with asterisks (***@***.com)
|
|
88
|
+
* - 'hash': Replace with SHA256 hash
|
|
89
|
+
* - 'remove': Remove entirely
|
|
90
|
+
* - 'placeholder': Replace with type placeholder ([EMAIL], [PHONE], etc.)
|
|
91
|
+
*/
|
|
92
|
+
redactionMethod?: 'mask' | 'hash' | 'remove' | 'placeholder';
|
|
93
|
+
/**
|
|
94
|
+
* Custom detection instructions for the agent
|
|
95
|
+
* If not provided, uses default instructions based on detection types
|
|
96
|
+
*/
|
|
97
|
+
instructions?: string;
|
|
98
|
+
/**
|
|
99
|
+
* Whether to include detection details in logs (default: false)
|
|
100
|
+
* Useful for compliance auditing and debugging
|
|
101
|
+
*/
|
|
102
|
+
includeDetections?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Whether to preserve PII format during redaction (default: true)
|
|
105
|
+
* When true, maintains structure like ***-**-1234 for phone numbers
|
|
106
|
+
*/
|
|
107
|
+
preserveFormat?: boolean;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* PIIDetector uses an internal Mastra agent to identify and redact
|
|
111
|
+
* personally identifiable information for privacy compliance.
|
|
112
|
+
*
|
|
113
|
+
* Supports multiple redaction strategies and maintains audit trails
|
|
114
|
+
* for compliance with GDPR, CCPA, HIPAA, and other privacy regulations.
|
|
115
|
+
*/
|
|
116
|
+
export declare class PIIDetector implements InputProcessor {
|
|
117
|
+
readonly name = "pii-detector";
|
|
118
|
+
private detectionAgent;
|
|
119
|
+
private detectionTypes;
|
|
120
|
+
private threshold;
|
|
121
|
+
private strategy;
|
|
122
|
+
private redactionMethod;
|
|
123
|
+
private includeDetections;
|
|
124
|
+
private preserveFormat;
|
|
125
|
+
private static readonly DEFAULT_DETECTION_TYPES;
|
|
126
|
+
constructor(options: PIIDetectorOptions);
|
|
127
|
+
process(args: {
|
|
128
|
+
messages: MastraMessageV2[];
|
|
129
|
+
abort: (reason?: string) => never;
|
|
130
|
+
}): Promise<MastraMessageV2[]>;
|
|
131
|
+
/**
|
|
132
|
+
* Detect PII using the internal agent
|
|
133
|
+
*/
|
|
134
|
+
private detectPII;
|
|
135
|
+
/**
|
|
136
|
+
* Determine if PII is flagged based on detections or category scores above threshold
|
|
137
|
+
*/
|
|
138
|
+
private isPIIFlagged;
|
|
139
|
+
/**
|
|
140
|
+
* Handle detected PII based on strategy
|
|
141
|
+
*/
|
|
142
|
+
private handleDetectedPII;
|
|
143
|
+
/**
|
|
144
|
+
* Create a redacted message with PII removed/masked
|
|
145
|
+
*/
|
|
146
|
+
private createRedactedMessage;
|
|
147
|
+
/**
|
|
148
|
+
* Apply redaction method to content
|
|
149
|
+
*/
|
|
150
|
+
private applyRedactionMethod;
|
|
151
|
+
/**
|
|
152
|
+
* Redact individual PII value based on method and type
|
|
153
|
+
*/
|
|
154
|
+
private redactValue;
|
|
155
|
+
/**
|
|
156
|
+
* Mask PII value while optionally preserving format
|
|
157
|
+
*/
|
|
158
|
+
private maskValue;
|
|
159
|
+
/**
|
|
160
|
+
* Hash PII value using SHA256
|
|
161
|
+
*/
|
|
162
|
+
private hashValue;
|
|
163
|
+
/**
|
|
164
|
+
* Extract text content from message for analysis
|
|
165
|
+
*/
|
|
166
|
+
private extractTextContent;
|
|
167
|
+
/**
|
|
168
|
+
* Create default detection instructions
|
|
169
|
+
*/
|
|
170
|
+
private createDefaultInstructions;
|
|
171
|
+
/**
|
|
172
|
+
* Create detection prompt for the agent
|
|
173
|
+
*/
|
|
174
|
+
private createDetectionPrompt;
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=pii-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pii-detector.d.ts","sourceRoot":"","sources":["../../../../src/agent/input-processor/processors/pii-detector.ts"],"names":[],"mappings":"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"}
|