@eko-ai/eko 1.3.5 → 2.0.1

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 (161) hide show
  1. package/README.md +37 -19
  2. package/dist/agent/a2a.d.ts +7 -0
  3. package/dist/agent/a2a.d.ts.map +1 -0
  4. package/dist/agent/base.d.ts +47 -0
  5. package/dist/agent/base.d.ts.map +1 -0
  6. package/dist/agent/browser/browser_base.d.ts +30 -0
  7. package/dist/agent/browser/browser_base.d.ts.map +1 -0
  8. package/dist/agent/browser/browser_labels.d.ts +21 -0
  9. package/dist/agent/browser/browser_labels.d.ts.map +1 -0
  10. package/dist/agent/browser/browser_screen.d.ts +16 -0
  11. package/dist/agent/browser/browser_screen.d.ts.map +1 -0
  12. package/dist/agent/browser/build_dom_tree.d.ts +2 -0
  13. package/dist/agent/browser/build_dom_tree.d.ts.map +1 -0
  14. package/dist/agent/browser/index.d.ts +6 -0
  15. package/dist/agent/browser/index.d.ts.map +1 -0
  16. package/dist/agent/chat.d.ts +7 -0
  17. package/dist/agent/chat.d.ts.map +1 -0
  18. package/dist/agent/computer.d.ts +23 -0
  19. package/dist/agent/computer.d.ts.map +1 -0
  20. package/dist/agent/file.d.ts +14 -0
  21. package/dist/agent/file.d.ts.map +1 -0
  22. package/dist/agent/index.d.ts +9 -0
  23. package/dist/agent/index.d.ts.map +1 -0
  24. package/dist/agent/shell.d.ts +14 -0
  25. package/dist/agent/shell.d.ts.map +1 -0
  26. package/dist/agent/timer.d.ts +5 -0
  27. package/dist/agent/timer.d.ts.map +1 -0
  28. package/dist/common/log.d.ts +43 -2
  29. package/dist/common/log.d.ts.map +1 -0
  30. package/dist/common/utils.d.ts +12 -0
  31. package/dist/common/utils.d.ts.map +1 -0
  32. package/dist/common/xml.d.ts +7 -0
  33. package/dist/common/xml.d.ts.map +1 -0
  34. package/dist/config/index.d.ts +8 -0
  35. package/dist/config/index.d.ts.map +1 -0
  36. package/dist/core/chain.d.ts +45 -0
  37. package/dist/core/chain.d.ts.map +1 -0
  38. package/dist/core/context.d.ts +23 -0
  39. package/dist/core/context.d.ts.map +1 -0
  40. package/dist/core/index.d.ts +18 -0
  41. package/dist/core/index.d.ts.map +1 -0
  42. package/dist/core/plan.d.ts +11 -0
  43. package/dist/core/plan.d.ts.map +1 -0
  44. package/dist/index.cjs.js +18163 -10856
  45. package/dist/index.d.ts +13 -10
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.esm.js +18147 -10888
  48. package/dist/llm/index.d.ts +15 -0
  49. package/dist/llm/index.d.ts.map +1 -0
  50. package/dist/mcp/client.d.ts +28 -0
  51. package/dist/mcp/client.d.ts.map +1 -0
  52. package/dist/mcp/index.d.ts +28 -0
  53. package/dist/mcp/index.d.ts.map +1 -0
  54. package/dist/prompt/agent.d.ts +6 -0
  55. package/dist/prompt/agent.d.ts.map +1 -0
  56. package/dist/prompt/plan.d.ts +4 -0
  57. package/dist/prompt/plan.d.ts.map +1 -0
  58. package/dist/tools/foreach_task.d.ts +12 -0
  59. package/dist/tools/foreach_task.d.ts.map +1 -0
  60. package/dist/tools/human_interact.d.ts +12 -0
  61. package/dist/tools/human_interact.d.ts.map +1 -0
  62. package/dist/tools/index.d.ts +19 -0
  63. package/dist/tools/index.d.ts.map +1 -0
  64. package/dist/tools/task_node_status.d.ts +12 -0
  65. package/dist/tools/task_node_status.d.ts.map +1 -0
  66. package/dist/tools/variable_storage.d.ts +12 -0
  67. package/dist/tools/variable_storage.d.ts.map +1 -0
  68. package/dist/tools/watch_trigger.d.ts +12 -0
  69. package/dist/tools/watch_trigger.d.ts.map +1 -0
  70. package/dist/tools/wrapper.d.ts +12 -0
  71. package/dist/tools/wrapper.d.ts.map +1 -0
  72. package/dist/types/core.types.d.ts +114 -0
  73. package/dist/types/core.types.d.ts.map +1 -0
  74. package/dist/types/index.d.ts +3 -3
  75. package/dist/types/index.d.ts.map +1 -0
  76. package/dist/types/llm.types.d.ts +80 -51
  77. package/dist/types/llm.types.d.ts.map +1 -0
  78. package/dist/types/mcp.types.d.ts +35 -0
  79. package/dist/types/mcp.types.d.ts.map +1 -0
  80. package/dist/types/tools.types.d.ts +56 -152
  81. package/dist/types/tools.types.d.ts.map +1 -0
  82. package/package.json +18 -58
  83. package/dist/common/chrome/proxy.d.ts +0 -24
  84. package/dist/common/context-compressor.d.ts +0 -10
  85. package/dist/common/summarize-workflow.d.ts +0 -2
  86. package/dist/common/tools/cancel_workflow.d.ts +0 -9
  87. package/dist/common/tools/document_agent.d.ts +0 -8
  88. package/dist/common/tools/human.d.ts +0 -30
  89. package/dist/common/tools/index.d.ts +0 -4
  90. package/dist/common/tools/write_context.d.ts +0 -7
  91. package/dist/core/eko.d.ts +0 -30
  92. package/dist/core/tool-registry.d.ts +0 -13
  93. package/dist/extension/content/index.d.ts +0 -1
  94. package/dist/extension/core.d.ts +0 -11
  95. package/dist/extension/index.d.ts +0 -7
  96. package/dist/extension/script/bing.js +0 -25
  97. package/dist/extension/script/build_dom_tree.d.ts +0 -38
  98. package/dist/extension/script/build_dom_tree.js +0 -662
  99. package/dist/extension/script/common.js +0 -212
  100. package/dist/extension/script/duckduckgo.js +0 -25
  101. package/dist/extension/script/google.js +0 -26
  102. package/dist/extension/tools/browser.d.ts +0 -23
  103. package/dist/extension/tools/browser_action.d.ts +0 -20
  104. package/dist/extension/tools/export_file.d.ts +0 -18
  105. package/dist/extension/tools/extract_content.d.ts +0 -18
  106. package/dist/extension/tools/get_all_tabs.d.ts +0 -9
  107. package/dist/extension/tools/html_script.d.ts +0 -10
  108. package/dist/extension/tools/index.d.ts +0 -12
  109. package/dist/extension/tools/open_url.d.ts +0 -19
  110. package/dist/extension/tools/request_login.d.ts +0 -10
  111. package/dist/extension/tools/screenshot.d.ts +0 -18
  112. package/dist/extension/tools/switch_tab.d.ts +0 -8
  113. package/dist/extension/tools/tab_management.d.ts +0 -13
  114. package/dist/extension/tools/tool_returns_screenshot.d.ts +0 -8
  115. package/dist/extension/tools/web_search.d.ts +0 -18
  116. package/dist/extension/utils.d.ts +0 -31
  117. package/dist/extension.cjs.js +0 -2796
  118. package/dist/extension.esm.js +0 -2789
  119. package/dist/extension_content_script.js +0 -1078
  120. package/dist/fellou/computer.d.ts +0 -20
  121. package/dist/fellou/index.d.ts +0 -6
  122. package/dist/fellou/tools/computer_use.d.ts +0 -18
  123. package/dist/fellou.cjs.js +0 -238
  124. package/dist/fellou.esm.js +0 -235
  125. package/dist/models/action.d.ts +0 -33
  126. package/dist/models/workflow.d.ts +0 -25
  127. package/dist/nodejs/core.d.ts +0 -2
  128. package/dist/nodejs/index.d.ts +0 -3
  129. package/dist/nodejs/script/build_dom_tree.d.ts +0 -1
  130. package/dist/nodejs/tools/browser_use.d.ts +0 -28
  131. package/dist/nodejs/tools/command_execute.d.ts +0 -12
  132. package/dist/nodejs/tools/file_read.d.ts +0 -11
  133. package/dist/nodejs/tools/file_write.d.ts +0 -15
  134. package/dist/nodejs/tools/index.d.ts +0 -5
  135. package/dist/nodejs.cjs.js +0 -73507
  136. package/dist/nodejs.esm.js +0 -73504
  137. package/dist/schemas/workflow.schema.d.ts +0 -44
  138. package/dist/services/llm/claude-provider.d.ts +0 -12
  139. package/dist/services/llm/openai-provider.d.ts +0 -12
  140. package/dist/services/llm/provider-factory.d.ts +0 -4
  141. package/dist/services/parser/workflow-parser.d.ts +0 -23
  142. package/dist/services/workflow/generator.d.ts +0 -16
  143. package/dist/services/workflow/templates.d.ts +0 -8
  144. package/dist/types/action.types.d.ts +0 -53
  145. package/dist/types/eko.types.d.ts +0 -37
  146. package/dist/types/parser.types.d.ts +0 -9
  147. package/dist/types/workflow.types.d.ts +0 -57
  148. package/dist/utils/execution-logger.d.ts +0 -69
  149. package/dist/utils/sleep.d.ts +0 -1
  150. package/dist/web/core.d.ts +0 -2
  151. package/dist/web/index.d.ts +0 -5
  152. package/dist/web/script/build_dom_tree.d.ts +0 -10
  153. package/dist/web/tools/browser.d.ts +0 -21
  154. package/dist/web/tools/browser_use.d.ts +0 -19
  155. package/dist/web/tools/export_file.d.ts +0 -18
  156. package/dist/web/tools/extract_content.d.ts +0 -17
  157. package/dist/web/tools/html_script.d.ts +0 -10
  158. package/dist/web/tools/index.d.ts +0 -6
  159. package/dist/web/tools/screenshot.d.ts +0 -18
  160. package/dist/web.cjs.js +0 -9952
  161. package/dist/web.esm.js +0 -9948
