@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.
Files changed (124) hide show
  1. package/README.md +5 -12
  2. package/dist/agent/agent-context.d.ts +32 -0
  3. package/dist/agent/agent-context.d.ts.map +1 -0
  4. package/dist/agent/agent-llm.d.ts +13 -0
  5. package/dist/agent/agent-llm.d.ts.map +1 -0
  6. package/dist/agent/base.d.ts +7 -7
  7. package/dist/agent/base.d.ts.map +1 -1
  8. package/dist/agent/browser/browser-base.d.ts +52 -0
  9. package/dist/agent/browser/browser-base.d.ts.map +1 -0
  10. package/dist/agent/browser/browser-labels.d.ts +43 -0
  11. package/dist/agent/browser/browser-labels.d.ts.map +1 -0
  12. package/dist/agent/browser/browser-screen.d.ts +17 -0
  13. package/dist/agent/browser/browser-screen.d.ts.map +1 -0
  14. package/dist/agent/browser/build-dom-tree.d.ts +2 -0
  15. package/dist/agent/browser/build-dom-tree.d.ts.map +1 -0
  16. package/dist/agent/browser/index.d.ts +3 -3
  17. package/dist/agent/browser/utils.d.ts +21 -1
  18. package/dist/agent/browser/utils.d.ts.map +1 -1
  19. package/dist/agent/chain.d.ts +45 -0
  20. package/dist/agent/chain.d.ts.map +1 -0
  21. package/dist/agent/eko.d.ts +25 -0
  22. package/dist/agent/eko.d.ts.map +1 -0
  23. package/dist/agent/file.d.ts +1 -1
  24. package/dist/agent/index.d.ts +4 -4
  25. package/dist/agent/index.d.ts.map +1 -1
  26. package/dist/agent/plan.d.ts +13 -0
  27. package/dist/agent/plan.d.ts.map +1 -0
  28. package/dist/agent/replan.d.ts +4 -0
  29. package/dist/agent/replan.d.ts.map +1 -0
  30. package/dist/chat/chat-agent.d.ts +21 -0
  31. package/dist/chat/chat-agent.d.ts.map +1 -0
  32. package/dist/chat/chat-context.d.ts +15 -0
  33. package/dist/chat/chat-context.d.ts.map +1 -0
  34. package/dist/chat/chat-llm.d.ts +8 -0
  35. package/dist/chat/chat-llm.d.ts.map +1 -0
  36. package/dist/chat/index.d.ts +9 -0
  37. package/dist/chat/index.d.ts.map +1 -0
  38. package/dist/chat/tools/agent-wrap-tool.d.ts +24 -0
  39. package/dist/chat/tools/agent-wrap-tool.d.ts.map +1 -0
  40. package/dist/chat/tools/deep-action.d.ts +16 -0
  41. package/dist/chat/tools/deep-action.d.ts.map +1 -0
  42. package/dist/chat/tools/variable-storage.d.ts +15 -0
  43. package/dist/chat/tools/variable-storage.d.ts.map +1 -0
  44. package/dist/chat/tools/web-search.d.ts +15 -0
  45. package/dist/chat/tools/web-search.d.ts.map +1 -0
  46. package/dist/chat/tools/webpage-qa.d.ts +16 -0
  47. package/dist/chat/tools/webpage-qa.d.ts.map +1 -0
  48. package/dist/common/tree.d.ts +1 -1
  49. package/dist/common/tree.d.ts.map +1 -1
  50. package/dist/common/utils.d.ts +13 -2
  51. package/dist/common/utils.d.ts.map +1 -1
  52. package/dist/common/workflow.d.ts +3 -0
  53. package/dist/common/workflow.d.ts.map +1 -0
  54. package/dist/common/xml.d.ts +1 -1
  55. package/dist/common/xml.d.ts.map +1 -1
  56. package/dist/config/global.d.ts +4 -0
  57. package/dist/config/global.d.ts.map +1 -0
  58. package/dist/config/index.d.ts +4 -22
  59. package/dist/config/index.d.ts.map +1 -1
  60. package/dist/index.cjs +46108 -0
  61. package/dist/index.cjs.map +1 -0
  62. package/dist/index.d.ts +15 -10
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.esm.js +26389 -17426
  65. package/dist/index.esm.js.map +1 -1
  66. package/dist/llm/index.d.ts +2 -21
  67. package/dist/llm/index.d.ts.map +1 -1
  68. package/dist/llm/react.d.ts +9 -0
  69. package/dist/llm/react.d.ts.map +1 -0
  70. package/dist/llm/rlm.d.ts +22 -0
  71. package/dist/llm/rlm.d.ts.map +1 -0
  72. package/dist/memory/index.d.ts +3 -2
  73. package/dist/memory/index.d.ts.map +1 -1
  74. package/dist/memory/memory.d.ts +6 -17
  75. package/dist/memory/memory.d.ts.map +1 -1
  76. package/dist/memory/snapshot.d.ts +1 -1
  77. package/dist/memory/snapshot.d.ts.map +1 -1
  78. package/dist/prompt/agent.d.ts +3 -3
  79. package/dist/prompt/agent.d.ts.map +1 -1
  80. package/dist/prompt/chat.d.ts +3 -0
  81. package/dist/prompt/chat.d.ts.map +1 -0
  82. package/dist/prompt/plan.d.ts +3 -3
  83. package/dist/prompt/plan.d.ts.map +1 -1
  84. package/dist/prompt/prompt-template.d.ts +30 -0
  85. package/dist/prompt/prompt-template.d.ts.map +1 -0
  86. package/dist/service/browser-service.d.ts +7 -0
  87. package/dist/service/browser-service.d.ts.map +1 -0
  88. package/dist/service/chat-service.d.ts +17 -0
  89. package/dist/service/chat-service.d.ts.map +1 -0
  90. package/dist/service/index.d.ts +4 -0
  91. package/dist/service/index.d.ts.map +1 -0
  92. package/dist/tools/foreach-task.d.ts +13 -0
  93. package/dist/tools/foreach-task.d.ts.map +1 -0
  94. package/dist/tools/human-interact.d.ts +15 -0
  95. package/dist/tools/human-interact.d.ts.map +1 -0
  96. package/dist/tools/index.d.ts +6 -6
  97. package/dist/tools/index.d.ts.map +1 -1
  98. package/dist/tools/task-node-status.d.ts +13 -0
  99. package/dist/tools/task-node-status.d.ts.map +1 -0
  100. package/dist/tools/task-result-check.d.ts +18 -0
  101. package/dist/tools/task-result-check.d.ts.map +1 -0
  102. package/dist/tools/todo-list-manager.d.ts +16 -0
  103. package/dist/tools/todo-list-manager.d.ts.map +1 -0
  104. package/dist/tools/variable-storage.d.ts +13 -0
  105. package/dist/tools/variable-storage.d.ts.map +1 -0
  106. package/dist/tools/watch-trigger.d.ts +17 -0
  107. package/dist/tools/watch-trigger.d.ts.map +1 -0
  108. package/dist/tools/wrapper.d.ts +2 -2
  109. package/dist/tools/wrapper.d.ts.map +1 -1
  110. package/dist/types/agent.types.d.ts +124 -0
  111. package/dist/types/agent.types.d.ts.map +1 -0
  112. package/dist/types/chat.types.d.ts +105 -0
  113. package/dist/types/chat.types.d.ts.map +1 -0
  114. package/dist/types/config.types.d.ts +51 -0
  115. package/dist/types/config.types.d.ts.map +1 -0
  116. package/dist/types/index.d.ts +10 -6
  117. package/dist/types/index.d.ts.map +1 -1
  118. package/dist/types/llm.types.d.ts +94 -6
  119. package/dist/types/llm.types.d.ts.map +1 -1
  120. package/dist/types/service.types.d.ts +26 -0
  121. package/dist/types/service.types.d.ts.map +1 -0
  122. package/dist/types/tools.types.d.ts +1 -1
  123. package/dist/types/tools.types.d.ts.map +1 -1
  124. 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 3.0
