overai 1.4.17 → 1.4.19

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 CHANGED
@@ -48,254 +48,7 @@ npm install overai
48
48
 
49
49
  ## ✨ Auto-Coder CLI (Magic Project Generator)
50
50
 
51
- Want to build a project instantly? OverAI includes a powerful CLI that can scaffold entire projects (React, Node, Python, etc.) from a single prompt.
51
+ ## 👤 Author
52
52
 
53
- **Usage:**
54
-
55
- ```bash
56
- # 1. Set your API Key (OpenAI, Gemini, or Anthropic)
57
- export OPENAI_API_KEY=sk-...
58
- # OR
59
- export GOOGLE_API_KEY=AIza...
60
-
61
- # 2. Run the magic command
62
- npx overai-create "A personal portfolio website with HTML/CSS"
63
- ```
64
-
65
- **Options:**
66
-
67
- * **Auto-Detection**: The CLI automatically picks the best model based on your environment variables.
68
- * **Force Model**: You can specify a model manually:
69
- ```bash
70
- npx overai-create "A snake game in Python" --model google/gemini-2.0-flash-exp
71
- ```
72
-
73
- ---
74
-
75
- ## ⚡ Quick Start: Gemini Example
76
-
77
- 1. **Create `tsconfig.json`**:
78
- ```json
79
- {
80
- "compilerOptions": {
81
- "module": "ESNext",
82
- "moduleResolution": "node",
83
- "target": "ES2020",
84
- "esModuleInterop": true,
85
- "skipLibCheck": true,
86
- "strict": true,
87
- "resolveJsonModule": true,
88
- "allowSyntheticDefaultImports": true
89
- },
90
- "ts-node": {
91
- "esm": true,
92
- "experimentalSpecifierResolution": "node"
93
- }
94
- }
95
- ```
96
-
97
- 2. **Create `main.ts`**:
98
- ```typescript
99
- import { Agent, OverAI } from 'overai';
100
-
101
- async function main() {
102
- // 1. Créer un agent
103
- const agent = new Agent({
104
- name: "GeminiAgent",
105
- instructions: "Tu es Gemini, un modèle de Google. Réponds en français.",
106
- llm: "google/gemini-2.0-flash",
107
- verbose: true
108
- });
109
-
110
- // 2. Configurer OverAI avec l'agent et une tâche
111
- const overAI = new OverAI({
112
- agents: [agent],
113
- tasks: ["Explique-moi ce qu'est un Agent IA en une phrase simple."],
114
- verbose: true
115
- });
116
-
117
- // 3. Lancer l'exécution
118
- console.log("🚀 Démarrage de OverAI...");
119
- try {
120
- const result = await overAI.start();
121
- console.log("\n✅ Résultat :");
122
- console.log(result);
123
- } catch (error) {
124
- console.error("❌ Erreur :", error);
125
- }
126
- }
127
-
128
- main();
129
- ```
130
-
131
- 3. **Run the agent**:
132
- ```bash
133
- export GOOGLE_API_KEY="your-gemini-key"
134
- npx tsx main.ts
135
- ```
136
-
137
- ---
138
-
139
- ## 🤝 Multi-Agent Collaboration
140
-
141
- Create a team of agents that work together.
142
-
143
- ```typescript
144
- import { Agent, OverAI } from 'overai';
145
-
146
- async function main() {
147
- const researcher = new Agent({
148
- name: "Researcher",
149
- instructions: "Research the latest trends in AI.",
150
- });
151
-
152
- const writer = new Agent({
153
- name: "Writer",
154
- instructions: "Write a blog post based on the research provided.",
155
- });
156
-
157
- const overAI = new OverAI({
158
- agents: [researcher, writer],
159
- tasks: [
160
- "Research 3 top AI trends for 2025.",
161
- "Write a short blog post summarizing these trends."
162
- ],
163
- verbose: true
164
- });
165
-
166
- await overAI.start();
167
- }
168
- main();
169
- ```
170
-
171
- ---
172
-
173
- ## 💸 SaaS & Monetization Starter Kit
174
-
175
- OverAI comes with a **complete SaaS API Server example**. Use this to launch your own AI business.
176
-
177
- ### Features Included:
178
- - **Authentication**: Secure API Key middleware (`x-api-key`).
179
- - **Billing System**: Credit deduction per request (1 credit = 1 request).
180
- - **Payment Gateway**: Mock Stripe integration to simulate top-ups.
181
- - **Webhooks**: N8N compatible endpoints.
182
-
183
- ### How to Run Your SaaS Backend:
184
-
185
- 1. **Set your OpenAI Key**:
186
- ```bash
187
- export OPENAI_API_KEY="sk-..."
188
- ```
189
-
190
- 2. **Start the Server**:
191
- ```bash
192
- npx ts-node examples/saas-server.ts
193
- ```
194
- *Server starts at `http://localhost:3001`*
195
-
196
- 3. **Test Monetization**:
197
- * **Top-up Credits** (Simulate Stripe):
198
- ```bash
199
- curl -X POST http://localhost:3001/api/billing/topup \
200
- -H "Content-Type: application/json" \
201
- -H "x-api-key: sk_demo_12345" \
202
- -d '{"amount": 10.00}'
203
- ```
204
- * **Paid Chat Request**:
205
- ```bash
206
- curl -X POST http://localhost:3001/api/v1/agent/chat \
207
- -H "Content-Type: application/json" \
208
- -H "x-api-key: sk_demo_12345" \
209
- -d '{"message": "Hello, I paid for this!"}'
210
- ```
211
-
212
- ---
213
-
214
- ## 🔌 Integrations & Workflows
215
-
216
- ### N8N Integration
217
- OverAI agents can be triggered via webhooks, making them perfect for N8N workflows.
218
-
219
- ```typescript
220
- // Example N8N Webhook Endpoint (included in saas-server.ts)
221
- app.post('/api/webhook/n8n', async (req, res) => {
222
- const { workflow_data } = req.body;
223
- // Process N8N data with agents...
224
- res.json({ status: "success", result: agentResponse });
225
- });
226
- ```
227
-
228
- ### Model Context Protocol (MCP)
229
- Support for the MCP standard allows your agents to safely access local files, databases, and external tools without custom glue code.
230
-
231
- ---
232
-
233
- ## 🛠️ Development
234
-
235
- To contribute or modify the framework:
236
-
237
- 1. **Clone your fork**:
238
- ```bash
239
- git clone https://github.com/your-username/overai.git
240
- cd overai
241
- ```
242
-
243
- 2. **Install & Build**:
244
- ```bash
245
- npm install
246
- npm run build
247
- ```
248
-
249
- ## 💰 Business-in-a-Box (SaaS Starter Kit)
250
-
251
- Launch your own AI API business in minutes. We provide a complete **SaaS Server Example** including:
252
- * **Stripe Integration** (Mock): Simulate payments and top-ups.
253
- * **Credit System**: Deduct credits per request (1 credit = 1 request).
254
- * **API Authentication**: Secure endpoints with API Keys.
255
- * **Rate Limiting**: Prevent abuse from free users.
256
-
257
- **Run the SaaS Server:**
258
- ```bash
259
- # Install dependencies
260
- npm install express @types/express
261
-
262
- # Run the server
263
- npx ts-node examples/saas-server.ts
264
- ```
265
-
266
- **Test your API:**
267
- ```bash
268
- curl -X POST http://localhost:3001/api/v1/agent/chat \
269
- -H "Content-Type: application/json" \
270
- -H "x-api-key: sk_demo_12345" \
271
- -d '{"message": "Hello, explain how you work in 1 sentence."}'
272
- ```
273
-
274
- ## 🏢 Enterprise & Licensing (Open Core)
275
-
276
- OverAI follows an **Open Core** model. The core framework is MIT-licensed and free forever.
277
- For enterprises requiring advanced features, we provide a commercial license that unlocks:
278
-
279
- * **SSO & Identity**: Integrate with Okta, Active Directory, and Google Workspace.
280
- * **Audit Logs**: Comprehensive tracking of every agent action for compliance.
281
- * **Role-Based Access Control (RBAC)**: Fine-grained permissions for teams.
282
- * **Priority Support**: SLA-backed support with < 4h response time.
283
-
284
- To enable enterprise features:
285
-
286
- ```typescript
287
- import { license } from 'overai';
288
-
289
- // Verify your license key
290
- await license.setLicenseKey(process.env.OVERAI_LICENSE_KEY);
291
-
292
- if (license.hasFeature('audit_logs')) {
293
- console.log("✅ Enterprise Audit Logs Enabled");
294
- }
295
- ```
296
-
297
- Contact **sales@overai.com** for pricing and details.
298
-
299
- ## License
300
-
301
- MIT
53
+ **JMK**
54
+ * Email: anouslecode@gmail.com
@@ -9,6 +9,7 @@
9
9
  */