@@ -1,153 +1,57 @@
1
- export interface ComputerUseParam {
2
- action: string;
3
- coordinate?: [number, number];
4
- text?: string;
5
- }
6
- export interface ComputerUseResult {
7
- success: boolean;
8
- image?: ScreenshotImage;
9
- [key: string]: any;
10
- }
11
- export interface BrowserActionParam {
12
- action: string;
13
- index?: number;
14
- text?: string;
15
- }
16
- export interface BrowserActionResult {
17
- success: boolean;
18
- image?: ScreenshotImage;
19
- text?: string;
20
- [key: string]: any;
21
- }
22
- export interface ExportFileParam {
23
- content: string;
24
- fileType: 'txt' | 'csv' | 'md' | 'html' | 'js' | 'xml' | 'json' | 'yml' | 'sql';
25
- filename?: string;
26
- }
27
- export interface ExtractContentResult {
28
- tabId: number;
29
- result: {
30
- title?: string;
31
- url?: string;
32
- content: string;
1
+ import { JSONSchema7 } from "json-schema";
2
+ import { AgentContext } from "../core/context";
3
+ export type ToolSchema = {
4
+ name: string;
5
+ description?: string;
6
+ parameters: JSONSchema7;
7
+ } | {
8
+ name: string;
9
+ description?: string;
10
+ input_schema: JSONSchema7;
11
+ } | {
12
+ name: string;
13
+ description?: string;
14
+ inputSchema: JSONSchema7;
15
+ } | {
16
+ type: "function";
17
+ function: {
18
+ name: string;
19
+ description?: string;
20
+ parameters: JSONSchema7;
33
21
  };
34
- }
35
- export interface OpenUrlParam {
36
- url: string;
37
- newWindow?: boolean;
38
- }
39
- export interface OpenUrlResult {
40
- tabId: number;
41
- windowId: number;
42
- title?: string;
43
- }
44
- export interface BrowserTab {
45
- id: number;
46
- url?: string;
47
- title?: string;
48
- content: string;
49
- description: string;
50
- }
51
- export interface ScreenshotResult {
52
- image: ScreenshotImage;
53
- }
54
- export interface ScreenshotImage {
55
- type: 'base64';
56
- media_type: 'image/png' | 'image/jpeg';
57
- data: string;
58
- }
59
- export interface TabManagementParam {
60
- command: string;
61
- tabId: number;
62
- }
63
- export interface SwitchTabParam {
64
- tabId: number;
65
- }
66
- export type TabManagementResult = string;
67
- export interface TabInfo {
68
- tabId?: number;
69
- windowId?: number;
70
- title?: string;
71
- url?: string;
72
- active?: boolean;
73
- }
74
- export interface CloseTabInfo {
75
- closedTabId: number;
76
- newTabId?: number;
77
- newTabTitle?: string;
78
- }
79
- export interface WebSearchParam {
80
- url?: string;
81
- query: string;
82
- maxResults?: number;
83
- }
84
- export interface WebSearchResult {
85
- title: string;
86
- url: string;
87
- content: string;
88
- }
89
- export interface TaskPrompt {
90
- task_prompt: string;
91
- }
92
- export interface ElementRect {
93
- left: number;
94
- top: number;
95
- right?: number;
96
- bottom?: number;
97
- width?: number;
98
- height?: number;
99
- }
100
- export interface CancelWorkflowInput {
101
- reason: string;
102
- }
103
- export interface HumanInputTextInput {
104
- question: string;
105
- }
106
- export interface HumanInputTextResult {
107
- status: string;
108
- answer: string;
109
- }
110
- export interface HumanInputSingleChoiceInput {
111
- question: string;
112
- choices: {
113
- choice: string;
114
- }[];
115
- }
116
- export interface HumanInputSingleChoiceResult {
117
- status: string;
118
- answer: string;
119
- }
120
- export interface HumanInputMultipleChoiceInput {
121
- question: string;
122
- choices: {
123
- choice: string;
124
- }[];
125
- }
126
- export interface HumanInputMultipleChoiceResult {
127
- status: string;
128
- answer: string[];
129
- }
130
- export interface HumanOperateInput {
131
- reason: string;
132
- }
133
- export interface HumanOperateResult {
134
- status: string;
135
- userOperation: string;
136
- }
137
- export interface WorkflowSummary {
138
- isSuccessful: boolean;
139
- summary: string;
140
- payload: string | undefined;
141
- }
142
- export interface DocumentAgentToolInput {
143
- type: string;
144
- title: string;
145
- background: string;
146
- keypoints: string;
147
- style?: string;
148
- references?: any;
149
- }
150
- export interface DocumentAgentToolOutput {
151
- status: string;
152
- content: string;
153
- }
22
+ };
23
+ export type ToolResult = {
24
+ content: [
25
+ {
26
+ type: "text";
27
+ text: string;
28
+ }
29
+ ] | [
30
+ {
31
+ type: "image";
32
+ data: string;
33
+ mimeType?: string;
34
+ }
35
+ ] | [
36
+ {
37
+ type: "text";
38
+ text: string;
39
+ },
40
+ {
41
+ type: "image";
42
+ data: string;
43
+ mimeType?: string;
44
+ }
45
+ ];
46
+ isError?: boolean;
47
+ extInfo?: Record<string, unknown>;
48
+ };
49
+ export interface ToolExecuter {
50
+ execute: (args: Record<string, unknown>, agentContext: AgentContext) => Promise<ToolResult>;
51
+ }
52
+ export interface Tool extends ToolExecuter {
53
+ readonly name: string;
54
+ readonly description?: string;
55
+ readonly parameters: JSONSchema7;
56
+ }
57
+ //# sourceMappingURL=tools.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.types.d.ts","sourceRoot":"","sources":["../../src/types/tools.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,MAAM,UAAU,GAClB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,WAAW,CAAC;CACzB,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,WAAW,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,WAAW,CAAC;KACzB,CAAC;CACH,CAAC;AAEN,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EACH;QACE;YACE,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;SACd;KACF,GACD;QACE;YACE,IAAI,EAAE,OAAO,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB;KACF,GACD;QACE;YACE,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;SACd;QACD;YACE,IAAI,EAAE,OAAO,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB;KACF,CAAC;IACN,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,CACP,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,YAAY,KACvB,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,IAAK,SAAQ,YAAY;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;CAClC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eko-ai/eko",
3
- "version": "1.3.5",
3
+ "version": "2.0.1",
4
4
  "description": "Empowering language to transform human words into action.",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.esm.js",
@@ -19,37 +19,11 @@
19
19
  },
