@jarvis-agent/core 0.1.7 → 0.1.9
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/README.md +5 -12
- package/dist/agent/agent-context.d.ts +32 -0
- package/dist/agent/agent-context.d.ts.map +1 -0
- package/dist/agent/agent-llm.d.ts +13 -0
- package/dist/agent/agent-llm.d.ts.map +1 -0
- package/dist/agent/base.d.ts +7 -7
- package/dist/agent/base.d.ts.map +1 -1
- package/dist/agent/browser/browser-base.d.ts +52 -0
- package/dist/agent/browser/browser-base.d.ts.map +1 -0
- package/dist/agent/browser/browser-labels.d.ts +43 -0
- package/dist/agent/browser/browser-labels.d.ts.map +1 -0
- package/dist/agent/browser/browser-screen.d.ts +17 -0
- package/dist/agent/browser/browser-screen.d.ts.map +1 -0
- package/dist/agent/browser/build-dom-tree.d.ts +2 -0
- package/dist/agent/browser/build-dom-tree.d.ts.map +1 -0
- package/dist/agent/browser/index.d.ts +3 -3
- package/dist/agent/browser/utils.d.ts +21 -1
- package/dist/agent/browser/utils.d.ts.map +1 -1
- package/dist/agent/chain.d.ts +45 -0
- package/dist/agent/chain.d.ts.map +1 -0
- package/dist/agent/eko.d.ts +25 -0
- package/dist/agent/eko.d.ts.map +1 -0
- package/dist/agent/file.d.ts +1 -1
- package/dist/agent/index.d.ts +4 -4
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/plan.d.ts +13 -0
- package/dist/agent/plan.d.ts.map +1 -0
- package/dist/agent/replan.d.ts +4 -0
- package/dist/agent/replan.d.ts.map +1 -0
- package/dist/chat/chat-agent.d.ts +21 -0
- package/dist/chat/chat-agent.d.ts.map +1 -0
- package/dist/chat/chat-context.d.ts +15 -0
- package/dist/chat/chat-context.d.ts.map +1 -0
- package/dist/chat/chat-llm.d.ts +8 -0
- package/dist/chat/chat-llm.d.ts.map +1 -0
- package/dist/chat/index.d.ts +9 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/tools/agent-wrap-tool.d.ts +24 -0
- package/dist/chat/tools/agent-wrap-tool.d.ts.map +1 -0
- package/dist/chat/tools/deep-action.d.ts +16 -0
- package/dist/chat/tools/deep-action.d.ts.map +1 -0
- package/dist/chat/tools/variable-storage.d.ts +15 -0
- package/dist/chat/tools/variable-storage.d.ts.map +1 -0
- package/dist/chat/tools/web-search.d.ts +15 -0
- package/dist/chat/tools/web-search.d.ts.map +1 -0
- package/dist/chat/tools/webpage-qa.d.ts +16 -0
- package/dist/chat/tools/webpage-qa.d.ts.map +1 -0
- package/dist/common/tree.d.ts +1 -1
- package/dist/common/tree.d.ts.map +1 -1
- package/dist/common/utils.d.ts +13 -2
- package/dist/common/utils.d.ts.map +1 -1
- package/dist/common/workflow.d.ts +3 -0
- package/dist/common/workflow.d.ts.map +1 -0
- package/dist/common/xml.d.ts +1 -1
- package/dist/common/xml.d.ts.map +1 -1
- package/dist/config/global.d.ts +4 -0
- package/dist/config/global.d.ts.map +1 -0
- package/dist/config/index.d.ts +4 -22
- package/dist/config/index.d.ts.map +1 -1
- package/dist/index.cjs +46108 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +15 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +26389 -17426
- package/dist/index.esm.js.map +1 -1
- package/dist/llm/index.d.ts +2 -21
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/react.d.ts +9 -0
- package/dist/llm/react.d.ts.map +1 -0
- package/dist/llm/rlm.d.ts +22 -0
- package/dist/llm/rlm.d.ts.map +1 -0
- package/dist/memory/index.d.ts +3 -2
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/memory.d.ts +6 -17
- package/dist/memory/memory.d.ts.map +1 -1
- package/dist/memory/snapshot.d.ts +1 -1
- package/dist/memory/snapshot.d.ts.map +1 -1
- package/dist/prompt/agent.d.ts +3 -3
- package/dist/prompt/agent.d.ts.map +1 -1
- package/dist/prompt/chat.d.ts +3 -0
- package/dist/prompt/chat.d.ts.map +1 -0
- package/dist/prompt/plan.d.ts +3 -3
- package/dist/prompt/plan.d.ts.map +1 -1
- package/dist/prompt/prompt-template.d.ts +30 -0
- package/dist/prompt/prompt-template.d.ts.map +1 -0
- package/dist/service/browser-service.d.ts +7 -0
- package/dist/service/browser-service.d.ts.map +1 -0
- package/dist/service/chat-service.d.ts +17 -0
- package/dist/service/chat-service.d.ts.map +1 -0
- package/dist/service/index.d.ts +4 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/tools/foreach-task.d.ts +13 -0
- package/dist/tools/foreach-task.d.ts.map +1 -0
- package/dist/tools/human-interact.d.ts +15 -0
- package/dist/tools/human-interact.d.ts.map +1 -0
- package/dist/tools/index.d.ts +6 -6
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/task-node-status.d.ts +13 -0
- package/dist/tools/task-node-status.d.ts.map +1 -0
- package/dist/tools/task-result-check.d.ts +18 -0
- package/dist/tools/task-result-check.d.ts.map +1 -0
- package/dist/tools/todo-list-manager.d.ts +16 -0
- package/dist/tools/todo-list-manager.d.ts.map +1 -0
- package/dist/tools/variable-storage.d.ts +13 -0
- package/dist/tools/variable-storage.d.ts.map +1 -0
- package/dist/tools/watch-trigger.d.ts +17 -0
- package/dist/tools/watch-trigger.d.ts.map +1 -0
- package/dist/tools/wrapper.d.ts +2 -2
- package/dist/tools/wrapper.d.ts.map +1 -1
- package/dist/types/agent.types.d.ts +124 -0
- package/dist/types/agent.types.d.ts.map +1 -0
- package/dist/types/chat.types.d.ts +105 -0
- package/dist/types/chat.types.d.ts.map +1 -0
- package/dist/types/config.types.d.ts +51 -0
- package/dist/types/config.types.d.ts.map +1 -0
- package/dist/types/index.d.ts +10 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/llm.types.d.ts +94 -6
- package/dist/types/llm.types.d.ts.map +1 -1
- package/dist/types/service.types.d.ts +26 -0
- package/dist/types/service.types.d.ts.map +1 -0
- package/dist/types/tools.types.d.ts +1 -1
- package/dist/types/tools.types.d.ts.map +1 -1
- package/package.json +13 -11
package/README.md
CHANGED
|
@@ -17,13 +17,14 @@ Eko (pronounced like 'echo') is a production-ready JavaScript framework that ena
|
|
|
17
17
|
|
|
18
18
|
## News
|
|
19
19
|
|
|
20
|
+
- **2025-11:** Eko 4.0 supports chat conversations & optimizes agent logic.
|
|
20
21
|
- **2025-09:** Eko 3.0 introduces dependency-aware parallel agent execution.
|
|
21
22
|
- **2025-09:** New pause, resume, and interrupt controls with `task_snapshot` workflow recovery.
|
|
22
23
|
- **2025-09:** Monorepo tooling migrated to pnpm for consistent workspace management.
|
|
23
24
|
|
|
24
|
-
## Upgrading to Eko
|
|
25
|
+
## Upgrading to Eko 4.0
|
|
25
26
|
|
|
26
|
-
Follow these steps when moving an existing Eko
|
|
27
|
+
Follow these steps when moving an existing Eko 3.x project to 4.0:
|
|
27
28
|
|
|
28
29
|
1. Update dependencies with `pnpm up @jarvis-agent/core @jarvis-agent/nodejs @jarvis-agent/web @jarvis-agent/extension`.
|
|
29
30
|
2. Regenerate saved workflows or exported plans so they use the v3 schema and dependency graph format.
|
|
@@ -75,7 +76,7 @@ Follow these steps when moving an existing Eko 2.x project to 3.0:
|
|
|
75
76
|
const llms: LLMs = {
|
|
76
77
|
default: {
|
|
77
78
|
provider: "anthropic",
|
|
78
|
-
model: "claude-sonnet-4-
|
|
79
|
+
model: "claude-sonnet-4-5-20250929",
|
|
79
80
|
apiKey: "your-api-key"
|
|
80
81
|
},
|
|
81
82
|
gemini: {
|
|
@@ -146,7 +147,7 @@ Configure your API key in the extension options before running the automation ta
|
|
|
146
147
|
```bash
|
|
147
148
|
cd example/nodejs
|
|
148
149
|
pnpm install
|
|
149
|
-
pnpm
|
|
150
|
+
pnpm playwright install # first time only, installs browsers
|
|
150
151
|
pnpm run build
|
|
151
152
|
OPENAI_API_KEY=... ANTHROPIC_API_KEY=... pnpm run start
|
|
152
153
|
```
|
|
@@ -198,14 +199,6 @@ Eko can be used in multiple environments:
|
|
|
198
199
|
[](https://star-history.com/#FellouAI/eko&Date)
|
|
199
200
|
|
|
200
201
|
|
|
201
|
-
## Community Spotlight
|
|
202
|
-
|
|
203
|
-
- **Career Co-Pilot**: https://github.com/wangwangbobo/career_skill_learnig.git
|
|
204
|
-
- **Slides Agent by Eko**: https://github.com/MICAHFANG/slides-agent-by-eko
|
|
205
|
-
- **Universal Sidebar Assistant**: https://github.com/San12341/eko-broser-extension.git
|
|
206
|
-
- **Orbit X Smart Terminal**: https://github.com/Skywang16/OrbitX/tree/main
|
|
207
|
-
- **48 Hour Browser Challenge**: https://github.com/MoonIRL/eko
|
|
208
|
-
|
|
209
202
|
## License
|
|
210
203
|
|
|
211
204
|
Eko is released under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Agent } from "../agent";
|
|
2
|
+
import Chain, { AgentChain } from "../agent/chain";
|
|
3
|
+
import { Workflow, EkoConfig, WorkflowAgent, LanguageModelV2Prompt } from "../types";
|
|
4
|
+
export default class TaskContext {
|
|
5
|
+
chatId: string;
|
|
6
|
+
taskId: string;
|
|
7
|
+
config: EkoConfig;
|
|
8
|
+
chain: Chain;
|
|
9
|
+
agents: Agent[];
|
|
10
|
+
controller: AbortController;
|
|
11
|
+
variables: Map<string, any>;
|
|
12
|
+
workflow?: Workflow;
|
|
13
|
+
conversation: string[];
|
|
14
|
+
private pauseStatus;
|
|
15
|
+
readonly currentStepControllers: Set<AbortController>;
|
|
16
|
+
constructor(chatId: string, taskId: string, config: EkoConfig, agents: Agent[], chain: Chain);
|
|
17
|
+
checkAborted(noCheckPause?: boolean): Promise<void>;
|
|
18
|
+
currentAgent(): [Agent, WorkflowAgent, AgentContext] | null;
|
|
19
|
+
get pause(): boolean;
|
|
20
|
+
setPause(pause: boolean, abortCurrentStep?: boolean): void;
|
|
21
|
+
reset(): void;
|
|
22
|
+
}
|
|
23
|
+
export declare class AgentContext {
|
|
24
|
+
agent: Agent;
|
|
25
|
+
context: TaskContext;
|
|
26
|
+
agentChain: AgentChain;
|
|
27
|
+
variables: Map<string, any>;
|
|
28
|
+
consecutiveErrorNum: number;
|
|
29
|
+
messages?: LanguageModelV2Prompt;
|
|
30
|
+
constructor(context: TaskContext, agent: Agent, agentChain: AgentChain);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=agent-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-context.d.ts","sourceRoot":"","sources":["../../src/agent/agent-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,QAAQ,EACR,SAAS,EACT,aAAa,EACb,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAGlB,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAM;IAC5B,OAAO,CAAC,WAAW,CAAgB;IACnC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,CAAC,eAAe,CAAC,CAAa;gBAGhE,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,KAAK,EAAE,EACf,KAAK,EAAE,KAAK;IAYR,YAAY,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,YAAY,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,GAAG,IAAI;IAe3D,IAAI,KAAK,YAER;IAED,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,OAAO;IAUnD,KAAK;CAWN;AAED,qBAAa,YAAY;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;gBAErB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU;CAOvE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AgentContext } from "./agent-context";
|
|
2
|
+
import { RetryLanguageModel } from "../llm";
|
|
3
|
+
import { Tool, ToolResult, LLMRequest, DialogueTool, HumanCallback, AgentStreamCallback } from "../types";
|
|
4
|
+
import { LanguageModelV2Prompt, LanguageModelV2TextPart, SharedV2ProviderOptions, LanguageModelV2ToolChoice, LanguageModelV2ToolCallPart, LanguageModelV2FunctionTool, LanguageModelV2ToolResultPart } from "@ai-sdk/provider";
|
|
5
|
+
export declare function defaultLLMProviderOptions(): SharedV2ProviderOptions;
|
|
6
|
+
export declare function defaultMessageProviderOptions(): SharedV2ProviderOptions;
|
|
7
|
+
export declare function convertTools(tools: Tool[] | DialogueTool[]): LanguageModelV2FunctionTool[];
|
|
8
|
+
export declare function getTool<T extends Tool | DialogueTool>(tools: T[], name: string): T | null;
|
|
9
|
+
export declare function convertToolResult(toolUse: LanguageModelV2ToolCallPart, toolResult: ToolResult, user_messages?: LanguageModelV2Prompt): LanguageModelV2ToolResultPart;
|
|
10
|
+
export declare function callAgentLLM(agentContext: AgentContext, rlm: RetryLanguageModel, messages: LanguageModelV2Prompt, tools: LanguageModelV2FunctionTool[], noCompress?: boolean, toolChoice?: LanguageModelV2ToolChoice, callback?: AgentStreamCallback & HumanCallback, requestHandler?: (request: LLMRequest) => void): Promise<Array<LanguageModelV2TextPart | LanguageModelV2ToolCallPart>>;
|
|
11
|
+
export declare function estimatePromptTokens(messages: LanguageModelV2Prompt, tools?: LanguageModelV2FunctionTool[]): number;
|
|
12
|
+
export declare function estimateTokens(text: string): number;
|
|
13
|
+
//# sourceMappingURL=agent-llm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-llm.d.ts","sourceRoot":"","sources":["../../src/agent/agent-llm.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAW,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAErD,OAAO,EACL,IAAI,EACJ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,EAE9B,MAAM,kBAAkB,CAAC;AAG1B,wBAAgB,yBAAyB,IAAI,uBAAuB,CAgBnE;AAED,wBAAgB,6BAA6B,IAAI,uBAAuB,CAYvE;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,GAC7B,2BAA2B,EAAE,CAQ/B;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,YAAY,EACnD,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,MAAM,GACX,CAAC,GAAG,IAAI,CAOV;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,2BAA2B,EACpC,UAAU,EAAE,UAAU,EACtB,aAAa,CAAC,EAAE,qBAAqB,GACpC,6BAA6B,CAqG/B;AAED,wBAAsB,YAAY,CAChC,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,kBAAkB,EACvB,QAAQ,EAAE,qBAAqB,EAC/B,KAAK,EAAE,2BAA2B,EAAE,EACpC,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,yBAAyB,EACtC,QAAQ,CAAC,EAAE,mBAAmB,GAAG,aAAa,EAC9C,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAC7C,OAAO,CAAC,KAAK,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,CAAC,CAiFvE;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,qBAAqB,EAC/B,KAAK,CAAC,EAAE,2BAA2B,EAAE,UAqDtC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,UA2C1C"}
|
package/dist/agent/base.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AgentChain } from "
|
|
2
|
-
import
|
|
3
|
-
import { Tool, IMcpClient, LLMRequest, ToolResult, ToolExecuter, WorkflowAgent, HumanCallback, StreamCallback } from "../types";
|
|
1
|
+
import { AgentChain } from "./chain";
|
|
2
|
+
import { Tool, IMcpClient, LLMRequest, ToolResult, ToolExecuter, WorkflowAgent, HumanCallback, AgentStreamCallback } from "../types";
|
|
4
3
|
import { LanguageModelV2Prompt, LanguageModelV2FilePart, LanguageModelV2TextPart, LanguageModelV2ToolCallPart, LanguageModelV2ToolResultPart } from "@ai-sdk/provider";
|
|
4
|
+
import TaskContext, { AgentContext } from "./agent-context";
|
|
5
5
|
export type AgentParams = {
|
|
6
6
|
name: string;
|
|
7
7
|
description: string;
|
|
@@ -20,14 +20,14 @@ export declare class Agent {
|
|
|
20
20
|
protected mcpClients: IMcpClient[];
|
|
21
21
|
protected planDescription?: string;
|
|
22
22
|
protected requestHandler?: (request: LLMRequest) => void;
|
|
23
|
-
protected callback?:
|
|
23
|
+
protected callback?: AgentStreamCallback & HumanCallback;
|
|
24
24
|
protected agentContext?: AgentContext;
|
|
25
25
|
constructor(params: AgentParams);
|
|
26
|
-
run(context:
|
|
26
|
+
run(context: TaskContext, agentChain: AgentChain): Promise<string>;
|
|
27
27
|
runWithContext(agentContext: AgentContext, mcpClients?: IMcpClient | IMcpClient[], maxReactNum?: number, historyMessages?: LanguageModelV2Prompt): Promise<string>;
|
|
28
28
|
protected handleCallResult(agentContext: AgentContext, messages: LanguageModelV2Prompt, agentTools: Tool[], results: Array<LanguageModelV2TextPart | LanguageModelV2ToolCallPart>): Promise<string | null>;
|
|
29
29
|
protected callToolCall(agentContext: AgentContext, agentTools: Tool[], result: LanguageModelV2ToolCallPart, user_messages?: LanguageModelV2Prompt): Promise<LanguageModelV2ToolResultPart>;
|
|
30
|
-
protected system_auto_tools(agentNode: WorkflowAgent): Tool[];
|
|
30
|
+
protected system_auto_tools(agentNode: WorkflowAgent, agentContext: AgentContext): Tool[];
|
|
31
31
|
protected buildSystemPrompt(agentContext: AgentContext, tools: Tool[]): Promise<string>;
|
|
32
32
|
protected buildUserPrompt(agentContext: AgentContext, tools: Tool[]): Promise<Array<LanguageModelV2TextPart | LanguageModelV2FilePart>>;
|
|
33
33
|
protected extSysPrompt(agentContext: AgentContext, tools: Tool[]): Promise<string>;
|
|
@@ -39,7 +39,7 @@ export declare class Agent {
|
|
|
39
39
|
protected toolExecuter(mcpClient: IMcpClient, name: string): ToolExecuter;
|
|
40
40
|
protected handleMessages(agentContext: AgentContext, messages: LanguageModelV2Prompt, tools: Tool[]): Promise<void>;
|
|
41
41
|
protected callInnerTool(fun: () => Promise<any>): Promise<ToolResult>;
|
|
42
|
-
loadTools(context:
|
|
42
|
+
loadTools(context: TaskContext): Promise<Tool[]>;
|
|
43
43
|
addTool(tool: Tool): void;
|
|
44
44
|
protected onTaskStatus(status: "pause" | "abort" | "resume-pause", reason?: string): Promise<void>;
|
|
45
45
|
canParallelToolCalls(toolCalls?: LanguageModelV2ToolCallPart[]): boolean;
|
package/dist/agent/base.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAa,MAAM,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { LanguageModelV2Prompt } from "@ai-sdk/provider";
|
|
2
|
+
import { Agent } from "../base";
|
|
3
|
+
import { AgentContext } from "../agent-context";
|
|
4
|
+
import { ToolExecuter, IMcpClient } from "../../types";
|
|
5
|
+
export declare const AGENT_NAME = "Browser";
|
|
6
|
+
export default abstract class BaseBrowserAgent extends Agent {
|
|
7
|
+
protected abstract screenshot(agentContext: AgentContext): Promise<{
|
|
8
|
+
imageBase64: string;
|
|
9
|
+
imageType: "image/jpeg" | "image/png";
|
|
10
|
+
}>;
|
|
11
|
+
protected abstract navigate_to(agentContext: AgentContext, url: string): Promise<{
|
|
12
|
+
url: string;
|
|
13
|
+
title?: string;
|
|
14
|
+
}>;
|
|
15
|
+
protected abstract get_all_tabs(agentContext: AgentContext): Promise<Array<{
|
|
16
|
+
tabId: number;
|
|
17
|
+
url: string;
|
|
18
|
+
title: string;
|
|
19
|
+
}>>;
|
|
20
|
+
protected abstract switch_tab(agentContext: AgentContext, tabId: number): Promise<{
|
|
21
|
+
tabId: number;
|
|
22
|
+
url: string;
|
|
23
|
+
title: string;
|
|
24
|
+
}>;
|
|
25
|
+
protected go_back(agentContext: AgentContext): Promise<void>;
|
|
26
|
+
protected extract_page_content(agentContext: AgentContext, variable_name?: string): Promise<{
|
|
27
|
+
title: string;
|
|
28
|
+
page_url: string;
|
|
29
|
+
page_content: string;
|
|
30
|
+
}>;
|
|
31
|
+
protected controlMcpTools(agentContext: AgentContext, messages: LanguageModelV2Prompt, loopNum: number): Promise<{
|
|
32
|
+
mcpTools: boolean;
|
|
33
|
+
mcpParams?: Record<string, unknown>;
|
|
34
|
+
}>;
|
|
35
|
+
protected toolExecuter(mcpClient: IMcpClient, name: string): ToolExecuter;
|
|
36
|
+
protected get_current_page(agentContext: AgentContext): Promise<{
|
|
37
|
+
url: string;
|
|
38
|
+
title?: string;
|
|
39
|
+
tabId?: number;
|
|
40
|
+
}>;
|
|
41
|
+
protected lastToolResult(messages: LanguageModelV2Prompt): {
|
|
42
|
+
id: string;
|
|
43
|
+
toolName: string;
|
|
44
|
+
args: unknown;
|
|
45
|
+
result: unknown;
|
|
46
|
+
} | null;
|
|
47
|
+
protected toolUseNames(messages?: LanguageModelV2Prompt): string[];
|
|
48
|
+
protected abstract execute_script(agentContext: AgentContext, func: (...args: any[]) => void, args: any[]): Promise<any>;
|
|
49
|
+
protected execute_mcp_script(agentContext: AgentContext, script: string): Promise<string | number | Record<string, any> | undefined>;
|
|
50
|
+
}
|
|
51
|
+
export { BaseBrowserAgent };
|
|
52
|
+
//# sourceMappingURL=browser-base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-base.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/browser-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { LanguageModelV2Prompt, LanguageModelV2ToolCallPart } from "@ai-sdk/provider";
|
|
2
|
+
import { AgentContext } from "../agent-context";
|
|
3
|
+
import { Tool, IMcpClient } from "../../types";
|
|
4
|
+
import { BaseBrowserAgent } from "./browser-base";
|
|
5
|
+
export default abstract class BaseBrowserLabelsAgent extends BaseBrowserAgent {
|
|
6
|
+
constructor(llms?: string[], ext_tools?: Tool[], mcpClients?: IMcpClient | IMcpClient[]);
|
|
7
|
+
protected input_text(agentContext: AgentContext, index: number, text: string, enter: boolean): Promise<any>;
|
|
8
|
+
protected click_element(agentContext: AgentContext, index: number, num_clicks: number, button: "left" | "right" | "middle"): Promise<any>;
|
|
9
|
+
protected scroll_to_element(agentContext: AgentContext, index: number): Promise<void>;
|
|
10
|
+
protected scroll_mouse_wheel(agentContext: AgentContext, amount: number, extract_page_content: boolean): Promise<any>;
|
|
11
|
+
protected hover_to_element(agentContext: AgentContext, index: number): Promise<void>;
|
|
12
|
+
protected get_select_options(agentContext: AgentContext, index: number): Promise<any>;
|
|
13
|
+
protected select_option(agentContext: AgentContext, index: number, option: string): Promise<any>;
|
|
14
|
+
protected screenshot_and_html(agentContext: AgentContext): Promise<{
|
|
15
|
+
imageBase64?: string;
|
|
16
|
+
imageType?: "image/jpeg" | "image/png";
|
|
17
|
+
pseudoHtml: string;
|
|
18
|
+
double_screenshots?: {
|
|
19
|
+
imageBase64: string;
|
|
20
|
+
imageType: "image/jpeg" | "image/png";
|
|
21
|
+
};
|
|
22
|
+
client_rect: {
|
|
23
|
+
width: number;
|
|
24
|
+
height: number;
|
|
25
|
+
};
|
|
26
|
+
}>;
|
|
27
|
+
protected screenshot_and_compress(agentContext: AgentContext, client_rect?: {
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
}): Promise<{
|
|
31
|
+
imageBase64: string;
|
|
32
|
+
imageType: "image/jpeg" | "image/png";
|
|
33
|
+
}>;
|
|
34
|
+
protected get_element_script(index: number): string;
|
|
35
|
+
canParallelToolCalls(toolCalls?: LanguageModelV2ToolCallPart[]): boolean;
|
|
36
|
+
private buildInitTools;
|
|
37
|
+
protected double_screenshots(agentContext: AgentContext, messages: LanguageModelV2Prompt, tools: Tool[]): Promise<boolean>;
|
|
38
|
+
protected handleMessages(agentContext: AgentContext, messages: LanguageModelV2Prompt, tools: Tool[]): Promise<void>;
|
|
39
|
+
private handlePseudoHtmlText;
|
|
40
|
+
private removePseudoHtmlAttr;
|
|
41
|
+
}
|
|
42
|
+
export { BaseBrowserLabelsAgent };
|
|
43
|
+
//# sourceMappingURL=browser-labels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-labels.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/browser-labels.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseBrowserAgent } from "./browser-base";
|
|
2
|
+
import { AgentContext } from "../agent-context";
|
|
3
|
+
import { LanguageModelV2Prompt } from "@ai-sdk/provider";
|
|
4
|
+
import { Tool, IMcpClient } from "../../types";
|
|
5
|
+
export default abstract class BaseBrowserScreenAgent extends BaseBrowserAgent {
|
|
6
|
+
constructor(llms?: string[], ext_tools?: Tool[], mcpClients?: IMcpClient | IMcpClient[]);
|
|
7
|
+
protected abstract typing(agentContext: AgentContext, text: string): Promise<void>;
|
|
8
|
+
protected abstract click(agentContext: AgentContext, x: number, y: number, num_clicks: number, button_type: "left" | "right" | "middle"): Promise<void>;
|
|
9
|
+
protected abstract scroll(agentContext: AgentContext, amount: number): Promise<void>;
|
|
10
|
+
protected abstract move_to(agentContext: AgentContext, x: number, y: number): Promise<void>;
|
|
11
|
+
protected abstract press(agentContext: AgentContext, key: "enter" | "tab" | "space" | "backspace" | "delete"): Promise<void>;
|
|
12
|
+
protected abstract drag_and_drop(agentContext: AgentContext, x1: number, y1: number, x2: number, y2: number): Promise<void>;
|
|
13
|
+
private buildInitTools;
|
|
14
|
+
protected handleMessages(agentContext: AgentContext, messages: LanguageModelV2Prompt, tools: Tool[]): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
export { BaseBrowserScreenAgent };
|
|
17
|
+
//# sourceMappingURL=browser-screen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-screen.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/browser-screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAc,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAc,UAAU,EAAE,MAAM,aAAa,CAAC;AAG3D,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,sBAAuB,SAAQ,gBAAgB;gBAC/D,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE;IA6BvF,SAAS,CAAC,QAAQ,CAAC,MAAM,CACvB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC;IAEhB,SAAS,CAAC,QAAQ,CAAC,KAAK,CACtB,YAAY,EAAE,YAAY,EAC1B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GACvC,OAAO,CAAC,IAAI,CAAC;IAEhB,SAAS,CAAC,QAAQ,CAAC,MAAM,CACvB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAEhB,SAAS,CAAC,QAAQ,CAAC,OAAO,CACxB,YAAY,EAAE,YAAY,EAC1B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,OAAO,CAAC,IAAI,CAAC;IAEhB,SAAS,CAAC,QAAQ,CAAC,KAAK,CACtB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,GACtD,OAAO,CAAC,IAAI,CAAC;IAEhB,SAAS,CAAC,QAAQ,CAAC,aAAa,CAC9B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,IAAI,CAAC;IAEhB,OAAO,CAAC,cAAc;cAsUN,cAAc,CAC5B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,qBAAqB,EAC/B,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,IAAI,CAAC;CA4BjB;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-dom-tree.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/build-dom-tree.ts"],"names":[],"mappings":"AACA,wBAAgB,kBAAkB,SAoxBjC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseBrowserAgent, AGENT_NAME } from "./
|
|
2
|
-
import BaseBrowserLabelsAgent from "./
|
|
3
|
-
import BaseBrowserScreenAgent from "./
|
|
1
|
+
import { BaseBrowserAgent, AGENT_NAME } from "./browser-base";
|
|
2
|
+
import BaseBrowserLabelsAgent from "./browser-labels";
|
|
3
|
+
import BaseBrowserScreenAgent from "./browser-screen";
|
|
4
4
|
export { AGENT_NAME, BaseBrowserAgent, BaseBrowserScreenAgent, BaseBrowserLabelsAgent };
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,2 +1,22 @@
|
|
|
1
|
-
export declare function extract_page_content(
|
|
1
|
+
export declare function extract_page_content(params?: {
|
|
2
|
+
root_selector?: string;
|
|
3
|
+
root_element?: HTMLElement;
|
|
4
|
+
max_url_length?: number;
|
|
5
|
+
max_content_length?: number;
|
|
6
|
+
min_image_area?: number;
|
|
7
|
+
ignored_tags?: string[];
|
|
8
|
+
key_attributes?: string[];
|
|
9
|
+
}): string;
|
|
10
|
+
export declare function mark_screenshot_highlight_elements(screenshot: {
|
|
11
|
+
imageBase64: string;
|
|
12
|
+
imageType: "image/jpeg" | "image/png";
|
|
13
|
+
}, area_map: Record<string, {
|
|
14
|
+
x: number;
|
|
15
|
+
y: number;
|
|
16
|
+
width: number;
|
|
17
|
+
height: number;
|
|
18
|
+
}>, client_rect: {
|
|
19
|
+
width: number;
|
|
20
|
+
height: number;
|
|
21
|
+
}): Promise<string>;
|
|
2
22
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/agent/browser/utils.ts"],"names":[],"mappings":"AAEA,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,GAAG,MAAM,CAuXT;AAED,wBAAgB,kCAAkC,CAChD,UAAU,EAAE;IACV,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,YAAY,GAAG,WAAW,CAAC;CACvC,EACD,QAAQ,EAAE,MAAM,CACd,MAAM,EACN;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CACxD,EACD,WAAW,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,MAAM,CAAC,CAkLjB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ToolResult } from "../types/tools.types";
|
|
2
|
+
import { LLMRequest } from "../types/llm.types";
|
|
3
|
+
import { WorkflowAgent } from "../types/agent.types";
|
|
4
|
+
import { LanguageModelV2ToolCallPart } from "@ai-sdk/provider";
|
|
5
|
+
type ChainEvent = {
|
|
6
|
+
type: "update";
|
|
7
|
+
target: AgentChain | ToolChain;
|
|
8
|
+
};
|
|
9
|
+
interface Callback {
|
|
10
|
+
(chain: Chain, event: ChainEvent): void;
|
|
11
|
+
}
|
|
12
|
+
export declare class ToolChain {
|
|
13
|
+
readonly toolName: string;
|
|
14
|
+
readonly toolCallId: string;
|
|
15
|
+
readonly request: LLMRequest;
|
|
16
|
+
params?: Record<string, unknown>;
|
|
17
|
+
toolResult?: ToolResult;
|
|
18
|
+
onUpdate?: () => void;
|
|
19
|
+
constructor(toolUse: LanguageModelV2ToolCallPart, request: LLMRequest);
|
|
20
|
+
updateParams(params: Record<string, unknown>): void;
|
|
21
|
+
updateToolResult(toolResult: ToolResult): void;
|
|
22
|
+
}
|
|
23
|
+
export declare class AgentChain {
|
|
24
|
+
agent: WorkflowAgent;
|
|
25
|
+
tools: ToolChain[];
|
|
26
|
+
agentRequest?: LLMRequest;
|
|
27
|
+
agentResult?: string;
|
|
28
|
+
onUpdate?: (event: ChainEvent) => void;
|
|
29
|
+
constructor(agent: WorkflowAgent);
|
|
30
|
+
push(tool: ToolChain): void;
|
|
31
|
+
}
|
|
32
|
+
export default class Chain {
|
|
33
|
+
taskPrompt: string;
|
|
34
|
+
planRequest?: LLMRequest;
|
|
35
|
+
planResult?: string;
|
|
36
|
+
agents: AgentChain[];
|
|
37
|
+
private listeners;
|
|
38
|
+
constructor(taskPrompt: string);
|
|
39
|
+
push(agent: AgentChain): void;
|
|
40
|
+
private pub;
|
|
41
|
+
addListener(callback: Callback): void;
|
|
42
|
+
removeListener(callback: Callback): void;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=chain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/agent/chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAE/D,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;CAChC,CAAC;AAEF,UAAU,QAAQ;IAChB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;CACzC;AAED,qBAAa,SAAS;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;gBAEV,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,UAAU;IAMrE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAKnD,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAI/C;AAED,qBAAa,UAAU;IACrB,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,SAAS,EAAE,CAAM;IACxB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;gBAE3B,KAAK,EAAE,aAAa;IAIhC,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;CAe5B;AAED,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,EAAE,CAAM;IAC1B,OAAO,CAAC,SAAS,CAAkB;gBAEvB,UAAU,EAAE,MAAM;IAI9B,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAW7B,OAAO,CAAC,GAAG;IAIJ,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIrC,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;CAGhD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Agent } from "../agent";
|
|
2
|
+
import TaskContext from "./agent-context";
|
|
3
|
+
import { AgentChain } from "./chain";
|
|
4
|
+
import { EkoConfig, EkoResult, Workflow, NormalAgentNode } from "../types/agent.types";
|
|
5
|
+
export declare class Eko {
|
|
6
|
+
protected chatId: string;
|
|
7
|
+
protected config: EkoConfig;
|
|
8
|
+
constructor(config: EkoConfig, chatId?: string);
|
|
9
|
+
generate(taskPrompt: string, taskId?: string, contextParams?: Record<string, any>, datetime?: string): Promise<Workflow>;
|
|
10
|
+
modify(taskId: string, modifyTaskPrompt: string): Promise<Workflow>;
|
|
11
|
+
execute(taskId: string): Promise<EkoResult>;
|
|
12
|
+
run(taskPrompt: string, taskId?: string, contextParams?: Record<string, any>): Promise<EkoResult>;
|
|
13
|
+
initContext(workflow: Workflow, contextParams?: Record<string, any>): Promise<TaskContext>;
|
|
14
|
+
private doRunWorkflow;
|
|
15
|
+
protected runAgent(context: TaskContext, agent: Agent, agentNode: NormalAgentNode, agentChain: AgentChain): Promise<string>;
|
|
16
|
+
getTask(taskId: string): TaskContext | undefined;
|
|
17
|
+
getAllTaskId(): string[];
|
|
18
|
+
deleteTask(taskId: string): boolean;
|
|
19
|
+
abortTask(taskId: string, reason?: string): boolean;
|
|
20
|
+
pauseTask(taskId: string, pause: boolean, abortCurrentStep?: boolean, reason?: string): boolean;
|
|
21
|
+
chatTask(taskId: string, userPrompt: string): string[] | undefined;
|
|
22
|
+
addAgent(agent: Agent): void;
|
|
23
|
+
private onTaskStatus;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=eko.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eko.d.ts","sourceRoot":"","sources":["../../src/agent/eko.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAC1C,OAAc,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG5C,OAAO,EACL,SAAS,EACT,SAAS,EACT,QAAQ,EACR,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAI9B,qBAAa,GAAG;IACd,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC;gBAEhB,MAAM,EAAE,SAAS,EAAE,MAAM,GAAE,MAAiB;IAK3C,QAAQ,CACnB,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAiB,EACzB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC;IA8BP,MAAM,CACjB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,QAAQ,CAAC;IAcP,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA+B3C,GAAG,CACd,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAiB,EACzB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAClC,OAAO,CAAC,SAAS,CAAC;IAKR,WAAW,CACtB,QAAQ,EAAE,QAAQ,EAClB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAClC,OAAO,CAAC,WAAW,CAAC;YA0BT,aAAa;cAiHX,QAAQ,CACtB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,MAAM,CAAC;IAqDX,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIhD,YAAY,IAAI,MAAM,EAAE;IAIxB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IASnC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO;IAYnD,SAAS,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,gBAAgB,CAAC,EAAE,OAAO,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO;IAWH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAQlE,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;YAKrB,YAAY;CAa3B"}
|
package/dist/agent/file.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Agent } from "./base";
|
|
2
|
-
import { AgentContext } from "
|
|
2
|
+
import { AgentContext } from "./agent-context";
|
|
3
3
|
import { Tool, IMcpClient } from "../types";
|
|
4
4
|
export declare const AGENT_NAME = "File";
|
|
5
5
|
export default abstract class BaseFileAgent extends Agent {
|
package/dist/agent/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { Eko } from "./eko";
|
|
2
|
+
import { BaseBrowserAgent, BaseBrowserLabelsAgent, BaseBrowserScreenAgent } from "./browser";
|
|
1
3
|
import { Agent, AgentParams } from "./base";
|
|
2
4
|
import BaseFileAgent from "./file";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { BaseBrowserAgent, BaseBrowserLabelsAgent, BaseBrowserScreenAgent } from "./browser";
|
|
6
|
-
export { Agent, BaseFileAgent, BaseShellAgent, BaseComputerAgent, BaseBrowserAgent, BaseBrowserLabelsAgent, BaseBrowserScreenAgent, type AgentParams, };
|
|
5
|
+
export default Eko;
|
|
6
|
+
export { Agent, type AgentParams, BaseFileAgent, BaseBrowserAgent, BaseBrowserLabelsAgent, BaseBrowserScreenAgent, };
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,aAAa,MAAM,QAAQ,CAAC;AAEnC,eAAe,GAAG,CAAC;AAEnB,OAAO,EACL,KAAK,EACL,KAAK,WAAW,EAChB,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,GACvB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import TaskContext from "./agent-context";
|
|
2
|
+
import { AgentStreamCallback, Workflow } from "../types/agent.types";
|
|
3
|
+
import { LanguageModelV2Prompt, LanguageModelV2TextPart } from "@ai-sdk/provider";
|
|
4
|
+
export declare class Planner {
|
|
5
|
+
private taskId;
|
|
6
|
+
private context;
|
|
7
|
+
private callback?;
|
|
8
|
+
constructor(context: TaskContext, callback?: AgentStreamCallback);
|
|
9
|
+
plan(taskPrompt: string | LanguageModelV2TextPart, saveHistory?: boolean, datetime?: string): Promise<Workflow>;
|
|
10
|
+
replan(taskPrompt: string, saveHistory?: boolean, datetime?: string): Promise<Workflow>;
|
|
11
|
+
doPlan(taskPrompt: string, messages: LanguageModelV2Prompt, saveHistory: boolean, retryNum?: number): Promise<Workflow>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=plan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/agent/plan.ts"],"names":[],"mappings":"AAEA,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EACL,qBAAqB,EAErB,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAAsB;gBAE3B,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,mBAAmB;IAM1D,IAAI,CACR,UAAU,EAAE,MAAM,GAAG,uBAAuB,EAC5C,WAAW,CAAC,EAAE,OAAO,EACrB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC;IA0Bd,MAAM,CACV,UAAU,EAAE,MAAM,EAClB,WAAW,GAAE,OAAc,EAC3B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC;IAoBd,MAAM,CACV,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,qBAAqB,EAC/B,WAAW,EAAE,OAAO,EACpB,QAAQ,GAAE,MAAU,GACnB,OAAO,CAAC,QAAQ,CAAC;CA2GrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replan.d.ts","sourceRoot":"","sources":["../../src/agent/replan.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAS/C,wBAAsB,eAAe,CACnC,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,OAAO,CAAC,CA6ElB;AAED,wBAAsB,cAAc,CAAC,YAAY,EAAE,YAAY,iBAsD9D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { EkoMessage, DialogueTool, DialogueParams, EkoDialogueConfig, EkoMessageUserPart, ChatStreamCallback, LanguageModelV2TextPart, LanguageModelV2ToolCallPart } from "../types";
|
|
2
|
+
import { EkoMemory } from "../memory/memory";
|
|
3
|
+
import { ChatContext } from "./chat-context";
|
|
4
|
+
export declare class ChatAgent {
|
|
5
|
+
protected memory: EkoMemory;
|
|
6
|
+
protected tools: DialogueTool[];
|
|
7
|
+
protected chatContext: ChatContext;
|
|
8
|
+
protected maxReactLoopNum: number;
|
|
9
|
+
constructor(config: EkoDialogueConfig, chatId?: string, memory?: EkoMemory, tools?: DialogueTool[]);
|
|
10
|
+
chat(params: DialogueParams): Promise<string>;
|
|
11
|
+
initMessages(): Promise<void>;
|
|
12
|
+
protected buildSystemPrompt(params: DialogueParams, chatTools: DialogueTool[]): Promise<void>;
|
|
13
|
+
protected addUserMessage(messageId: string, user: EkoMessageUserPart[]): Promise<EkoMessage>;
|
|
14
|
+
protected addMessages(messages: EkoMessage[], storage?: boolean): Promise<void>;
|
|
15
|
+
protected buildInnerTools(params: DialogueParams): DialogueTool[];
|
|
16
|
+
getMemory(): EkoMemory;
|
|
17
|
+
getTools(): DialogueTool[];
|
|
18
|
+
getChatContext(): ChatContext;
|
|
19
|
+
protected handleCallResult(messageId: string, chatTools: DialogueTool[], results: Array<LanguageModelV2TextPart | LanguageModelV2ToolCallPart>, chatStreamCallback?: ChatStreamCallback): Promise<string | null>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=chat-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-agent.d.ts","sourceRoot":"","sources":["../../src/chat/chat-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,2BAA2B,EAE5B,MAAM,UAAU,CAAC;AASlB,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAS7C,qBAAa,SAAS;IACpB,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC;IAC5B,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC;IAChC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,eAAe,EAAE,MAAM,CAAM;gBAGrC,MAAM,EAAE,iBAAiB,EACzB,MAAM,GAAE,MAA2B,EACnC,MAAM,CAAC,EAAE,SAAS,EAClB,KAAK,CAAC,EAAE,YAAY,EAAE;IAQX,IAAI,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAsE7C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAe1B,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,YAAY,EAAE,GACxB,OAAO,CAAC,IAAI,CAAC;cAsCA,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,kBAAkB,EAAE,GACzB,OAAO,CAAC,UAAU,CAAC;cAWN,WAAW,CACzB,QAAQ,EAAE,UAAU,EAAE,EACtB,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,IAAI,CAAC;IAUhB,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,YAAY,EAAE;IAc1D,SAAS,IAAI,SAAS;IAItB,QAAQ,IAAI,YAAY,EAAE;IAI1B,cAAc,IAAI,WAAW;cAIpB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EAAE,KAAK,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,EACrE,kBAAkB,CAAC,EAAE,kBAAkB,GACtC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAyE1B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Eko from "../agent";
|
|
2
|
+
import { EkoDialogueConfig } from "../types";
|
|
3
|
+
export declare class ChatContext {
|
|
4
|
+
protected chatId: string;
|
|
5
|
+
protected config: EkoDialogueConfig;
|
|
6
|
+
protected ekoMap: Map<string, Eko>;
|
|
7
|
+
protected globalVariables: Map<string, any>;
|
|
8
|
+
constructor(chatId: string, config: EkoDialogueConfig);
|
|
9
|
+
getChatId(): string;
|
|
10
|
+
getConfig(): EkoDialogueConfig;
|
|
11
|
+
addEko(taskId: string, eko: Eko): void;
|
|
12
|
+
getEko(taskId: string): Eko | undefined;
|
|
13
|
+
getGlobalVariables(): Map<string, any>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=chat-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-context.d.ts","sourceRoot":"","sources":["../../src/chat/chat-context.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,qBAAa,WAAW;IACtB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACpC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAEhC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB;IAO9C,SAAS,IAAI,MAAM;IAGnB,SAAS,IAAI,iBAAiB;IAG9B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAGtC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS;IAGvC,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;CAG9C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LanguageModelV2FilePart, LanguageModelV2ToolResultPart } from "@ai-sdk/provider";
|
|
2
|
+
import { ChatStreamCallback, EkoMessageToolPart, EkoMessageUserPart, LanguageModelV2Prompt, EkoMessageAssistantPart, LanguageModelV2TextPart, LanguageModelV2ToolChoice, LanguageModelV2ToolCallPart, LanguageModelV2FunctionTool } from "../types";
|
|
3
|
+
import { RetryLanguageModel } from "../llm";
|
|
4
|
+
export declare function callChatLLM(chatId: string, messageId: string, rlm: RetryLanguageModel, messages: LanguageModelV2Prompt, tools: LanguageModelV2FunctionTool[], toolChoice?: LanguageModelV2ToolChoice, callback?: ChatStreamCallback, signal?: AbortSignal): Promise<Array<LanguageModelV2TextPart | LanguageModelV2ToolCallPart>>;
|
|
5
|
+
export declare function convertAssistantToolResults(results: Array<LanguageModelV2TextPart | LanguageModelV2ToolCallPart>): EkoMessageAssistantPart[];
|
|
6
|
+
export declare function convertToolResults(toolResults: LanguageModelV2ToolResultPart[]): EkoMessageToolPart[];
|
|
7
|
+
export declare function convertUserContent(content: Array<LanguageModelV2TextPart | LanguageModelV2FilePart>): EkoMessageUserPart[];
|
|
8
|
+
//# sourceMappingURL=chat-llm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-llm.d.ts","sourceRoot":"","sources":["../../src/chat/chat-llm.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAW,MAAM,QAAQ,CAAC;AAErD,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,kBAAkB,EACvB,QAAQ,EAAE,qBAAqB,EAC/B,KAAK,EAAE,2BAA2B,EAAE,EACpC,UAAU,CAAC,EAAE,yBAAyB,EACtC,QAAQ,CAAC,EAAE,kBAAkB,EAC7B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,KAAK,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,CAAC,CAkBvE;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,KAAK,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,GACpE,uBAAuB,EAAE,CAqB3B;AAED,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,6BAA6B,EAAE,GAC3C,kBAAkB,EAAE,CA0BtB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,KAAK,CAAC,uBAAuB,GAAG,uBAAuB,CAAC,GAChE,kBAAkB,EAAE,CAgBtB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ChatAgent } from "./chat-agent";
|
|
2
|
+
import { ChatContext } from "./chat-context";
|
|
3
|
+
import { WebSearchTool } from "./tools/web-search";
|
|
4
|
+
import { WebpageQaTool } from "./tools/webpage-qa";
|
|
5
|
+
import AgentWrapTool from "./tools/agent-wrap-tool";
|
|
6
|
+
import { DeepActionTool } from "./tools/deep-action";
|
|
7
|
+
import { TaskVariableStorageTool } from "./tools/variable-storage";
|
|
8
|
+
export { ChatAgent, ChatContext, AgentWrapTool, WebSearchTool, WebpageQaTool, DeepActionTool, TaskVariableStorageTool, };
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EACL,SAAS,EACT,WAAW,EACX,aAAa,EACb,aAAa,EACb,aAAa,EACb,cAAc,EACd,uBAAuB,GACxB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { JSONSchema7 } from "json-schema";
|
|
2
|
+
import { ToolResult, DialogueTool, DialogueParams, NormalAgentNode, LanguageModelV2ToolCallPart } from "../../types";
|
|
3
|
+
import { Agent } from "../../agent";
|
|
4
|
+
import { ChatContext } from "../chat-context";
|
|
5
|
+
import TaskContext from "../../agent/agent-context";
|
|
6
|
+
import { AgentChain } from "../../agent/chain";
|
|
7
|
+
export default class AgentWrapTool implements DialogueTool {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly description: string;
|
|
10
|
+
readonly parameters: JSONSchema7;
|
|
11
|
+
private chatContext;
|
|
12
|
+
private params;
|
|
13
|
+
private agent;
|
|
14
|
+
constructor(chatContext: ChatContext, params: DialogueParams, agent: Agent, extra?: {
|
|
15
|
+
name?: string;
|
|
16
|
+
description?: string;
|
|
17
|
+
parameters?: JSONSchema7;
|
|
18
|
+
});
|
|
19
|
+
execute(args: Record<string, unknown>, toolCall: LanguageModelV2ToolCallPart, messageId: string): Promise<ToolResult>;
|
|
20
|
+
protected runAgent(context: TaskContext, agent: Agent, agentNode: NormalAgentNode, agentChain: AgentChain): Promise<string>;
|
|
21
|
+
protected getTaskWebsite(tabIds: string[]): Promise<any[]>;
|
|
22
|
+
}
|
|
23
|
+
export { AgentWrapTool };
|
|
24
|
+
//# sourceMappingURL=agent-wrap-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-wrap-tool.d.ts","sourceRoot":"","sources":["../../../src/chat/tools/agent-wrap-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,2BAA2B,EAC5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGtD,MAAM,CAAC,OAAO,OAAO,aAAc,YAAW,YAAY;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;IAEjC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,KAAK,CAAQ;gBAGnB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,KAAK,EACZ,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,WAAW,CAAC;KAC1B;IA2CG,OAAO,CACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,QAAQ,EAAE,2BAA2B,EACrC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,CAAC;cA8EN,QAAQ,CACtB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,MAAM,CAAC;cAsDF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;CAgBjE;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
|