10
10
  export { Agent, OverAIAgents, OverAI, PraisonAIAgents, Agents } from './simple';
11
11
  export type { SimpleAgentConfig, OverAIAgentsConfig, PraisonAIAgentsConfig } from './simple';
12
+ export type { OverAIResult } from './types';
12
13
  export { Router, RouterAgent, createRouter, routeConditions } from './router';
13
14
  export type { RouterConfig, RouteConfig, RouteContext, SimpleRouterConfig, SimpleRouteConfig } from './router';
14
15
  export { Task } from './types';
@@ -1,5 +1,5 @@
1
1
  import { SimpleAgentConfig } from './simple';
2
- import { TaskAgentConfig } from './types';
2
+ import { TaskAgentConfig, OverAIResult } from './types';
3
3
  import { Task } from './types';
4
4
  export interface ProxyAgentConfig extends Partial<SimpleAgentConfig>, Partial<TaskAgentConfig> {
5
5
  task?: Task;
@@ -20,8 +20,8 @@ export declare class OverAIAgents {
20
20
  private simpleImpl;
21
21
  private taskImpl;
22
22
  constructor(config: any);
23
- start(): Promise<string[]>;
24
- chat(): Promise<string[]>;
23
+ start(): Promise<OverAIResult>;
24
+ chat(): Promise<OverAIResult>;
25
25
  }
26
26
  export declare const PraisonAIAgents: typeof OverAIAgents;
27
27
  export { Task } from './types';
@@ -1,5 +1,6 @@
1
1
  import type { DbAdapter } from '../db/types';
2
2
  import type { LLMProvider } from '../llm/providers/types';
3
+ import type { OverAIResult } from './types';
3
4
  /**
4
5
  * Agent Configuration
5
6
  *
@@ -267,8 +268,8 @@ export declare class OverAIAgents {
267
268
  constructor(configOrAgents: OverAIAgentsConfig | Agent[]);
268
269
  private generateTasks;
269
270
  private executeSequential;
270
- start(): Promise<string[]>;
271
- chat(): Promise<string[]>;
271
+ start(): Promise<OverAIResult>;
272
+ chat(): Promise<OverAIResult>;
272
273
  }
273
274
  /**
274
275
  * Agents - Alias for PraisonAIAgents
@@ -650,26 +650,39 @@ class OverAIAgents {
650
650
  await logger_1.Logger.debug('Starting OverAI Agents execution...');
651
651
  await logger_1.Logger.debug('Process mode:', this.process);
652
652
  await logger_1.Logger.debug('Tasks:', this.tasks);
653
- let results;
654
- if (this.process === 'parallel') {
655
- // Run all agents in parallel
656
- const promises = this.agents.map((agent, i) => {
657
- const task = this.tasks[i];
658
- return agent.start(task);
659
- });
660
- results = await Promise.all(promises);
661
- }
662
- else {
663
- // Run agents sequentially (default)
664
- results = await this.executeSequential();
665
- }
666
- if (this.verbose) {
667
- await logger_1.Logger.info('OverAI Agents execution completed.');
668
- for (let i = 0; i < results.length; i++) {
669
- await logger_1.Logger.section(`Result from Agent ${i + 1}`, results[i]);
653
+ let results = [];
654
+ try {
655
+ if (this.process === 'parallel') {
656
+ // Run all agents in parallel
657
+ const promises = this.agents.map((agent, i) => {
658
+ const task = this.tasks[i];
659
+ return agent.start(task);
660
+ });
661
+ results = await Promise.all(promises);
662
+ }
663
+ else {
664
+ // Run agents sequentially (default)
665
+ results = await this.executeSequential();
670
666
  }
667
+ if (this.verbose) {
668
+ await logger_1.Logger.info('OverAI Agents execution completed.');
669
+ for (let i = 0; i < results.length; i++) {
670
+ await logger_1.Logger.section(`Result from Agent ${i + 1}`, results[i]);
671
+ }
672
+ }
673
+ return {
674
+ success: true,
675
+ data: results
676
+ };
677
+ }
678
+ catch (error) {
679
+ await logger_1.Logger.error('Error in OverAI Agents execution', error);
680
+ return {
681
+ success: false,
682
+ data: results, // Return partial results if any
683
+ error: error.message || 'Unknown error occurred'
684
+ };
671
685
  }
672
- return results;
673
686
  }
674
687
  async chat() {
675
688
  return this.start();
@@ -43,6 +43,11 @@ export interface TaskOverAIAgentsConfig {
43
43
  manager_llm?: string;
44
44
  }
45
45
  export type TaskPraisonAIAgentsConfig = TaskOverAIAgentsConfig;
46
+ export interface OverAIResult {
47
+ success: boolean;
48
+ data: string[];
49
+ error?: string;
50
+ }
46
51
  export declare class OverAIAgents {
47
52
  private agents;
48
53
  private tasks;
@@ -50,7 +55,7 @@ export declare class OverAIAgents {
50
55
  private process;
51
56
  private manager_llm;
52
57
  constructor(config: TaskOverAIAgentsConfig);
53
- start(): Promise<any[]>;
58
+ start(): Promise<OverAIResult>;
54
59
  private executeSequential;
55
60
  private executeHierarchical;
56
61
  }
@@ -94,32 +94,47 @@ class OverAIAgents {
94
94
  logger_1.Logger.debug('Starting OverAI Agents execution...');
95
95
  logger_1.Logger.debug('Starting with process mode:', this.process);
96
96
  let results;
97
- switch (this.process) {
98
- case 'parallel':
99
- logger_1.Logger.debug('Executing tasks in parallel');
100
- results = await Promise.all(this.tasks.map(task => {
101
- if (!task.agent)
102
- throw new Error(`No agent assigned to task: ${task.name}`);
103
- return task.agent.execute(task);
104
- }));
105
- break;
106
- case 'hierarchical':
107
- logger_1.Logger.debug('Executing tasks hierarchically');
108
- results = await this.executeHierarchical();
109
- break;
110
- default:
111
- logger_1.Logger.debug('Executing tasks sequentially');
112
- results = await this.executeSequential();
97
+ try {
98
+ switch (this.process) {
99
+ case 'parallel':
100
+ logger_1.Logger.debug('Executing tasks in parallel');
101
+ results = await Promise.all(this.tasks.map(task => {
102
+ if (!task.agent)
103
+ throw new Error(`No agent assigned to task: ${task.name}`);
104
+ return task.agent.execute(task);
105
+ }));
106
+ break;
107
+ case 'hierarchical':
108
+ logger_1.Logger.debug('Executing tasks hierarchically');
109
+ results = await this.executeHierarchical();
110
+ break;
111
+ default:
112
+ logger_1.Logger.debug('Executing tasks sequentially');
113
+ results = await this.executeSequential();
114
+ }
115
+ if (this.verbose) {
116
+ logger_1.Logger.info('\nOverAI Agents execution completed.');
117
+ results.forEach((result, index) => {
118
+ logger_1.Logger.info(`\nFinal Result from Task ${index + 1}:`);
119
+ console.log(result);
120
+ });
121
+ }
122
+ logger_1.Logger.debug('Execution completed', { results });
123
+ // Ensure results are strings
124
+ const stringResults = results.map(r => typeof r === 'string' ? r : JSON.stringify(r));
125
+ return {
126
+ success: true,
127
+ data: stringResults
128
+ };
113
129
  }
114
- if (this.verbose) {
115
- logger_1.Logger.info('\nOverAI Agents execution completed.');
116
- results.forEach((result, index) => {
117
- logger_1.Logger.info(`\nFinal Result from Task ${index + 1}:`);
118
- console.log(result);
119
- });
130
+ catch (error) {
131
+ logger_1.Logger.error('Error in OverAI Agents execution', error);
132
+ return {
133
+ success: false,
134
+ data: [],
135
+ error: error.message || 'Unknown error occurred'
136
+ };
120
137
  }
121
- logger_1.Logger.debug('Execution completed', { results });
122
- return results;
123
138
  }
124
139
  async executeSequential() {
125
140
  logger_1.Logger.debug('Starting sequential execution');
@@ -101,8 +101,12 @@ async function executeRun(args, options) {
101
101
  process: options.process || 'sequential',
102
102
  verbose: config.verbose
103
103
  });
104
- const results = await agents.start();
104
+ const resultObj = await agents.start();
105
+ const results = resultObj.data;
105
106
  const duration = Date.now() - startTime;
107
+ if (!resultObj.success) {
108
+ throw new Error(resultObj.error || 'Unknown error in agent execution');
109
+ }
106
110
  if (outputFormat === 'json') {
107
111
  outputJson(formatSuccess({
108
112
  results,
package/dist/index.d.ts CHANGED
@@ -37,7 +37,7 @@
37
37
  * ```
38
38
  */
39
39
  export { Agent, Agents, PraisonAIAgents, Router, OverAI, OverAIAgents } from './agent';
40
- export type { SimpleAgentConfig, OverAIAgentsConfig, PraisonAIAgentsConfig, SimpleRouterConfig, SimpleRouteConfig } from './agent';
40
+ export type { SimpleAgentConfig, OverAIAgentsConfig, PraisonAIAgentsConfig, SimpleRouterConfig, SimpleRouteConfig, OverAIResult } from './agent';
41
41
  export { Workflow, parallel, route, loop, repeat } from './workflows';
42
42
  export type { WorkflowStep, WorkflowContext, StepResult } from './workflows';
43
43
  export { db, createDbAdapter, getDefaultDbAdapter, setDefaultDbAdapter } from './db';
@@ -224,8 +224,8 @@ async function createAISDKProvider(providerId, options) {
224
224
  // Check if it's a missing dependency error
225
225
  if (errorMessage.includes('Cannot find module') ||
226
226
  errorMessage.includes('MODULE_NOT_FOUND')) {
227
- throw new types_1.AISDKError(`AI SDK provider package '${providerInfo.package}' is not installed. ` +
228
- `Install it with: npm install ${providerInfo.package}`, 'MISSING_DEPENDENCY', false, error);
227
+ throw new types_1.AISDKError(`Provider '${providerId}' implementation not found. ` +
228
+ `Please install '${providerInfo.package}' to use this feature.`, 'MISSING_DEPENDENCY', false, error);
229
229
  }
230
230
  throw new types_1.AISDKError(`Failed to create AI SDK provider '${providerId}': ${errorMessage}`, 'PROVIDER_ERROR', false, error);
231
231
  }
@@ -68,7 +68,8 @@ async function loadAirweavePackage() {
68
68
  throw new types_1.MissingEnvVarError(exports.AIRWEAVE_METADATA.id, 'AIRWEAVE_API_KEY', exports.AIRWEAVE_METADATA.docsSlug);
69
69
  }
70
70
  try {
71
- return await Promise.resolve().then(() => __importStar(require('@airweave/sdk')));
71
+ const packageName = '@airweave/sdk';
72
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
72
73
  }
73
74
  catch {
74
75
  throw new types_1.MissingDependencyError(exports.AIRWEAVE_METADATA.id, exports.AIRWEAVE_METADATA.packageName, exports.AIRWEAVE_METADATA.install, exports.AIRWEAVE_METADATA.requiredEnv, exports.AIRWEAVE_METADATA.docsSlug);
@@ -73,7 +73,8 @@ exports.BEDROCK_AGENTCORE_METADATA = {
73
73
  async function loadBedrockPackage() {
74
74
  try {
75
75
  // @ts-ignore - Optional dependency
76
- return await Promise.resolve().then(() => __importStar(require('bedrock-agentcore')));
76
+ const packageName = 'bedrock-agentcore';
77
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
77
78
  }
78
79
  catch {
79
80
  throw new types_1.MissingDependencyError(exports.BEDROCK_AGENTCORE_METADATA.id, exports.BEDROCK_AGENTCORE_METADATA.packageName, exports.BEDROCK_AGENTCORE_METADATA.install, exports.BEDROCK_AGENTCORE_METADATA.requiredEnv, exports.BEDROCK_AGENTCORE_METADATA.docsSlug);
@@ -74,7 +74,8 @@ function codeExecution(config) {
74
74
  return executeCodeFn;
75
75
  try {
76
76
  // @ts-ignore - Optional dependency
77
- const pkg = await Promise.resolve().then(() => __importStar(require('ai-sdk-tool-code-execution')));
77
+ const packageName = 'ai-sdk-tool-code-execution';
78
+ const pkg = await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
78
79
  executeCodeFn = pkg.executeCode;
79
80
  return executeCodeFn;
80
81
  }
@@ -69,7 +69,8 @@ async function loadExaPackage() {
69
69
  }
70
70
  try {
71
71
  // @ts-ignore - optional dependency
72
- return await Promise.resolve().then(() => __importStar(require('@exalabs/ai-sdk')));
72
+ const packageName = '@exalabs/ai-sdk';
73
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
73
74
  }
74
75
  catch {
75
76
  throw new types_1.MissingDependencyError(exports.EXA_METADATA.id, exports.EXA_METADATA.packageName, exports.EXA_METADATA.install, exports.EXA_METADATA.requiredEnv, exports.EXA_METADATA.docsSlug);
@@ -70,7 +70,8 @@ async function loadFirecrawlPackage() {
70
70
  throw new types_1.MissingEnvVarError(exports.FIRECRAWL_METADATA.id, 'FIRECRAWL_API_KEY', exports.FIRECRAWL_METADATA.docsSlug);
71
71
  }
72
72
  try {
73
- return await Promise.resolve().then(() => __importStar(require('@mendable/firecrawl-js')));
73
+ const packageName = '@mendable/firecrawl-js';
74
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
74
75
  }
75
76
  catch {
76
77
  throw new types_1.MissingDependencyError(exports.FIRECRAWL_METADATA.id, exports.FIRECRAWL_METADATA.packageName, exports.FIRECRAWL_METADATA.install, exports.FIRECRAWL_METADATA.requiredEnv, exports.FIRECRAWL_METADATA.docsSlug);
@@ -69,7 +69,8 @@ async function loadParallelPackage() {
69
69
  }
70
70
  try {
71
71
  // @ts-ignore - optional dependency
72
- return await Promise.resolve().then(() => __importStar(require('@parallel-web/ai-sdk-tools')));
72
+ const packageName = '@parallel-web/ai-sdk-tools';
73
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
73
74
  }
74
75
  catch {
75
76
  throw new types_1.MissingDependencyError(exports.PARALLEL_METADATA.id, exports.PARALLEL_METADATA.packageName, exports.PARALLEL_METADATA.install, exports.PARALLEL_METADATA.requiredEnv, exports.PARALLEL_METADATA.docsSlug);
@@ -68,7 +68,8 @@ async function loadPerplexityPackage() {
68
68
  }
69
69
  try {
70
70
  // @ts-ignore - optional dependency
71
- return await Promise.resolve().then(() => __importStar(require('@perplexity-ai/ai-sdk')));
71
+ const packageName = '@perplexity-ai/ai-sdk';
72
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
72
73
  }
73
74
  catch {
74
75
  throw new types_1.MissingDependencyError(exports.PERPLEXITY_METADATA.id, exports.PERPLEXITY_METADATA.packageName, exports.PERPLEXITY_METADATA.install, exports.PERPLEXITY_METADATA.requiredEnv, exports.PERPLEXITY_METADATA.docsSlug);
@@ -72,7 +72,8 @@ async function loadSuperagentPackage() {
72
72
  }
73
73
  try {
74
74
  // @ts-ignore - Optional dependency
75
- return await Promise.resolve().then(() => __importStar(require('@superagent-ai/ai-sdk')));
75
+ const packageName = '@superagent-ai/ai-sdk';
76
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
76
77
  }
77
78
  catch {
78
79
  throw new types_1.MissingDependencyError(exports.SUPERAGENT_METADATA.id, exports.SUPERAGENT_METADATA.packageName, exports.SUPERAGENT_METADATA.install, exports.SUPERAGENT_METADATA.requiredEnv, exports.SUPERAGENT_METADATA.docsSlug);
@@ -76,7 +76,8 @@ async function loadTavilyPackage() {
76
76
  }
77
77
  try {
78
78
  // @ts-ignore - optional dependency
79
- return await Promise.resolve().then(() => __importStar(require('@tavily/ai-sdk')));
79
+ const packageName = '@tavily/ai-sdk';
80
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
80
81
  }
81
82
  catch {
82
83
  throw new types_1.MissingDependencyError(exports.TAVILY_METADATA.id, exports.TAVILY_METADATA.packageName, exports.TAVILY_METADATA.install, exports.TAVILY_METADATA.requiredEnv, exports.TAVILY_METADATA.docsSlug);
@@ -82,7 +82,8 @@ async function loadValyuPackage() {
82
82
  }
83
83
  try {
84
84
  // @ts-ignore - optional dependency
85
- return await Promise.resolve().then(() => __importStar(require('@valyu/ai-sdk')));
85
+ const packageName = '@valyu/ai-sdk';
86
+ return await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
86
87
  }
87
88
  catch {
88
89
  throw new types_1.MissingDependencyError(exports.VALYU_METADATA.id, exports.VALYU_METADATA.packageName, exports.VALYU_METADATA.install, exports.VALYU_METADATA.requiredEnv, exports.VALYU_METADATA.docsSlug);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "overai",
3
- "version": "1.4.17",
3
+ "version": "1.4.19",
4
4
  "description": "OverAI TypeScript AI Agents Framework - Build, Deploy, and Monetize AI Agents in Minutes",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -52,7 +52,7 @@
52
52
  "ai billing",
53
53
  "ai api server"
54
54
  ],
55
- "author": "OverAI",
55
+ "author": "JMK <anouslecode@gmail.com>",
56
56
  "license": "MIT",
57
57
  "devDependencies": {
58
58
  "@ai-sdk/anthropic": "^3.0.1",
@@ -81,9 +81,6 @@
81
81
  "openai": "^4.81.0"
82
82
  },
83
83
  "optionalDependencies": {
84
- "@airweave/sdk": ">=0.1.0",
85
- "@mendable/firecrawl-js": ">=1.0.0",
86
- "bedrock-agentcore": ">=0.1.0",
87
84
  "boxen": "^7.1.1",
88
85
  "chalk": "^4.1.2",
89
86
  "cli-table3": "^0.6.3",
@@ -92,9 +89,19 @@
92
89
  },
93
90
  "peerDependencies": {
94
91
  "@ai-sdk/anthropic": ">=1.0.0",
92
+ "@ai-sdk/devtools": ">=0.1.0",
95
93
  "@ai-sdk/google": ">=1.0.0",
96
94
  "@ai-sdk/openai": ">=1.0.0",
97
- "ai": ">=4.0.0"
95
+ "ai": ">=4.0.0",
96
+ "bedrock-agentcore": ">=0.1.0",
97
+ "@airweave/sdk": ">=0.1.0",
98
+ "@mendable/firecrawl-js": ">=1.0.0",
99
+ "@exalabs/ai-sdk": ">=0.0.1",
100
+ "@parallel-web/ai-sdk-tools": ">=0.0.1",
101
+ "@perplexity-ai/ai-sdk": ">=0.0.1",
102
+ "@superagent-ai/ai-sdk": ">=0.0.1",
103
+ "@tavily/ai-sdk": ">=0.0.1",
104
+ "@valyu/ai-sdk": ">=0.0.1"
98
105
  },
99
106
  "peerDependenciesMeta": {
100
107
  "ai": {
@@ -111,6 +118,33 @@
111
118
  },
112
119
  "@ai-sdk/google": {
113
120
  "optional": true
121
+ },
122
+ "bedrock-agentcore": {
123
+ "optional": true
124
+ },
125
+ "@airweave/sdk": {
126
+ "optional": true
127
+ },
128
+ "@mendable/firecrawl-js": {
129
+ "optional": true
130
+ },
131
+ "@exalabs/ai-sdk": {
132
+ "optional": true
133
+ },
134
+ "@parallel-web/ai-sdk-tools": {
135
+ "optional": true
136
+ },
137
+ "@perplexity-ai/ai-sdk": {
138
+ "optional": true
139
+ },
140
+ "@superagent-ai/ai-sdk": {
141
+ "optional": true
142
+ },
143
+ "@tavily/ai-sdk": {
144
+ "optional": true
145
+ },
146
+ "@valyu/ai-sdk": {
147
+ "optional": true
114
148
  }
115
149
  },
116
150
  "overrides": {