20
20
  "./types": {
21
21
  "types": "./dist/types/index.d.ts"
22
- },
23
- "./extension": {
24
- "require": "./dist/extension.cjs.js",
25
- "import": "./dist/extension.esm.js",
26
- "types": "./dist/extension/index.d.ts"
27
- },
28
- "./web": {
29
- "require": "./dist/web.cjs.js",
30
- "import": "./dist/web.esm.js",
31
- "types": "./dist/web/index.d.ts"
32
- },
33
- "./nodejs": {
34
- "require": "./dist/nodejs.cjs.js",
35
- "import": "./dist/nodejs.esm.js",
36
- "types": "./dist/nodejs/index.d.ts"
37
- },
38
- "./fellou": {
39
- "require": "./dist/fellou.cjs.js",
40
- "import": "./dist/fellou.esm.js",
41
- "types": "./dist/fellou/index.d.ts"
42
22
  }
43
23
  },
44
- "directories": {
45
- "test": "test",
46
- "doc": "docs"
47
- },
48
24
  "scripts": {
49
25
  "build": "rollup -c",
50
26
  "build:dev": "npm run build && npm link",
51
- "dev": "tsc --watch",
52
- "clean": "rimraf dist",
53
27
  "test": "jest",
54
28
  "docs": "typedoc"
55
29
  },