25
+ ## Upgrading to Eko 4.0
25
26
 
26
- Follow these steps when moving an existing Eko 2.x project to 3.0:
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-20250514",
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 run playwright # first time only, installs browsers
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
  [![Star History Chart](https://api.star-history.com/svg?repos=FellouAI/eko&type=Date)](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"}
@@ -1,7 +1,7 @@
1
- import { AgentChain } from "../core/chain";
2
- import Context, { AgentContext } from "../core/context";
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?: StreamCallback & HumanCallback;
23
+ protected callback?: AgentStreamCallback & HumanCallback;
24
24
  protected agentContext?: AgentContext;
25
25
  constructor(params: AgentParams);
26
- run(context: Context, agentChain: AgentChain): Promise<string>;
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: Context): Promise<Tool[]>;
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;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAa,MAAM,SAAS,CAAC;AAQhD,OAAO,EACL,IAAI,EAEJ,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAS1B,OAAO,WAAW,EAAE,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAK5D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,qBAAa,KAAK;IAChB,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAM;IAC7B,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;IACnC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,QAAQ,CAAC,EAAE,mBAAmB,GAAG,aAAa,CAAC;IACzD,SAAS,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;gBAE1B,MAAM,EAAE,WAAW;IAUlB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBlE,cAAc,CACzB,YAAY,EAAE,YAAY,EAC1B,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,EACtC,WAAW,GAAE,MAAY,EACzB,eAAe,GAAE,qBAA0B,GAC1C,OAAO,CAAC,MAAM,CAAC;cAyGF,gBAAgB,CAC9B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,qBAAqB,EAC/B,UAAU,EAAE,IAAI,EAAE,EAClB,OAAO,EAAE,KAAK,CAAC,uBAAuB,GAAG,2BAA2B,CAAC,GACpE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;cA0DT,YAAY,CAC1B,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,IAAI,EAAE,EAClB,MAAM,EAAE,2BAA2B,EACnC,aAAa,GAAE,qBAA0B,GACxC,OAAO,CAAC,6BAA6B,CAAC;IA0DzC,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,aAAa,EACxB,YAAY,EAAE,YAAY,GACzB,IAAI,EAAE;cAoCO,iBAAiB,CAC/B,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,MAAM,CAAC;cAUF,eAAe,CAC7B,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,KAAK,CAAC,uBAAuB,GAAG,uBAAuB,CAAC,CAAC;cAcpD,YAAY,CAC1B,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,MAAM,CAAC;YAIJ,YAAY;cAmCV,eAAe,CAC7B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;IAMF,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY;cAoBzD,cAAc,CAC5B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,qBAAqB,EAC/B,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,IAAI,CAAC;cAKA,aAAa,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAgB9D,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAUtD,OAAO,CAAC,IAAI,EAAE,IAAI;cAIT,YAAY,CAC1B,MAAM,EAAE,OAAO,GAAG,OAAO,GAAG,cAAc,EAC1C,MAAM,CAAC,EAAE,MAAM;IAOV,oBAAoB,CACzB,SAAS,CAAC,EAAE,2BAA2B,EAAE,GACxC,OAAO;IAIV,IAAI,IAAI,IAAI,MAAM,EAAE,GAAG,SAAS,CAE/B;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAElB;IAED,IAAI,eAAe,uBAElB;IAED,IAAI,UAAU,IAAI,UAAU,EAAE,CAE7B;IAED,IAAI,SAAS,IAAI,UAAU,GAAG,SAAS,CAEtC;IAED,IAAI,YAAY,IAAI,YAAY,GAAG,SAAS,CAE3C;CACF"}
@@ -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,2 @@
1
+ export declare function run_build_dom_tree(): void;
2
+ //# sourceMappingURL=build-dom-tree.d.ts.map
@@ -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 "./browser_base";
2
- import BaseBrowserLabelsAgent from "./browser_labels";
3
- import BaseBrowserScreenAgent from "./browser_screen";
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(max_url_length?: number, max_content_length?: number): string;
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":"AAAA,wBAAgB,oBAAoB,CAAC,cAAc,SAAM,EAAE,kBAAkB,SAAQ,UAmHpF"}
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"}
@@ -1,5 +1,5 @@
1
1
  import { Agent } from "./base";
2
- import { AgentContext } from "../core/context";
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 {
@@ -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
- import BaseShellAgent from "./shell";
4
- import BaseComputerAgent from "./computer";
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,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,aAAa,MAAM,QAAQ,CAAC;AACnC,OAAO,cAAc,MAAM,SAAS,CAAC;AACrC,OAAO,iBAAiB,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,WAAW,GACjB,CAAC"}
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,4 @@
1
+ import { AgentContext } from "./agent-context";
2
+ export declare function checkTaskReplan(agentContext: AgentContext): Promise<boolean>;
3
+ export declare function replanWorkflow(agentContext: AgentContext): Promise<void>;
4
+ //# sourceMappingURL=replan.d.ts.map
@@ -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"}