@delofarag/ai-utils 1.7.1 → 1.7.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/dist/heart/agent.d.ts +11 -1
- package/dist/heart/agent.d.ts.map +1 -1
- package/dist/heart/agent.js +41 -22
- package/dist/heart/agent.js.map +1 -1
- package/dist/heart/deepAgent.d.ts +13 -1
- package/dist/heart/deepAgent.d.ts.map +1 -1
- package/dist/heart/deepAgent.js +77 -46
- package/dist/heart/deepAgent.js.map +1 -1
- package/dist/heart/tools/MCP.d.ts +45 -0
- package/dist/heart/tools/MCP.d.ts.map +1 -0
- package/dist/heart/tools/MCP.js +51 -0
- package/dist/heart/tools/MCP.js.map +1 -0
- package/dist/heart/tools/ToolRegistry.d.ts +7 -1
- package/dist/heart/tools/ToolRegistry.d.ts.map +1 -1
- package/dist/heart/tools/ToolRegistry.js.map +1 -1
- package/dist/helpers/cli-llms.d.ts +192 -0
- package/dist/helpers/cli-llms.d.ts.map +1 -0
- package/dist/helpers/cli-llms.js +737 -0
- package/dist/helpers/cli-llms.js.map +1 -0
- package/dist/helpers/llms.d.ts +32 -2
- package/dist/helpers/llms.d.ts.map +1 -1
- package/dist/helpers/llms.js +27 -0
- package/dist/helpers/llms.js.map +1 -1
- package/dist/imports.d.ts +10 -4
- package/dist/imports.d.ts.map +1 -1
- package/dist/imports.js +6 -3
- package/dist/imports.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +4 -2
- package/dist/chatbot.d.ts +0 -33
- package/dist/chatbot.d.ts.map +0 -1
- package/dist/chatbot.js +0 -72
- package/dist/chatbot.js.map +0 -1
- package/dist/functions/answerers/ask.d.ts +0 -6
- package/dist/functions/answerers/ask.d.ts.map +0 -1
- package/dist/functions/answerers/ask.js +0 -14
- package/dist/functions/answerers/ask.js.map +0 -1
- package/dist/functions/answerers/websearch.d.ts +0 -2
- package/dist/functions/answerers/websearch.d.ts.map +0 -1
- package/dist/functions/answerers/websearch.js +0 -19
- package/dist/functions/answerers/websearch.js.map +0 -1
- package/dist/functions/evaluators/classify.d.ts +0 -23
- package/dist/functions/evaluators/classify.d.ts.map +0 -1
- package/dist/functions/evaluators/classify.js +0 -61
- package/dist/functions/evaluators/classify.js.map +0 -1
- package/dist/functions/evaluators/decide.d.ts +0 -22
- package/dist/functions/evaluators/decide.d.ts.map +0 -1
- package/dist/functions/evaluators/decide.js +0 -52
- package/dist/functions/evaluators/decide.js.map +0 -1
- package/dist/functions/optimizers/promptify.d.ts +0 -8
- package/dist/functions/optimizers/promptify.d.ts.map +0 -1
- package/dist/functions/optimizers/promptify.js +0 -48
- package/dist/functions/optimizers/promptify.js.map +0 -1
- package/dist/functions/optimizers/ragify.d.ts +0 -6
- package/dist/functions/optimizers/ragify.d.ts.map +0 -1
- package/dist/functions/optimizers/ragify.js +0 -40
- package/dist/functions/optimizers/ragify.js.map +0 -1
- package/dist/functions/parsers/extract.d.ts +0 -9
- package/dist/functions/parsers/extract.d.ts.map +0 -1
- package/dist/functions/parsers/extract.js +0 -37
- package/dist/functions/parsers/extract.js.map +0 -1
- package/dist/functions/parsers/normalize.d.ts +0 -9
- package/dist/functions/parsers/normalize.d.ts.map +0 -1
- package/dist/functions/parsers/normalize.js +0 -63
- package/dist/functions/parsers/normalize.js.map +0 -1
- package/dist/functions/parsers/structure.d.ts +0 -9
- package/dist/functions/parsers/structure.d.ts.map +0 -1
- package/dist/functions/parsers/structure.js +0 -36
- package/dist/functions/parsers/structure.js.map +0 -1
- package/dist/functions/parsers/summarize.d.ts +0 -8
- package/dist/functions/parsers/summarize.d.ts.map +0 -1
- package/dist/functions/parsers/summarize.js +0 -46
- package/dist/functions/parsers/summarize.js.map +0 -1
- package/dist/heart/chatbot.d.ts +0 -55
- package/dist/heart/chatbot.d.ts.map +0 -1
- package/dist/heart/chatbot.js +0 -99
- package/dist/heart/chatbot.js.map +0 -1
- package/dist/heart/memorychain.d.ts +0 -60
- package/dist/heart/memorychain.d.ts.map +0 -1
- package/dist/heart/memorychain.js +0 -190
- package/dist/heart/memorychain.js.map +0 -1
- package/dist/heart/tools/BasicToolRegistry.d.ts +0 -22
- package/dist/heart/tools/BasicToolRegistry.d.ts.map +0 -1
- package/dist/heart/tools/BasicToolRegistry.js +0 -45
- package/dist/heart/tools/BasicToolRegistry.js.map +0 -1
- package/dist/heart/tools/CombinedRegistry.d.ts +0 -41
- package/dist/heart/tools/CombinedRegistry.d.ts.map +0 -1
- package/dist/heart/tools/CombinedRegistry.js +0 -46
- package/dist/heart/tools/CombinedRegistry.js.map +0 -1
- package/dist/heart/tools/RAGTool 2.d.ts +0 -1
- package/dist/heart/tools/RAGTool 2.d.ts.map +0 -1
- package/dist/heart/tools/RAGTool 2.js +0 -2
- package/dist/heart/tools/RAGTool 2.js.map +0 -1
- package/dist/heart/tools/ZodiosToolRegistry.d.ts +0 -22
- package/dist/heart/tools/ZodiosToolRegistry.d.ts.map +0 -1
- package/dist/heart/tools/ZodiosToolRegistry.js +0 -80
- package/dist/heart/tools/ZodiosToolRegistry.js.map +0 -1
- package/dist/heart/tools/zodios/CombinedRegistry.d.ts +0 -41
- package/dist/heart/tools/zodios/CombinedRegistry.d.ts.map +0 -1
- package/dist/heart/tools/zodios/CombinedRegistry.js +0 -58
- package/dist/heart/tools/zodios/CombinedRegistry.js.map +0 -1
- package/dist/heart/tools/zodios/ZodiosToolRegistry.d.ts +0 -22
- package/dist/heart/tools/zodios/ZodiosToolRegistry.d.ts.map +0 -1
- package/dist/heart/tools/zodios/ZodiosToolRegistry.js +0 -80
- package/dist/heart/tools/zodios/ZodiosToolRegistry.js.map +0 -1
- package/dist/helpers.d.ts +0 -51
- package/dist/helpers.d.ts.map +0 -1
- package/dist/helpers.js +0 -70
- package/dist/helpers.js.map +0 -1
- package/dist/magic-funcs/decide.d.ts +0 -1
- package/dist/magic-funcs/decide.d.ts.map +0 -1
- package/dist/magic-funcs/decide.js +0 -2
- package/dist/magic-funcs/decide.js.map +0 -1
- package/dist/magic-funcs/extract.d.ts +0 -1
- package/dist/magic-funcs/extract.d.ts.map +0 -1
- package/dist/magic-funcs/extract.js +0 -2
- package/dist/magic-funcs/extract.js.map +0 -1
- package/dist/magic-funcs/structure.d.ts +0 -1
- package/dist/magic-funcs/structure.d.ts.map +0 -1
- package/dist/magic-funcs/structure.js +0 -2
- package/dist/magic-funcs/structure.js.map +0 -1
- package/dist/magic-funcs/summarize.d.ts +0 -1
- package/dist/magic-funcs/summarize.d.ts.map +0 -1
- package/dist/magic-funcs/summarize.js +0 -2
- package/dist/magic-funcs/summarize.js.map +0 -1
- package/dist/memory.d.ts +0 -91
- package/dist/memory.d.ts.map +0 -1
- package/dist/memory.js +0 -350
- package/dist/memory.js.map +0 -1
- package/dist/rag.d.ts +0 -42
- package/dist/rag.d.ts.map +0 -1
- package/dist/rag.js +0 -66
- package/dist/rag.js.map +0 -1
- package/dist/session.d.ts +0 -12
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -31
- package/dist/session.js.map +0 -1
- package/dist/src/heart/agent.d.ts +0 -68
- package/dist/src/heart/agent.d.ts.map +0 -1
- package/dist/src/heart/agent.js +0 -140
- package/dist/src/heart/agent.js.map +0 -1
- package/dist/src/heart/chain.d.ts +0 -42
- package/dist/src/heart/chain.d.ts.map +0 -1
- package/dist/src/heart/chain.js +0 -152
- package/dist/src/heart/chain.js.map +0 -1
- package/dist/src/heart/chatbot.d.ts +0 -27
- package/dist/src/heart/chatbot.d.ts.map +0 -1
- package/dist/src/heart/chatbot.js +0 -100
- package/dist/src/heart/chatbot.js.map +0 -1
- package/dist/src/heart/memorychain.d.ts +0 -59
- package/dist/src/heart/memorychain.d.ts.map +0 -1
- package/dist/src/heart/memorychain.js +0 -165
- package/dist/src/heart/memorychain.js.map +0 -1
- package/dist/src/heart/tools/BasicToolRegistry.d.ts +0 -22
- package/dist/src/heart/tools/BasicToolRegistry.d.ts.map +0 -1
- package/dist/src/heart/tools/BasicToolRegistry.js +0 -45
- package/dist/src/heart/tools/BasicToolRegistry.js.map +0 -1
- package/dist/src/heart/tools/CombinedRegistry.d.ts +0 -41
- package/dist/src/heart/tools/CombinedRegistry.d.ts.map +0 -1
- package/dist/src/heart/tools/CombinedRegistry.js +0 -46
- package/dist/src/heart/tools/CombinedRegistry.js.map +0 -1
- package/dist/src/heart/tools/ZodiosToolRegistry.d.ts +0 -22
- package/dist/src/heart/tools/ZodiosToolRegistry.d.ts.map +0 -1
- package/dist/src/heart/tools/ZodiosToolRegistry.js +0 -80
- package/dist/src/heart/tools/ZodiosToolRegistry.js.map +0 -1
- package/dist/src/helpers.d.ts +0 -31
- package/dist/src/helpers.d.ts.map +0 -1
- package/dist/src/helpers.js +0 -105
- package/dist/src/helpers.js.map +0 -1
- package/dist/src/imports.d.ts +0 -44
- package/dist/src/imports.d.ts.map +0 -1
- package/dist/src/imports.js +0 -56
- package/dist/src/imports.js.map +0 -1
- package/dist/src/memory.d.ts +0 -78
- package/dist/src/memory.d.ts.map +0 -1
- package/dist/src/memory.js +0 -282
- package/dist/src/memory.js.map +0 -1
- package/dist/src/rag.d.ts +0 -58
- package/dist/src/rag.d.ts.map +0 -1
- package/dist/src/rag.js +0 -72
- package/dist/src/rag.js.map +0 -1
package/dist/heart/agent.d.ts
CHANGED
|
@@ -3,12 +3,19 @@ import type { InvokeInputBase, OutputSchema } from "./chain";
|
|
|
3
3
|
import { DynamicStructuredTool } from "../imports";
|
|
4
4
|
import { BaseChatModel } from "../imports";
|
|
5
5
|
import { BaseCheckpointSaver } from "../imports";
|
|
6
|
+
import { type MCPServersInput } from "./tools/MCP";
|
|
6
7
|
interface AgentProps<T extends OutputSchema | undefined = undefined> {
|
|
7
8
|
tools: DynamicStructuredTool[];
|
|
8
9
|
prompt?: string | Array<string>;
|
|
9
10
|
llm?: BaseChatModel;
|
|
10
11
|
output?: T;
|
|
11
12
|
checkpointer?: BaseCheckpointSaver;
|
|
13
|
+
/**
|
|
14
|
+
* MCP-Server, deren Tools dem Agent zur Verfügung gestellt werden.
|
|
15
|
+
* Pro invoke()/stream() wird ein frischer MultiServerMCPClient gebaut,
|
|
16
|
+
* die Tools per getTools() geladen und der Client am Ende wieder geschlossen.
|
|
17
|
+
*/
|
|
18
|
+
mcpServer?: MCPServersInput;
|
|
12
19
|
}
|
|
13
20
|
/**
|
|
14
21
|
* CONSTRUCTOR:
|
|
@@ -19,6 +26,7 @@ interface AgentProps<T extends OutputSchema | undefined = undefined> {
|
|
|
19
26
|
tools,
|
|
20
27
|
output,
|
|
21
28
|
checkpointer,
|
|
29
|
+
mcpServer,
|
|
22
30
|
}: AgentProps<T>) {
|
|
23
31
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p:string)=>{
|
|
24
32
|
if(typeof p === "string"){
|
|
@@ -36,6 +44,7 @@ interface AgentProps<T extends OutputSchema | undefined = undefined> {
|
|
|
36
44
|
this.llm = llm
|
|
37
45
|
this.output = output
|
|
38
46
|
this.checkpointer = checkpointer
|
|
47
|
+
this.mcpServer = mcpServer
|
|
39
48
|
}
|
|
40
49
|
* @param output - Zod-Schema: beschreibt die Struktur des Rückgabewerts von .invoke()
|
|
41
50
|
*/
|
|
@@ -46,8 +55,9 @@ export declare class Agent<T extends OutputSchema | undefined = undefined> {
|
|
|
46
55
|
private output;
|
|
47
56
|
private agent;
|
|
48
57
|
private checkpointer;
|
|
58
|
+
private mcpServer;
|
|
49
59
|
private should_use_output;
|
|
50
|
-
constructor({ prompt, llm, tools, output, checkpointer, }: AgentProps<T>);
|
|
60
|
+
constructor({ prompt, llm, tools, output, checkpointer, mcpServer, }: AgentProps<T>);
|
|
51
61
|
/** bruder ich weiss functional overloading tot aber muss hier sein! so kann sicher gesagt werden: wenn kein output gesetzt = string, wenn doch = z.infer<output>! */
|
|
52
62
|
invoke(this: Agent<undefined>, invokeInput: InvokeInputBase & {
|
|
53
63
|
thread_id?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAMhD,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AAqBvF,UAAU,UAAU,CAAC,CAAC,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS;IAC/D,KAAK,EAAE,qBAAqB,EAAE,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,aAAa,CAAA;IACnB,MAAM,CAAC,EAAE,CAAC,CAAA;IACV,YAAY,CAAC,EAAE,mBAAmB,CAAA;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAA;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,KAAK,CAAC,CAAC,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS;IAC7D,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,iBAAiB,CAAgB;gBAE7B,EACR,MAA6C,EAC7C,GAAoE,EACpE,KAAK,EACL,MAAM,EACN,YAAY,EACZ,SAAS,GACZ,EAAE,UAAU,CAAC,CAAC,CAAC;IAoBhB,qKAAqK;IACxJ,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,eAAe,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IACtG,MAAM,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,eAAe,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAgDzH,MAAM,CAAC,WAAW,EAAE,eAAe,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IA+DlI,OAAO,CAAC,IAAI,EAAC,qBAAqB;IAIzC,IAAW,YAAY,IAAI,MAAM,EAAE,CAElC;CACJ"}
|
package/dist/heart/agent.js
CHANGED
|
@@ -3,6 +3,7 @@ import { createReactAgent } from "../imports";
|
|
|
3
3
|
import { HumanMessage } from "../imports";
|
|
4
4
|
import { structure } from "../magic-funcs/parsers/structure";
|
|
5
5
|
import { getLLM } from "../helpers/llms";
|
|
6
|
+
import { buildMcpClient, buildMcpPromptBlock } from "./tools/MCP";
|
|
6
7
|
async function resolveSystemPromptBlocks(blocks, promptVars) {
|
|
7
8
|
if (!promptVars || Object.keys(promptVars).length === 0) {
|
|
8
9
|
return blocks;
|
|
@@ -28,6 +29,7 @@ async function resolveSystemPromptBlocks(blocks, promptVars) {
|
|
|
28
29
|
tools,
|
|
29
30
|
output,
|
|
30
31
|
checkpointer,
|
|
32
|
+
mcpServer,
|
|
31
33
|
}: AgentProps<T>) {
|
|
32
34
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p:string)=>{
|
|
33
35
|
if(typeof p === "string"){
|
|
@@ -45,6 +47,7 @@ async function resolveSystemPromptBlocks(blocks, promptVars) {
|
|
|
45
47
|
this.llm = llm
|
|
46
48
|
this.output = output
|
|
47
49
|
this.checkpointer = checkpointer
|
|
50
|
+
this.mcpServer = mcpServer
|
|
48
51
|
}
|
|
49
52
|
* @param output - Zod-Schema: beschreibt die Struktur des Rückgabewerts von .invoke()
|
|
50
53
|
*/
|
|
@@ -55,8 +58,9 @@ export class Agent {
|
|
|
55
58
|
output;
|
|
56
59
|
agent;
|
|
57
60
|
checkpointer;
|
|
61
|
+
mcpServer;
|
|
58
62
|
should_use_output = true;
|
|
59
|
-
constructor({ prompt = `Du bist ein hilfreicher Assistent.`, llm = getLLM({ provider: "openrouter", model: "openai/gpt-5.4-mini" }), tools, output, checkpointer, }) {
|
|
63
|
+
constructor({ prompt = `Du bist ein hilfreicher Assistent.`, llm = getLLM({ provider: "openrouter", model: "openai/gpt-5.4-mini" }), tools, output, checkpointer, mcpServer, }) {
|
|
60
64
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p) => {
|
|
61
65
|
if (typeof p === "string") {
|
|
62
66
|
return ["system", p];
|
|
@@ -74,6 +78,7 @@ export class Agent {
|
|
|
74
78
|
this.llm = llm;
|
|
75
79
|
this.output = output;
|
|
76
80
|
this.checkpointer = checkpointer;
|
|
81
|
+
this.mcpServer = mcpServer;
|
|
77
82
|
}
|
|
78
83
|
async invoke(invokeInput) {
|
|
79
84
|
const { thread_id, debug, promptVars, ...variables } = invokeInput;
|
|
@@ -83,33 +88,43 @@ export class Agent {
|
|
|
83
88
|
console.warn("WARN: thread_id is provided but no checkpointer is set, so no state is stored");
|
|
84
89
|
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
85
90
|
const resolvedPrompt = await resolveSystemPromptBlocks(this.prompt, promptVars);
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
tools: this.tools,
|
|
89
|
-
checkpointSaver: this.checkpointer,
|
|
90
|
-
prompt: (state) => [
|
|
91
|
-
...resolvedPrompt,
|
|
92
|
-
...state.messages
|
|
93
|
-
]
|
|
94
|
-
});
|
|
91
|
+
const mcpBlock = buildMcpPromptBlock(this.mcpServer);
|
|
92
|
+
const promptBlocks = mcpBlock ? [...resolvedPrompt, ["system", mcpBlock]] : resolvedPrompt;
|
|
95
93
|
const config = thread_id && this.checkpointer ? { configurable: { thread_id } } : undefined;
|
|
96
94
|
if (thread_id && !this.checkpointer)
|
|
97
95
|
console.warn("thread_id wurde beim invoke des agenten mitgegeben aber kein checkpointer, somit wird nichts gespeichert und die thread_id ist gleichgültig");
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
96
|
+
const mcpClient = buildMcpClient(this.mcpServer);
|
|
97
|
+
try {
|
|
98
|
+
const tools = mcpClient ? [...this.tools, ...await mcpClient.getTools()] : this.tools;
|
|
99
|
+
this.agent = createReactAgent({
|
|
100
|
+
llm: this.llm,
|
|
101
|
+
tools: tools,
|
|
102
|
+
checkpointSaver: this.checkpointer,
|
|
103
|
+
prompt: (state) => [
|
|
104
|
+
...promptBlocks,
|
|
105
|
+
...state.messages
|
|
106
|
+
]
|
|
107
|
+
});
|
|
108
|
+
const result = await this.agent.invoke({ messages: humanMessages }, config);
|
|
109
|
+
if (debug)
|
|
110
|
+
return result;
|
|
111
|
+
const lastMessage = result.messages[result.messages.length - 1];
|
|
112
|
+
const raw = lastMessage?.content;
|
|
113
|
+
const content = typeof raw === "string" ? raw : (Array.isArray(raw) ? raw.map((c) => c?.text ?? c).join("") : String(raw ?? ""));
|
|
114
|
+
if (this.output && this.should_use_output) {
|
|
115
|
+
return await structure({ data: content, into: this.output, llm: this.llm });
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
return content;
|
|
119
|
+
}
|
|
106
120
|
}
|
|
107
|
-
|
|
108
|
-
|
|
121
|
+
finally {
|
|
122
|
+
await mcpClient?.close();
|
|
109
123
|
}
|
|
110
124
|
}
|
|
111
125
|
async *stream(invokeInput) {
|
|
112
126
|
this.should_use_output = false;
|
|
127
|
+
const mcpClient = buildMcpClient(this.mcpServer);
|
|
113
128
|
try {
|
|
114
129
|
const { thread_id, promptVars, ...variables } = invokeInput;
|
|
115
130
|
if (this.checkpointer && !thread_id)
|
|
@@ -118,12 +133,15 @@ export class Agent {
|
|
|
118
133
|
console.warn("WARN: thread_id is provided but no checkpointer is set, so no state is stored");
|
|
119
134
|
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
120
135
|
const resolvedPrompt = await resolveSystemPromptBlocks(this.prompt, promptVars);
|
|
136
|
+
const mcpBlock = buildMcpPromptBlock(this.mcpServer);
|
|
137
|
+
const promptBlocks = mcpBlock ? [...resolvedPrompt, ["system", mcpBlock]] : resolvedPrompt;
|
|
138
|
+
const tools = mcpClient ? [...this.tools, ...await mcpClient.getTools()] : this.tools;
|
|
121
139
|
this.agent = createReactAgent({
|
|
122
140
|
llm: this.llm,
|
|
123
|
-
tools:
|
|
141
|
+
tools: tools,
|
|
124
142
|
checkpointSaver: this.checkpointer,
|
|
125
143
|
prompt: (state) => [
|
|
126
|
-
...
|
|
144
|
+
...promptBlocks,
|
|
127
145
|
...state.messages
|
|
128
146
|
]
|
|
129
147
|
});
|
|
@@ -154,6 +172,7 @@ export class Agent {
|
|
|
154
172
|
}
|
|
155
173
|
finally {
|
|
156
174
|
this.should_use_output = true;
|
|
175
|
+
await mcpClient?.close();
|
|
157
176
|
}
|
|
158
177
|
}
|
|
159
178
|
addTool(tool) {
|
package/dist/heart/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAKxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAC,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from "zod/v4";
|
|
2
2
|
import type { OutputSchema } from "./chain";
|
|
3
3
|
import { DynamicStructuredTool, BaseChatModel, BaseCheckpointSaver, type AgentMiddleware, type BaseStore, type CreateDeepAgentParams, type SubAgent, type FilesystemPermission } from "../imports";
|
|
4
|
+
import { type MCPServersInput } from "./tools/MCP";
|
|
4
5
|
import type { DeepAgentInterrupt, DeepAgentRunInputBase, DeepAgentHitlFields, DeepAgentShowToolCallsField, DeepAgentToolEvent } from "../helpers/deepagent/interruptTypes";
|
|
5
6
|
import { type DeepAgentInterruptableToolName, type InterruptOnFor } from "../helpers/deepagent/interruptOn";
|
|
6
7
|
import type { DeepAgentBackend } from "../helpers/deepagent/backend";
|
|
@@ -20,6 +21,14 @@ interface DeepAgentProps<T extends OutputSchema | undefined = undefined, TTools
|
|
|
20
21
|
store?: BaseStore;
|
|
21
22
|
name?: string;
|
|
22
23
|
contextSchema?: CreateDeepAgentParams["contextSchema"];
|
|
24
|
+
/**
|
|
25
|
+
* MCP-Server, deren Tools dem Deep Agent zur Verfügung gestellt werden.
|
|
26
|
+
* Pro invoke()/stream() wird ein frischer MultiServerMCPClient gebaut,
|
|
27
|
+
* die Tools per getTools() geladen und der Client am Ende geschlossen.
|
|
28
|
+
* Achtung: bei gesetztem mcpServer wird der Agent-Cache umgangen
|
|
29
|
+
* (Neuaufbau pro Aufruf), damit close() den Client nicht für Folge-Calls killt.
|
|
30
|
+
*/
|
|
31
|
+
mcpServer?: MCPServersInput;
|
|
23
32
|
}
|
|
24
33
|
/**
|
|
25
34
|
* @example
|
|
@@ -77,8 +86,9 @@ export declare class DeepAgent<T extends OutputSchema | undefined = undefined, c
|
|
|
77
86
|
private store;
|
|
78
87
|
private name;
|
|
79
88
|
private contextSchema;
|
|
89
|
+
private mcpServer;
|
|
80
90
|
private should_use_output;
|
|
81
|
-
constructor({ prompt, llm, tools, output, checkpointer, agentsMd, subagents, backend, permissions, skills, middleware, interruptOn, store, name, contextSchema, }?: DeepAgentProps<T, TTools, TBackend>);
|
|
91
|
+
constructor({ prompt, llm, tools, output, checkpointer, agentsMd, subagents, backend, permissions, skills, middleware, interruptOn, store, name, contextSchema, mcpServer, }?: DeepAgentProps<T, TTools, TBackend>);
|
|
82
92
|
static create<const TTools extends readonly DynamicStructuredTool[], TBackend extends DeepAgentBackend | undefined = undefined>(props: DeepAgentProps<undefined, TTools, TBackend> & {
|
|
83
93
|
interruptOn: InterruptOnFor<DeepAgentInterruptableToolName<TTools, TBackend>>;
|
|
84
94
|
}): DeepAgent<undefined, TTools, TBackend, true>;
|
|
@@ -88,6 +98,8 @@ export declare class DeepAgent<T extends OutputSchema | undefined = undefined, c
|
|
|
88
98
|
static create<const TTools extends readonly DynamicStructuredTool[], TBackend extends DeepAgentBackend | undefined = undefined>(props: DeepAgentProps<undefined, TTools, TBackend>): DeepAgent<undefined, TTools, TBackend, false>;
|
|
89
99
|
static create<const TTools extends readonly DynamicStructuredTool[], TBackend extends DeepAgentBackend | undefined = undefined, U extends OutputSchema = OutputSchema>(props: DeepAgentProps<U, TTools, TBackend>): DeepAgent<U, TTools, TBackend, false>;
|
|
90
100
|
private markAgentDirty;
|
|
101
|
+
private get hasMcp();
|
|
102
|
+
private systemPromptWithMcp;
|
|
91
103
|
private ensureAgent;
|
|
92
104
|
private buildConfig;
|
|
93
105
|
private validateThreadConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepAgent.d.ts","sourceRoot":"","sources":["../../src/heart/deepAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EAInB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,KAAK,oBAAoB,EAC5B,MAAM,YAAY,CAAA;AAGnB,OAAO,KAAK,EACR,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAErB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAMH,KAAK,8BAA8B,EACnC,KAAK,cAAc,EACtB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,UAAU,cAAc,CACpB,CAAC,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC9C,MAAM,SAAS,SAAS,qBAAqB,EAAE,GAAG,SAAS,EAAE,EAC7D,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS;IAEzD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,aAAa,CAAA;IACnB,MAAM,CAAC,EAAE,CAAC,CAAA;IACV,YAAY,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAA;IAC5C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAA;IAC9B,WAAW,CAAC,EAAE,cAAc,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC9E,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"deepAgent.d.ts","sourceRoot":"","sources":["../../src/heart/deepAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EAInB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,KAAK,oBAAoB,EAC5B,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AACvF,OAAO,KAAK,EACR,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAErB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAMH,KAAK,8BAA8B,EACnC,KAAK,cAAc,EACtB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,UAAU,cAAc,CACpB,CAAC,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC9C,MAAM,SAAS,SAAS,qBAAqB,EAAE,GAAG,SAAS,EAAE,EAC7D,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS;IAEzD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,aAAa,CAAA;IACnB,MAAM,CAAC,EAAE,CAAC,CAAA;IACV,YAAY,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAA;IAC5C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,CAAA;IAClB,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAA;IAC9B,WAAW,CAAC,EAAE,cAAc,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC9E,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAA;IACtD;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,eAAe,CAAA;CAC9B;AAyBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,SAAS,CAClB,CAAC,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC9C,KAAK,CAAC,MAAM,SAAS,SAAS,qBAAqB,EAAE,GAAG,SAAS,EAAE,EACnE,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACzD,aAAa,SAAS,OAAO,GAAG,KAAK;IAErC,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,eAAe,CAAO;IAC9B,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,WAAW,CAA8E;IACjG,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,aAAa,CAAwC;IAC7D,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,iBAAiB,CAAgB;gBAE7B,EACR,MAA8C,EAC9C,GAAsE,EACtE,KAA+B,EAC/B,MAAM,EACN,YAAgC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACN,UAAU,EACV,WAAW,EACX,KAAK,EACL,IAAI,EACJ,aAAa,EACb,SAAS,GACZ,GAAE,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAA6C;IAqBlF,MAAM,CAAC,MAAM,CACT,KAAK,CAAC,MAAM,SAAS,SAAS,qBAAqB,EAAE,EACrD,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EAEzD,KAAK,EAAE,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG;QACjD,WAAW,EAAE,cAAc,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;KAChF,GACF,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;IAC/C,MAAM,CAAC,MAAM,CACT,KAAK,CAAC,MAAM,SAAS,SAAS,qBAAqB,EAAE,EACrD,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACzD,CAAC,SAAS,YAAY,GAAG,YAAY,EAErC,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG;QACzC,WAAW,EAAE,cAAc,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;KAChF,GACF,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;IACvC,MAAM,CAAC,MAAM,CACT,KAAK,CAAC,MAAM,SAAS,SAAS,qBAAqB,EAAE,EACrD,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EAEzD,KAAK,EAAE,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GACnD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;IAChD,MAAM,CAAC,MAAM,CACT,KAAK,CAAC,MAAM,SAAS,SAAS,qBAAqB,EAAE,EACrD,QAAQ,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACzD,CAAC,SAAS,YAAY,GAAG,YAAY,EAErC,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,GAC3C,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;IAKxC,OAAO,CAAC,cAAc;IAItB,OAAO,KAAK,MAAM,GAGjB;IAED,OAAO,CAAC,mBAAmB;YAMb,WAAW;IAmCzB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,oBAAoB;YASd,eAAe;IAqB7B,OAAO,CAAC,kBAAkB;YAeZ,eAAe;YAqBd,eAAe;YA4Cf,eAAe;IA8BjB,MAAM,CACf,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAClD,WAAW,EAAE,qBAAqB,GAAG,mBAAmB,GACzD,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC;IAC1B,MAAM,CAAC,CAAC,SAAS,YAAY,EACtC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC1C,WAAW,EAAE,qBAAqB,GAAG,mBAAmB,GACzD,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC;IAC9B,MAAM,CACf,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EACnD,WAAW,EAAE,qBAAqB,GACnC,OAAO,CAAC,MAAM,CAAC;IACL,MAAM,CAAC,CAAC,SAAS,YAAY,EACtC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,WAAW,EAAE,qBAAqB,GACnC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IA6Cf,MAAM,CACT,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC1C,WAAW,EAAE,qBAAqB,GAAG,mBAAmB,GACzD,cAAc,CAAC,MAAM,GAAG,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC;IACtD,MAAM,CACT,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC1C,WAAW,EAAE,qBAAqB,GAAG,mBAAmB,GAAG,2BAA2B,GACvF,cAAc,CAAC,MAAM,GAAG,kBAAkB,GAAG,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC;IAC3E,MAAM,CACT,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,WAAW,EAAE,qBAAqB,GACnC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IACjC,MAAM,CACT,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,WAAW,EAAE,qBAAqB,GAAG,2BAA2B,GACjE,cAAc,CAAC,MAAM,GAAG,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC;IAmDtD,OAAO,CAAC,IAAI,EAAE,qBAAqB;IAK1C,IAAW,YAAY,IAAI,MAAM,EAAE,CAElC;CACJ"}
|
package/dist/heart/deepAgent.js
CHANGED
|
@@ -2,6 +2,7 @@ import { PromptTemplate } from "@langchain/core/prompts";
|
|
|
2
2
|
import { createDeepAgent, HumanMessage, MemorySaver, } from "../imports";
|
|
3
3
|
import { getLLM } from "../helpers/llms";
|
|
4
4
|
import { structure } from "../magic-funcs/parsers/structure";
|
|
5
|
+
import { buildMcpClient, buildMcpPromptBlock } from "./tools/MCP";
|
|
5
6
|
import { createResumeCommand, expandResumeDecisions, getPendingInterruptCount, mapInterruptOnToNative, mapResultToInterrupt, } from "../helpers/deepagent/interruptOn";
|
|
6
7
|
import { mapNativeStreamChunk } from "../helpers/deepagent/streamEvents";
|
|
7
8
|
async function resolveSystemPromptBlocks(blocks, promptVars) {
|
|
@@ -79,8 +80,9 @@ export class DeepAgent {
|
|
|
79
80
|
store;
|
|
80
81
|
name;
|
|
81
82
|
contextSchema;
|
|
83
|
+
mcpServer;
|
|
82
84
|
should_use_output = true;
|
|
83
|
-
constructor({ prompt = `Du bist ein hilfreicher Deep Agent.`, llm = getLLM({ provider: "openrouter", model: "openai/gpt-5.4-mini" }), tools = [], output, checkpointer = new MemorySaver(), agentsMd, subagents, backend, permissions, skills, middleware, interruptOn, store, name, contextSchema, } = {}) {
|
|
85
|
+
constructor({ prompt = `Du bist ein hilfreicher Deep Agent.`, llm = getLLM({ provider: "openrouter", model: "openai/gpt-5.4-mini" }), tools = [], output, checkpointer = new MemorySaver(), agentsMd, subagents, backend, permissions, skills, middleware, interruptOn, store, name, contextSchema, mcpServer, } = {}) {
|
|
84
86
|
this.prompt = typeof prompt === "string"
|
|
85
87
|
? [["system", prompt]]
|
|
86
88
|
: prompt.map((p) => ["system", p]);
|
|
@@ -98,6 +100,7 @@ export class DeepAgent {
|
|
|
98
100
|
this.store = store;
|
|
99
101
|
this.name = name;
|
|
100
102
|
this.contextSchema = contextSchema;
|
|
103
|
+
this.mcpServer = mcpServer;
|
|
101
104
|
}
|
|
102
105
|
static create(props) {
|
|
103
106
|
return new DeepAgent(props);
|
|
@@ -105,14 +108,25 @@ export class DeepAgent {
|
|
|
105
108
|
markAgentDirty() {
|
|
106
109
|
this.agentCacheDirty = true;
|
|
107
110
|
}
|
|
108
|
-
|
|
109
|
-
if (!this.
|
|
111
|
+
get hasMcp() {
|
|
112
|
+
if (!this.mcpServer)
|
|
113
|
+
return false;
|
|
114
|
+
return Array.isArray(this.mcpServer) ? this.mcpServer.length > 0 : true;
|
|
115
|
+
}
|
|
116
|
+
systemPromptWithMcp(blocks) {
|
|
117
|
+
const mcpBlock = buildMcpPromptBlock(this.mcpServer);
|
|
118
|
+
const finalBlocks = mcpBlock ? [...blocks, ["system", mcpBlock]] : blocks;
|
|
119
|
+
return blocksToSystemPrompt(finalBlocks);
|
|
120
|
+
}
|
|
121
|
+
async ensureAgent(systemPrompt, mcpTools = []) {
|
|
122
|
+
if (!this.hasMcp && !this.agentCacheDirty && this.agent) {
|
|
110
123
|
return this.agent;
|
|
111
124
|
}
|
|
112
|
-
this.
|
|
125
|
+
const tools = [...this.tools, ...mcpTools];
|
|
126
|
+
const agent = createDeepAgent({
|
|
113
127
|
model: this.llm,
|
|
114
128
|
systemPrompt,
|
|
115
|
-
tools:
|
|
129
|
+
tools: tools,
|
|
116
130
|
...(this.output ? { responseFormat: this.output } : {}),
|
|
117
131
|
checkpointer: this.checkpointer,
|
|
118
132
|
...(this.agentsMd ? { memory: this.agentsMd } : {}),
|
|
@@ -126,8 +140,13 @@ export class DeepAgent {
|
|
|
126
140
|
...(this.name ? { name: this.name } : {}),
|
|
127
141
|
...(this.contextSchema ? { contextSchema: this.contextSchema } : {}),
|
|
128
142
|
});
|
|
129
|
-
|
|
130
|
-
|
|
143
|
+
// Bei MCP NICHT cachen: der Client wird pro Aufruf geschlossen, also müssen
|
|
144
|
+
// Tools (und damit der Agent) bei jedem Aufruf frisch aufgebaut werden.
|
|
145
|
+
if (!this.hasMcp) {
|
|
146
|
+
this.agent = agent;
|
|
147
|
+
this.agentCacheDirty = false;
|
|
148
|
+
}
|
|
149
|
+
return agent;
|
|
131
150
|
}
|
|
132
151
|
buildConfig(thread_id, context) {
|
|
133
152
|
return thread_id && this.checkpointer
|
|
@@ -176,9 +195,9 @@ export class DeepAgent {
|
|
|
176
195
|
}
|
|
177
196
|
}
|
|
178
197
|
async runResumeInvoke(input) {
|
|
179
|
-
const { thread_id, context, decision, decisions } = input;
|
|
180
|
-
const systemPrompt =
|
|
181
|
-
const agent = await this.ensureAgent(systemPrompt);
|
|
198
|
+
const { thread_id, context, decision, decisions, mcpTools = [] } = input;
|
|
199
|
+
const systemPrompt = this.systemPromptWithMcp(this.prompt);
|
|
200
|
+
const agent = await this.ensureAgent(systemPrompt, mcpTools);
|
|
182
201
|
const config = this.buildConfig(thread_id, context);
|
|
183
202
|
const pendingCount = await getPendingInterruptCount(agent, config);
|
|
184
203
|
const hitlDecisions = expandResumeDecisions(decision, decisions, pendingCount);
|
|
@@ -187,12 +206,12 @@ export class DeepAgent {
|
|
|
187
206
|
return this.mapInvokeResult(result);
|
|
188
207
|
}
|
|
189
208
|
async *runResumeStream(input) {
|
|
190
|
-
const { thread_id, context, decision, decisions, showToolCalls = false } = input;
|
|
209
|
+
const { thread_id, context, decision, decisions, showToolCalls = false, mcpTools = [] } = input;
|
|
191
210
|
this.should_use_output = false;
|
|
192
211
|
const seenToolStarts = new Set();
|
|
193
212
|
try {
|
|
194
|
-
const systemPrompt =
|
|
195
|
-
const agent = await this.ensureAgent(systemPrompt);
|
|
213
|
+
const systemPrompt = this.systemPromptWithMcp(this.prompt);
|
|
214
|
+
const agent = await this.ensureAgent(systemPrompt, mcpTools);
|
|
196
215
|
const config = this.buildConfig(thread_id, context);
|
|
197
216
|
const pendingCount = await getPendingInterruptCount(agent, config);
|
|
198
217
|
const hitlDecisions = expandResumeDecisions(decision, decisions, pendingCount);
|
|
@@ -239,58 +258,70 @@ export class DeepAgent {
|
|
|
239
258
|
async invoke(invokeInput) {
|
|
240
259
|
const { thread_id, decision, decisions, context, debug, promptVars, ...variables } = invokeInput;
|
|
241
260
|
const isResume = decision !== undefined || decisions !== undefined;
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
261
|
+
const mcpClient = buildMcpClient(this.mcpServer);
|
|
262
|
+
try {
|
|
263
|
+
const mcpTools = mcpClient ? await mcpClient.getTools() : [];
|
|
264
|
+
if (isResume) {
|
|
265
|
+
this.validateHitlResume(thread_id, variables);
|
|
266
|
+
return await this.runResumeInvoke({
|
|
267
|
+
thread_id: thread_id,
|
|
268
|
+
context,
|
|
269
|
+
decision,
|
|
270
|
+
decisions,
|
|
271
|
+
mcpTools,
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
this.validateThreadConfig(thread_id);
|
|
275
|
+
if (Object.keys(variables).length === 0) {
|
|
276
|
+
throw new Error("input required");
|
|
277
|
+
}
|
|
278
|
+
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
279
|
+
const resolvedPrompt = await resolveSystemPromptBlocks(this.prompt, promptVars);
|
|
280
|
+
const systemPrompt = this.systemPromptWithMcp(resolvedPrompt);
|
|
281
|
+
const agent = await this.ensureAgent(systemPrompt, mcpTools);
|
|
282
|
+
const config = this.buildConfig(thread_id, context);
|
|
283
|
+
const result = await agent.invoke({ messages: humanMessages }, config);
|
|
284
|
+
if (debug)
|
|
285
|
+
return result;
|
|
286
|
+
return await this.mapInvokeResult(result);
|
|
250
287
|
}
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
throw new Error("input required");
|
|
288
|
+
finally {
|
|
289
|
+
await mcpClient?.close();
|
|
254
290
|
}
|
|
255
|
-
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
256
|
-
const resolvedPrompt = await resolveSystemPromptBlocks(this.prompt, promptVars);
|
|
257
|
-
const systemPrompt = blocksToSystemPrompt(resolvedPrompt);
|
|
258
|
-
const agent = await this.ensureAgent(systemPrompt);
|
|
259
|
-
const config = this.buildConfig(thread_id, context);
|
|
260
|
-
const result = await agent.invoke({ messages: humanMessages }, config);
|
|
261
|
-
if (debug)
|
|
262
|
-
return result;
|
|
263
|
-
return this.mapInvokeResult(result);
|
|
264
291
|
}
|
|
265
292
|
async *stream(invokeInput) {
|
|
266
293
|
const { thread_id, decision, decisions, context, promptVars, showToolCalls, ...variables } = invokeInput;
|
|
267
294
|
const isResume = decision !== undefined || decisions !== undefined;
|
|
268
|
-
if (isResume) {
|
|
269
|
-
this.validateHitlResume(thread_id, variables);
|
|
270
|
-
yield* this.runResumeStream({
|
|
271
|
-
thread_id: thread_id,
|
|
272
|
-
context,
|
|
273
|
-
decision,
|
|
274
|
-
decisions,
|
|
275
|
-
showToolCalls: showToolCalls === true,
|
|
276
|
-
});
|
|
277
|
-
return;
|
|
278
|
-
}
|
|
279
295
|
this.should_use_output = false;
|
|
296
|
+
const mcpClient = buildMcpClient(this.mcpServer);
|
|
280
297
|
try {
|
|
298
|
+
const mcpTools = mcpClient ? await mcpClient.getTools() : [];
|
|
299
|
+
if (isResume) {
|
|
300
|
+
this.validateHitlResume(thread_id, variables);
|
|
301
|
+
yield* this.runResumeStream({
|
|
302
|
+
thread_id: thread_id,
|
|
303
|
+
context,
|
|
304
|
+
decision,
|
|
305
|
+
decisions,
|
|
306
|
+
showToolCalls: showToolCalls === true,
|
|
307
|
+
mcpTools,
|
|
308
|
+
});
|
|
309
|
+
return;
|
|
310
|
+
}
|
|
281
311
|
this.validateThreadConfig(thread_id);
|
|
282
312
|
if (Object.keys(variables).length === 0) {
|
|
283
313
|
throw new Error("input required");
|
|
284
314
|
}
|
|
285
315
|
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
286
316
|
const resolvedPrompt = await resolveSystemPromptBlocks(this.prompt, promptVars);
|
|
287
|
-
const systemPrompt =
|
|
288
|
-
const agent = await this.ensureAgent(systemPrompt);
|
|
317
|
+
const systemPrompt = this.systemPromptWithMcp(resolvedPrompt);
|
|
318
|
+
const agent = await this.ensureAgent(systemPrompt, mcpTools);
|
|
289
319
|
const config = this.buildConfig(thread_id, context);
|
|
290
320
|
yield* this.runNativeStream(agent, { messages: humanMessages }, config, showToolCalls === true);
|
|
291
321
|
}
|
|
292
322
|
finally {
|
|
293
323
|
this.should_use_output = true;
|
|
324
|
+
await mcpClient?.close();
|
|
294
325
|
}
|
|
295
326
|
}
|
|
296
327
|
addTool(tool) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepAgent.js","sourceRoot":"","sources":["../../src/heart/deepAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deepAgent.js","sourceRoot":"","sources":["../../src/heart/deepAgent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAIH,eAAe,EACf,YAAY,EACZ,WAAW,GAMd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAwB,MAAM,aAAa,CAAA;AASvF,OAAO,EACH,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,GAGvB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAiCxE,KAAK,UAAU,yBAAyB,CACpC,MAAiC,EACjC,UAAgC;IAEhC,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,MAAM,CAAA;IACjB,CAAC;IACD,MAAM,GAAG,GAA8B,EAAE,CAAA;IACzC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAiC,CAAC,CAAA;YACnG,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;QAC/B,CAAC;QAAC,MAAM,CAAC;YACL,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAC1B,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAA;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAiC;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AACtD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,OAAO,SAAS;IAMV,MAAM,CAA2B;IACjC,KAAK,CAAQ;IACb,GAAG,CAAe;IAClB,MAAM,CAAe;IACrB,KAAK,CAAK;IACV,eAAe,GAAG,IAAI,CAAA;IACtB,YAAY,CAA+B;IAC3C,QAAQ,CAAsB;IAC9B,SAAS,CAAwB;IACjC,OAAO,CAAsB;IAC7B,WAAW,CAAoC;IAC/C,MAAM,CAAsB;IAC5B,UAAU,CAA+B;IACzC,WAAW,CAA8E;IACzF,KAAK,CAAuB;IAC5B,IAAI,CAAoB;IACxB,aAAa,CAAwC;IACrD,SAAS,CAA6B;IACtC,iBAAiB,GAAY,IAAI,CAAA;IAEzC,YAAY,EACR,MAAM,GAAG,qCAAqC,EAC9C,GAAG,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,EACtE,KAAK,GAAG,EAAuB,EAC/B,MAAM,EACN,YAAY,GAAG,IAAI,WAAW,EAAE,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACN,UAAU,EACV,WAAW,EACX,KAAK,EACL,IAAI,EACJ,aAAa,EACb,SAAS,MAC4B,EAAyC;QAC9E,IAAI,CAAC,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ;YACpC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACtB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAuB,CAAC,CAAA;QACpE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;IAgCD,MAAM,CAAC,MAAM,CAAC,KAA6D;QACvE,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC;IAEO,cAAc;QAClB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;IAC/B,CAAC;IAED,IAAY,MAAM;QACd,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAA;QACjC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3E,CAAC;IAEO,mBAAmB,CAAC,MAAiC;QACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACpD,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QAC/F,OAAO,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAC5C,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,YAAoB,EAAE,WAAoC,EAAE;QAClF,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,KAAK,CAAA;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,GAAI,IAAI,CAAC,KAA4C,EAAE,GAAG,QAAQ,CAAC,CAAA;QAElF,MAAM,KAAK,GAAG,eAAe,CAAC;YAC1B,KAAK,EAAE,IAAI,CAAC,GAAU;YACtB,YAAY;YACZ,KAAK,EAAE,KAAY;YACnB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,MAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAC,CAAA;QAEF,4EAA4E;QAC5E,wEAAwE;QACxE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAChC,CAAC;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEO,WAAW,CAAC,SAAkB,EAAE,OAA6B;QACjE,OAAO,SAAS,IAAI,IAAI,CAAC,YAAY;YACjC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAClE,CAAC,CAAC,OAAO;gBACL,CAAC,CAAC,EAAE,OAAO,EAAE;gBACb,CAAC,CAAC,SAAS,CAAA;IACvB,CAAC;IAEO,oBAAoB,CAAC,SAAkB;QAC3C,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;QAC7F,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAA;QACjG,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,MAAW;QACrC,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAC9C,IAAI,SAAS;YAAE,OAAO,SAAS,CAAA;QAE/B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,iBAAiB,IAAI,MAAM,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACpF,OAAO,MAAM,CAAC,kBAA2C,CAAA;QAC7D,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC/D,MAAM,GAAG,GAAG,WAAW,EAAE,OAAO,CAAA;QAChC,MAAM,OAAO,GAAG,OAAO,GAAG,KAAK,QAAQ;YACnC,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;QAE3F,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxC,OAAO,MAAM,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QAC/E,CAAC;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAEO,kBAAkB,CAAC,SAA6B,EAAE,SAAkC;QACxF,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAClF,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;QACvD,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACxE,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QACtD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,KAM7B;QACG,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,KAAK,CAAA;QAExE,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAEnD,MAAM,YAAY,GAAG,MAAM,wBAAwB,CAAC,KAAK,EAAE,MAA6C,CAAC,CAAA;QACzG,MAAM,aAAa,GAAG,qBAAqB,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;QAC9E,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAA;QAElD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,OAAc,EAAE,MAAM,CAAC,CAAA;QACzD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAsD,CAAA;IAC5F,CAAC;IAEO,KAAK,CAAC,CAAC,eAAe,CAAC,KAO9B;QACG,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,GAAG,KAAK,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,KAAK,CAAA;QAC/F,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAA;QAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAA;QAExC,IAAI,CAAC;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;YAEnD,MAAM,YAAY,GAAG,MAAM,wBAAwB,CAAC,KAAK,EAAE,MAA6C,CAAC,CAAA;YACzG,MAAM,aAAa,GAAG,qBAAqB,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;YAC9E,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAA;YAElD,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,MAAM,CACnC,OAAc,EACd,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,EAAS,CACpE,CAAA;YAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;gBACrC,KAAK,MAAM,MAAM,IAAI,oBAAoB,CAAC,KAAK,EAAE;oBAC7C,WAAW,EAAE,IAAI;oBACjB,aAAa;oBACb,cAAc;iBACjB,CAAC,EAAE,CAAC;oBACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAC/E,MAAM,MAAM,CAAA;wBACZ,OAAM;oBACV,CAAC;oBACD,MAAM,MAAM,CAAA;gBAChB,CAAC;YACL,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QACjC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,CAAC,eAAe,CAC1B,KAAU,EACV,KAAmC,EACnC,MAA2C,EAC3C,aAAsB;QAEtB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,IAAI,aAAa;YAChD,CAAC,CAAE,CAAC,UAAU,EAAE,SAAS,CAAW;YACpC,CAAC,CAAC,UAAU,CAAA;QAChB,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,MAAM,CACnC,KAAY,EACZ,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,UAAU,EAAS,CAC3C,CAAA;QACD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAA;QAExC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACrC,KAAK,MAAM,MAAM,IAAI,oBAAoB,CAAC,KAAK,EAAE;gBAC7C,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;gBACtC,aAAa;gBACb,cAAc;aACjB,CAAC,EAAE,CAAC;gBACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/E,MAAM,MAAM,CAAA;oBACZ,OAAM;gBACV,CAAC;gBACD,MAAM,MAAM,CAAA;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IAkBM,KAAK,CAAC,MAAM,CACf,WAAiE;QAEjE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,GAAG,WAAW,CAAA;QAChG,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAA;QAElE,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAE5D,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;gBAC7C,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC;oBAC9B,SAAS,EAAE,SAAU;oBACrB,OAAO;oBACP,QAAQ;oBACR,SAAS;oBACT,QAAQ;iBACX,CAAiE,CAAA;YACtE,CAAC;YAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;YACpC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;YACrC,CAAC;YAED,MAAM,aAAa,GAAmB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAC/D,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,GAAG,KAAK,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAC7G,CAAA;YAED,MAAM,cAAc,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YAC/E,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;YAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;YAEnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAS,EAAE,MAAM,CAAC,CAAA;YAC7E,IAAI,KAAK;gBAAE,OAAO,MAAM,CAAA;YAExB,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC7C,CAAC;gBAAS,CAAC;YACP,MAAM,SAAS,EAAE,KAAK,EAAE,CAAA;QAC5B,CAAC;IACL,CAAC;IAkBM,KAAK,CAAC,CAAC,MAAM,CAChB,WAA+F;QAE/F,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,SAAS,EAAE,GAAG,WAAW,CAAA;QACxG,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAA;QAElE,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAA;QAC9B,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAE5D,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;gBAC7C,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;oBACxB,SAAS,EAAE,SAAU;oBACrB,OAAO;oBACP,QAAQ;oBACR,SAAS;oBACT,aAAa,EAAE,aAAa,KAAK,IAAI;oBACrC,QAAQ;iBACX,CAAC,CAAA;gBACF,OAAM;YACV,CAAC;YAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;YACpC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;YACrC,CAAC;YAED,MAAM,aAAa,GAAmB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAC/D,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,GAAG,KAAK,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAC7G,CAAA;YAED,MAAM,cAAc,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YAC/E,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;YAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;YAEnD,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,CACvB,KAAK,EACL,EAAE,QAAQ,EAAE,aAAa,EAAE,EAC3B,MAA6C,EAC7C,aAAa,KAAK,IAAI,CACzB,CAAA;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;YAC7B,MAAM,SAAS,EAAE,KAAK,EAAE,CAAA;QAC5B,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,IAA2B;QACtC,CAAC;QAAC,IAAI,CAAC,KAA4C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9D,IAAI,CAAC,cAAc,EAAE,CAAA;IACzB,CAAC;IAED,IAAW,YAAY;QACnB,OAAQ,IAAI,CAAC,KAA4C,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpF,CAAC;CACJ"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { MultiServerMCPClient } from "../../imports";
|
|
2
|
+
import type { OAuthClientProvider } from "../../imports";
|
|
3
|
+
/**
|
|
4
|
+
* Deklarative Beschreibung eines MCP-Servers, den ein Agent nutzen soll.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* { name: "hubspot", url: env.HUBSPOT_MCP_URL, auth: new HubSpotMcpOAuthProvider(userId) }
|
|
8
|
+
*/
|
|
9
|
+
export interface MCPServerConfig {
|
|
10
|
+
/** eindeutiger Name – wird als Tool-Prefix verwendet: `<name>__<tool>` */
|
|
11
|
+
name: string;
|
|
12
|
+
/** URL des MCP-Servers (streamable HTTP / SSE) */
|
|
13
|
+
url: string;
|
|
14
|
+
/** OAuth-Provider für die Authentifizierung (optional) */
|
|
15
|
+
auth?: OAuthClientProvider;
|
|
16
|
+
/** statische Header als Auth-Alternative, z.B. `{ Authorization: "Bearer ..." }` */
|
|
17
|
+
headers?: Record<string, string>;
|
|
18
|
+
/**
|
|
19
|
+
* Optionaler Hinweis für den Agent, WOFÜR dieser Server da ist / WANN er zu nutzen ist.
|
|
20
|
+
* Wird – wenn gesetzt – automatisch als System-Prompt-Block injiziert.
|
|
21
|
+
* z.B. "Dein CRM. Nutze für Bewerber/Kontakte aus dem CRM."
|
|
22
|
+
*/
|
|
23
|
+
description?: string;
|
|
24
|
+
}
|
|
25
|
+
export type MCPServersInput = MCPServerConfig | MCPServerConfig[];
|
|
26
|
+
/**
|
|
27
|
+
* Baut aus einer/mehreren {@link MCPServerConfig}(s) einen MultiServerMCPClient.
|
|
28
|
+
* Gibt `undefined` zurück, wenn keine Server angegeben sind.
|
|
29
|
+
*
|
|
30
|
+
* WICHTIG (Lifecycle): Der Client öffnet beim ersten `getTools()` eine Verbindung,
|
|
31
|
+
* die mit `client.close()` wieder geschlossen werden MUSS. `Agent` und `DeepAgent`
|
|
32
|
+
* übernehmen das automatisch im `finally` von `invoke()`/`stream()` – pro Aufruf
|
|
33
|
+
* wird ein frischer Client gebaut und danach geschlossen.
|
|
34
|
+
*/
|
|
35
|
+
export declare function buildMcpClient(servers?: MCPServersInput): MultiServerMCPClient | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Baut einen System-Prompt-Block aus den `description`-Feldern der MCP-Server –
|
|
38
|
+
* damit der Agent weiß, wofür welcher Server da ist und wann er ihn nutzen soll.
|
|
39
|
+
* Server ohne `description` werden ausgelassen; gibt `undefined` zurück, wenn
|
|
40
|
+
* kein Server eine description hat (dann wird nichts injiziert).
|
|
41
|
+
*/
|
|
42
|
+
export declare function buildMcpPromptBlock(servers?: MCPServersInput): string | undefined;
|
|
43
|
+
export { MultiServerMCPClient };
|
|
44
|
+
export type { OAuthClientProvider };
|
|
45
|
+
//# sourceMappingURL=MCP.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MCP.d.ts","sourceRoot":"","sources":["../../../src/heart/tools/MCP.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC5B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,GAAG,EAAE,MAAM,CAAA;IACX,0DAA0D;IAC1D,IAAI,CAAC,EAAE,mBAAmB,CAAA;IAC1B,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,eAAe,EAAE,CAAA;AAEjE;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,oBAAoB,GAAG,SAAS,CAsB1F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAQjF;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA;AAC/B,YAAY,EAAE,mBAAmB,EAAE,CAAA"}
|