@@ -68,41 +42,27 @@
68
42
  "url": "git+https://github.com/FellouAI/eko.git"
69
43
  },
70
44
  "dependencies": {
71
- "@anthropic-ai/sdk": "^0.33.0",
72
- "@logtail/types": "^0.5.2",
73
- "chromium-bidi": "^0.12.0",
74
- "dotenv": "^16.0.0",
75
- "html2canvas": "^1.4.1",
76
- "openai": "^4.77.0",
77
- "playwright": "^1.49.1",
78
- "tslog": "^4.9.3",
79
- "zod": "^3.22.4"
45
+ "@ai-sdk/amazon-bedrock": "^2.2.8",
46
+ "@ai-sdk/anthropic": "^1.2.10",
47
+ "@ai-sdk/google": "^1.2.13",
48
+ "@ai-sdk/openai": "^1.3.18",
49
+ "secure-json-parse": "^4.0.0",
50
+ "xmldom": "^0.6.0",
51
+ "zod": "^3.21.4"
80
52
  },
81
53
  "devDependencies": {
82
- "@rollup/plugin-commonjs": "^28.0.2",
83
- "@rollup/plugin-json": "^6.1.0",
84
- "@rollup/plugin-node-resolve": "^16.0.0",
85
- "@rollup/plugin-replace": "^6.0.2",
54
+ "@rollup/plugin-commonjs": "^28.0.3",
55
+ "@rollup/plugin-node-resolve": "^16.0.1",
86
56
  "@rollup/plugin-typescript": "^12.1.2",
87
- "@types/chrome": "0.0.158",
88
- "@types/jest": "^29.5.12",
89
- "@types/node": "^20.11.24",
90
- "@types/uuid": "^10.0.0",
91
- "@typescript-eslint/eslint-plugin": "^7.1.0",
92
- "@typescript-eslint/parser": "^7.1.0",
93
- "eslint": "^8.57.0",
57
+ "@types/jest": "^29.5.14",
58
+ "@types/json-schema": "^7.0.15",
59
+ "@types/xmldom": "^0.1.34",
60
+ "dotenv": "^16.5.0",
94
61
  "jest": "^29.7.0",
95
- "prettier": "^3.2.5",
96
- "rimraf": "^5.0.5",
97
- "rollup": "^4.28.1",
98
- "rollup-plugin-copy": "^3.5.0",
99
- "ts-jest": "^29.1.2",
62
+ "rollup": "^4.40.0",
63
+ "ts-jest": "^29.3.2",
100
64
  "tslib": "^2.8.1",
101
65
  "typedoc": "^0.27.6",
102
- "typescript": "^5.3.3"
103
- },
104
- "engines": {
105
- "node": ">=18.0.0"
106
- },
107
- "packageManager": "pnpm@10.6.4+sha512.da3d715bfd22a9a105e6e8088cfc7826699332ded60c423b14ec613a185f1602206702ff0fe4c438cb15c979081ce4cb02568e364b15174503a63c7a8e2a5f6c"
66
+ "typescript": "^5.8.3"
67
+ }
108
68
  }
@@ -1,24 +0,0 @@
1
- /**
2
- * Get a proxy for the Chrome API by mockClass.
3
- * This function creates a proxy for the Chrome API, allowing for interception and modification of certain methods.
4
- * The main logic involves creating a proxy for the `chrome.tabs` and `chrome.windows` namespaces.
5
- * If a method exists in the mock implementation (e.g., `tabs_get`), it will be used; otherwise, the original Chrome API method will be called.
6
- * @param mockClass - A **class** that provides mock implementations of Chrome API methods.
7
- * @example
8
- * ```typescript
9
- * class MyMockClass {
10
- * public static tabs_get(tabId: number): Promise<chrome.tabs.Tab> {
11
- * console.log(tabId);
12
- * return chrome.tabs.get(tabId);
13
- * }
14
- * public static windows_create(createData: chrome.windows.CreateData): Promise<chrome.windows.Window> {
15
- * console.log(createData);
16
- * return chrome.windows.create(createData);
17
- * }
18
- * }
19
- * let p = createChromeApiProxy(MyMockClass);
20
- * p.windows.create(...);
21
- * ```
22
- * In this example, `tabs_get` is a mock implementation that logs the `tabId` before calling the original `chrome.tabs.get` method, and the same as `chrome.windows.create` method.
23
- */
24
- export declare function createChromeApiProxy(mockClass: any): any;
@@ -1,10 +0,0 @@
1
- import { Message } from "@/types";
2
- export declare abstract class ContextComporessor {
3
- abstract comporess(messages: Message[]): Message[];
4
- }
5
- export declare class NoComporess extends ContextComporessor {
6
- comporess(messages: Message[]): Message[];
7
- }
8
- export declare class SimpleQAComporess extends ContextComporessor {
9
- comporess(messages: Message[]): Message[];
10
- }
@@ -1,2 +0,0 @@
1
- import { LLMProvider, WorkflowSummary, Workflow, NodeOutput } from "@/types";
2
- export declare function summarizeWorkflow(llmProvider: LLMProvider, workflow: Workflow, contextVariables: Map<string, unknown>, nodeOutputs: NodeOutput[]): Promise<WorkflowSummary>;
@@ -1,9 +0,0 @@
1
- import { CancelWorkflowInput } from '../../types/tools.types';
2
- import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
3
- export declare class CancelWorkflow implements Tool<CancelWorkflowInput, void> {
4
- name: string;
5
- description: string;
6
- input_schema: InputSchema;
7
- constructor();
8
- execute(context: ExecutionContext, params: CancelWorkflowInput): Promise<void>;
9
- }
@@ -1,8 +0,0 @@
1
- import { Tool, InputSchema, ExecutionContext, DocumentAgentToolInput, DocumentAgentToolOutput } from '@/types';
2
- export declare class DocumentAgentTool implements Tool<DocumentAgentToolInput, DocumentAgentToolOutput> {
3
- name: string;
4
- description: string;
5
- input_schema: InputSchema;
6
- constructor();
7
- execute(context: ExecutionContext, params: DocumentAgentToolInput): Promise<DocumentAgentToolOutput>;
8
- }
@@ -1,30 +0,0 @@
1
- import { HumanInputTextInput, HumanInputTextResult, HumanInputSingleChoiceInput, HumanInputSingleChoiceResult, HumanInputMultipleChoiceInput, HumanInputMultipleChoiceResult, HumanOperateInput, HumanOperateResult } from '../../types/tools.types';
2
- import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
3
- export declare class HumanInputText implements Tool<HumanInputTextInput, HumanInputTextResult> {
4
- name: string;
5
- description: string;
6
- input_schema: InputSchema;
7
- constructor();
8
- execute(context: ExecutionContext, params: HumanInputTextInput): Promise<HumanInputTextResult>;
9
- }
10
- export declare class HumanInputSingleChoice implements Tool<HumanInputSingleChoiceInput, HumanInputSingleChoiceResult> {
11
- name: string;
12
- description: string;
13
- input_schema: InputSchema;
14
- constructor();
15
- execute(context: ExecutionContext, params: HumanInputSingleChoiceInput): Promise<HumanInputSingleChoiceResult>;
16
- }
17
- export declare class HumanInputMultipleChoice implements Tool<HumanInputMultipleChoiceInput, HumanInputMultipleChoiceResult> {
18
- name: string;
19
- description: string;
20
- input_schema: InputSchema;
21
- constructor();
22
- execute(context: ExecutionContext, params: HumanInputMultipleChoiceInput): Promise<HumanInputMultipleChoiceResult>;
23
- }
24
- export declare class HumanOperate implements Tool<HumanOperateInput, HumanOperateResult> {
25
- name: string;
26
- description: string;
27
- input_schema: InputSchema;
28
- constructor();
29
- execute(context: ExecutionContext, params: HumanOperateInput): Promise<HumanOperateResult>;
30
- }
@@ -1,4 +0,0 @@
1
- import { CancelWorkflow } from "./cancel_workflow";
2
- import { HumanInputText, HumanInputSingleChoice, HumanInputMultipleChoice, HumanOperate } from "./human";
3
- import { DocumentAgentTool } from "./document_agent";
4
- export { CancelWorkflow, HumanInputText, HumanInputSingleChoice, HumanInputMultipleChoice, HumanOperate, DocumentAgentTool, };
@@ -1,7 +0,0 @@
1
- import { Tool, InputSchema, ExecutionContext } from "@/types";
2
- export declare class WriteContextTool implements Tool<any, any> {
3
- name: string;
4
- description: string;
5
- input_schema: InputSchema;
6
- execute(context: ExecutionContext, params: unknown): Promise<unknown>;
7
- }
@@ -1,30 +0,0 @@
1
- import { LLMConfig, EkoConfig, EkoInvokeParam, Tool, Workflow, WorkflowCallback, WorkflowResult } from '../types';
2
- import { ILogObj, Logger } from 'tslog';
3
- /**
4
- * Eko core
5
- */
6
- export declare class Eko {
7
- static tools: Map<string, Tool<any, any>>;
8
- private llmProvider;
9
- private ekoConfig;
10
- private toolRegistry;
11
- private workflowGeneratorMap;
12
- prompt: string;
13
- tabs: chrome.tabs.Tab[];
14
- workflow?: Workflow;
15
- constructor(llmConfig: LLMConfig, ekoConfig?: EkoConfig);
16
- static getLogger(): Logger<ILogObj>;
17
- getLoggerInstaceUUID(): string;
18
- private buildEkoConfig;
19
- private registerTools;
20
- generate(prompt: string, tabs?: chrome.tabs.Tab[], param?: EkoInvokeParam): Promise<Workflow>;
21
- execute(workflow: Workflow): Promise<WorkflowResult>;
22
- cancel(): Promise<void>;
23
- modify(workflow: Workflow, prompt: string): Promise<Workflow>;
24
- private getTool;
25
- callTool(toolName: string, input: object, callback?: WorkflowCallback): Promise<any>;
26
- callTool(tool: Tool<any, any>, input: object, callback?: WorkflowCallback): Promise<any>;
27
- registerTool(tool: Tool<any, any>): void;
28
- unregisterTool(toolName: string): void;
29
- }
30
- export default Eko;
@@ -1,13 +0,0 @@
1
- import { Tool } from '../types/action.types';
2
- import { ToolDefinition } from '../types/llm.types';
3
- export declare class ToolRegistry {
4
- private tools;
5
- registerTool(tool: Tool<any, any>): void;
6
- unregisterTool(toolName: string): boolean;
7
- getTool(toolName: string): Tool<any, any>;
8
- hasTools(toolNames: string[]): boolean;
9
- getAllTools(): Tool<any, any>[];
10
- getToolDefinitions(): ToolDefinition[];
11
- getToolEnum(): string[];
12
- getWorkflowSchema(): object;
13
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,11 +0,0 @@
1
- import { Tool } from '../types';
2
- export declare function pub(chromeProxy: any, tabId: number, event: string, params: any): Promise<any>;
3
- export declare function getLLMConfig(chromeProxy: any, name?: string): Promise<{
4
- llm?: string;
5
- apiKey?: string;
6
- modelName?: string;
7
- options?: {
8
- [key: string]: any;
9
- };
10
- } | undefined>;
11
- export declare function loadTools(): Map<string, Tool<any, any>>;
@@ -1,7 +0,0 @@
1
- export * from './core';
2
- import * as utils from './utils';
3
- export { utils };
4
- import * as tools from './tools';
5
- export { tools };
6
- import * as browser from './tools/browser';
7
- export { browser };
@@ -1,25 +0,0 @@
1
-
2
- eko.getDetailLinks = async function (search) {
3
- await eko.waitForElementPresent(document.body, 'main h2 a', 5000)
4
- let search_list = document.querySelectorAll('main h2 a')
5
- if (search_list.length === 0) {
6
- search_list = document.querySelectorAll('h2 a')
7
- }
8
- let links = []
9
- for (let i = 0; i < search_list.length; i++) {
10
- let title = eko.cleanText(search_list[i])
11
- let url = search_list[i].getAttribute('href')
12
- links.push({ title, url })
13
- }
14
- return {
15
- links: links
16
- }
17
- }
18
-
19
- eko.getContent = async function (search) {
20
- await eko.waitLoaded()
21
- return {
22
- title: document.title,
23
- content: eko.extractHtmlContent()
24
- }
25
- }
@@ -1,38 +0,0 @@
1
- /**
2
- * Get clickable elements on the page
3
- *
4
- * @param {*} doHighlightElements Is highlighted
5
- * @param {*} includeAttributes [attr_names...]
6
- * @returns { element_str, selector_map }
7
- */
8
- declare function get_clickable_elements(doHighlightElements: any | undefined, includeAttributes: any): string;
9
- declare function get_highlight_element(highlightIndex: any): any;
10
- declare function remove_highlight(): void;
11
- declare function clickable_elements_to_string(element_tree: any, includeAttributes: any): string;
12
- declare function create_selector_map(element_tree: any, ignore_element_obj: any): {};
13
- declare function parse_node(node_data: any, parent: any): {
14
- tagName: any;
15
- xpath: any;
16
- highlightIndex: any;
17
- attributes: any;
18
- isVisible: any;
19
- isInteractive: any;
20
- isTopElement: any;
21
- shadowRoot: any;
22
- children: never[];
23
- parent: any;
24
- } | {
25
- text: any;
26
- isVisible: any;
27
- parent: any;
28
- } | undefined;
29
- declare function build_dom_tree(doHighlightElements: any): {
30
- tagName: any;
31
- attributes: {};
32
- xpath: string | null;
33
- children: never[];
34
- } | {
35
- type: string;
36
- text: any;
37
- isVisible: boolean;
38
- } | null;