beddel 0.2.2 → 0.3.0
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/CHANGELOG.md +50 -0
- package/README.md +117 -14
- package/dist/agents/chat/chat.handler.d.ts +12 -0
- package/dist/agents/chat/chat.handler.d.ts.map +1 -0
- package/dist/agents/chat/chat.handler.js +145 -0
- package/dist/agents/chat/chat.handler.js.map +1 -0
- package/dist/agents/chat/chat.schema.d.ts +38 -0
- package/dist/agents/chat/chat.schema.d.ts.map +1 -0
- package/dist/agents/chat/chat.schema.js +31 -0
- package/dist/agents/chat/chat.schema.js.map +1 -0
- package/dist/agents/chat/chat.types.d.ts +42 -0
- package/dist/agents/chat/chat.types.d.ts.map +1 -0
- package/dist/agents/chat/chat.types.js +6 -0
- package/dist/agents/chat/chat.types.js.map +1 -0
- package/dist/agents/chat/chat.yaml +148 -0
- package/dist/agents/chat/index.d.ts +16 -0
- package/dist/agents/chat/index.d.ts.map +1 -0
- package/dist/agents/chat/index.js +21 -0
- package/dist/agents/chat/index.js.map +1 -0
- package/dist/agents/chromadb/chromadb.handler.d.ts +12 -0
- package/dist/agents/chromadb/chromadb.handler.d.ts.map +1 -0
- package/dist/agents/chromadb/chromadb.handler.js +139 -0
- package/dist/agents/chromadb/chromadb.handler.js.map +1 -0
- package/dist/agents/chromadb/chromadb.schema.d.ts +36 -0
- package/dist/agents/chromadb/chromadb.schema.d.ts.map +1 -0
- package/dist/agents/chromadb/chromadb.schema.js +33 -0
- package/dist/agents/chromadb/chromadb.schema.js.map +1 -0
- package/dist/agents/chromadb/chromadb.types.d.ts +49 -0
- package/dist/agents/chromadb/chromadb.types.d.ts.map +1 -0
- package/dist/agents/chromadb/chromadb.types.js +6 -0
- package/dist/agents/chromadb/chromadb.types.js.map +1 -0
- package/dist/agents/chromadb/chromadb.yaml +128 -0
- package/dist/agents/chromadb/index.d.ts +15 -0
- package/dist/agents/chromadb/index.d.ts.map +1 -0
- package/dist/agents/chromadb/index.js +20 -0
- package/dist/agents/chromadb/index.js.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.handler.d.ts +8 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.handler.d.ts.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.handler.js +61 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.handler.js.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.schema.d.ts +22 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.schema.d.ts.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.schema.js +20 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.schema.js.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.types.d.ts +32 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.types.d.ts.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.types.js +6 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.types.js.map +1 -0
- package/dist/agents/gemini-vectorize/gemini-vectorize.yaml +84 -0
- package/dist/agents/gemini-vectorize/index.d.ts +15 -0
- package/dist/agents/gemini-vectorize/index.d.ts.map +1 -0
- package/dist/agents/gemini-vectorize/index.js +20 -0
- package/dist/agents/gemini-vectorize/index.js.map +1 -0
- package/dist/agents/gitmcp/gitmcp.handler.d.ts +12 -0
- package/dist/agents/gitmcp/gitmcp.handler.d.ts.map +1 -0
- package/dist/agents/gitmcp/gitmcp.handler.js +95 -0
- package/dist/agents/gitmcp/gitmcp.handler.js.map +1 -0
- package/dist/agents/gitmcp/gitmcp.schema.d.ts +17 -0
- package/dist/agents/gitmcp/gitmcp.schema.d.ts.map +1 -0
- package/dist/agents/gitmcp/gitmcp.schema.js +18 -0
- package/dist/agents/gitmcp/gitmcp.schema.js.map +1 -0
- package/dist/agents/gitmcp/gitmcp.types.d.ts +31 -0
- package/dist/agents/gitmcp/gitmcp.types.d.ts.map +1 -0
- package/dist/agents/gitmcp/gitmcp.types.js +6 -0
- package/dist/agents/gitmcp/gitmcp.types.js.map +1 -0
- package/dist/agents/gitmcp/gitmcp.yaml +71 -0
- package/dist/agents/gitmcp/index.d.ts +16 -0
- package/dist/agents/gitmcp/index.d.ts.map +1 -0
- package/dist/agents/gitmcp/index.js +21 -0
- package/dist/agents/gitmcp/index.js.map +1 -0
- package/dist/agents/image/image.handler.d.ts +8 -0
- package/dist/agents/image/image.handler.d.ts.map +1 -0
- package/dist/agents/image/image.handler.js +69 -0
- package/dist/agents/image/image.handler.js.map +1 -0
- package/dist/agents/image/image.schema.d.ts +29 -0
- package/dist/agents/image/image.schema.d.ts.map +1 -0
- package/dist/agents/image/image.schema.js +26 -0
- package/dist/agents/image/image.schema.js.map +1 -0
- package/dist/agents/image/image.types.d.ts +43 -0
- package/dist/agents/image/image.types.d.ts.map +1 -0
- package/dist/agents/image/image.types.js +6 -0
- package/dist/agents/image/image.types.js.map +1 -0
- package/{src/agents/image-agent.yaml → dist/agents/image/image.yaml} +21 -21
- package/dist/agents/image/index.d.ts +14 -0
- package/dist/agents/image/index.d.ts.map +1 -0
- package/dist/agents/image/index.js +19 -0
- package/dist/agents/image/index.js.map +1 -0
- package/dist/agents/index.d.ts +104 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +82 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/joker/index.d.ts +14 -0
- package/dist/agents/joker/index.d.ts.map +1 -0
- package/dist/agents/joker/index.js +19 -0
- package/dist/agents/joker/index.js.map +1 -0
- package/dist/agents/joker/joker.handler.d.ts +8 -0
- package/dist/agents/joker/joker.handler.d.ts.map +1 -0
- package/dist/agents/joker/joker.handler.js +44 -0
- package/dist/agents/joker/joker.handler.js.map +1 -0
- package/dist/agents/joker/joker.schema.d.ts +12 -0
- package/dist/agents/joker/joker.schema.d.ts.map +1 -0
- package/dist/agents/joker/joker.schema.js +13 -0
- package/dist/agents/joker/joker.schema.js.map +1 -0
- package/dist/agents/joker/joker.types.d.ts +36 -0
- package/dist/agents/joker/joker.types.d.ts.map +1 -0
- package/dist/agents/joker/joker.types.js +6 -0
- package/dist/agents/joker/joker.types.js.map +1 -0
- package/{src/agents/joker-agent.yaml → dist/agents/joker/joker.yaml} +4 -4
- package/dist/agents/llm/index.d.ts +15 -0
- package/dist/agents/llm/index.d.ts.map +1 -0
- package/dist/agents/llm/index.js +20 -0
- package/dist/agents/llm/index.js.map +1 -0
- package/dist/agents/llm/llm.handler.d.ts +8 -0
- package/dist/agents/llm/llm.handler.d.ts.map +1 -0
- package/dist/agents/llm/llm.handler.js +64 -0
- package/dist/agents/llm/llm.handler.js.map +1 -0
- package/dist/agents/llm/llm.schema.d.ts +26 -0
- package/dist/agents/llm/llm.schema.d.ts.map +1 -0
- package/dist/agents/llm/llm.schema.js +23 -0
- package/dist/agents/llm/llm.schema.js.map +1 -0
- package/dist/agents/llm/llm.types.d.ts +34 -0
- package/dist/agents/llm/llm.types.d.ts.map +1 -0
- package/dist/agents/llm/llm.types.js +7 -0
- package/dist/agents/llm/llm.types.js.map +1 -0
- package/dist/agents/llm/llm.yaml +87 -0
- package/dist/agents/mcp-tool/index.d.ts +14 -0
- package/dist/agents/mcp-tool/index.d.ts.map +1 -0
- package/dist/agents/mcp-tool/index.js +19 -0
- package/dist/agents/mcp-tool/index.js.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.handler.d.ts +12 -0
- package/dist/agents/mcp-tool/mcp-tool.handler.d.ts.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.handler.js +116 -0
- package/dist/agents/mcp-tool/mcp-tool.handler.js.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.schema.d.ts +19 -0
- package/dist/agents/mcp-tool/mcp-tool.schema.d.ts.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.schema.js +20 -0
- package/dist/agents/mcp-tool/mcp-tool.schema.js.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.types.d.ts +31 -0
- package/dist/agents/mcp-tool/mcp-tool.types.d.ts.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.types.js +6 -0
- package/dist/agents/mcp-tool/mcp-tool.types.js.map +1 -0
- package/dist/agents/mcp-tool/mcp-tool.yaml +71 -0
- package/dist/agents/rag/index.d.ts +15 -0
- package/dist/agents/rag/index.d.ts.map +1 -0
- package/dist/agents/rag/index.js +20 -0
- package/dist/agents/rag/index.js.map +1 -0
- package/dist/agents/rag/rag.handler.d.ts +9 -0
- package/dist/agents/rag/rag.handler.d.ts.map +1 -0
- package/dist/agents/rag/rag.handler.js +78 -0
- package/dist/agents/rag/rag.handler.js.map +1 -0
- package/dist/agents/rag/rag.schema.d.ts +27 -0
- package/dist/agents/rag/rag.schema.d.ts.map +1 -0
- package/dist/agents/rag/rag.schema.js +24 -0
- package/dist/agents/rag/rag.schema.js.map +1 -0
- package/dist/agents/rag/rag.types.d.ts +42 -0
- package/dist/agents/rag/rag.types.d.ts.map +1 -0
- package/dist/agents/rag/rag.types.js +7 -0
- package/dist/agents/rag/rag.types.js.map +1 -0
- package/dist/agents/rag/rag.yaml +89 -0
- package/dist/agents/{agentRegistry.d.ts → registry/agentRegistry.d.ts} +30 -1
- package/dist/agents/registry/agentRegistry.d.ts.map +1 -0
- package/dist/agents/{agentRegistry.js → registry/agentRegistry.js} +187 -5
- package/dist/agents/registry/agentRegistry.js.map +1 -0
- package/dist/agents/registry/index.d.ts +6 -0
- package/dist/agents/registry/index.d.ts.map +1 -0
- package/dist/agents/registry/index.js +10 -0
- package/dist/agents/registry/index.js.map +1 -0
- package/dist/agents/translator/index.d.ts +14 -0
- package/dist/agents/translator/index.d.ts.map +1 -0
- package/dist/agents/translator/index.js +19 -0
- package/dist/agents/translator/index.js.map +1 -0
- package/dist/agents/translator/translator.handler.d.ts +8 -0
- package/dist/agents/translator/translator.handler.d.ts.map +1 -0
- package/dist/agents/translator/translator.handler.js +81 -0
- package/dist/agents/translator/translator.handler.js.map +1 -0
- package/dist/agents/translator/translator.schema.d.ts +27 -0
- package/dist/agents/translator/translator.schema.d.ts.map +1 -0
- package/dist/agents/translator/translator.schema.js +28 -0
- package/dist/agents/translator/translator.schema.js.map +1 -0
- package/dist/agents/translator/translator.types.d.ts +41 -0
- package/dist/agents/translator/translator.types.d.ts.map +1 -0
- package/dist/agents/translator/translator.types.js +6 -0
- package/dist/agents/translator/translator.types.js.map +1 -0
- package/{src/agents/translator-agent.yaml → dist/agents/translator/translator.yaml} +27 -27
- package/dist/client/index.d.ts +89 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +93 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/types.d.ts +17 -0
- package/dist/client/types.d.ts.map +1 -0
- package/dist/client/types.js +7 -0
- package/dist/client/types.js.map +1 -0
- package/dist/firebase/tenantManager.d.ts +34 -2
- package/dist/firebase/tenantManager.d.ts.map +1 -1
- package/dist/firebase/tenantManager.js +67 -1
- package/dist/firebase/tenantManager.js.map +1 -1
- package/dist/index.d.ts +10 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -7
- package/dist/index.js.map +1 -1
- package/dist/runtime/declarativeAgentRuntime.d.ts +17 -52
- package/dist/runtime/declarativeAgentRuntime.d.ts.map +1 -1
- package/dist/runtime/declarativeAgentRuntime.js +259 -361
- package/dist/runtime/declarativeAgentRuntime.js.map +1 -1
- package/dist/runtime/index.d.ts +14 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +38 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/llmProviderFactory.d.ts +47 -0
- package/dist/runtime/llmProviderFactory.d.ts.map +1 -0
- package/dist/runtime/llmProviderFactory.js +119 -0
- package/dist/runtime/llmProviderFactory.js.map +1 -0
- package/dist/runtime/workflowExecutor.d.ts +31 -0
- package/dist/runtime/workflowExecutor.d.ts.map +1 -0
- package/dist/runtime/workflowExecutor.js +80 -0
- package/dist/runtime/workflowExecutor.js.map +1 -0
- package/dist/server/api/graphql.js +3 -3
- package/dist/server/api/graphql.js.map +1 -1
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +1 -1
- package/dist/shared/index.d.ts +7 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +23 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/types/agent.types.d.ts +63 -0
- package/dist/shared/types/agent.types.d.ts.map +1 -0
- package/dist/shared/types/agent.types.js +18 -0
- package/dist/shared/types/agent.types.js.map +1 -0
- package/dist/shared/types/execution.types.d.ts +42 -0
- package/dist/shared/types/execution.types.d.ts.map +1 -0
- package/dist/shared/types/execution.types.js +7 -0
- package/dist/shared/types/execution.types.js.map +1 -0
- package/dist/shared/types/index.d.ts +7 -0
- package/dist/shared/types/index.d.ts.map +1 -0
- package/dist/shared/types/index.js +23 -0
- package/dist/shared/types/index.js.map +1 -0
- package/dist/shared/types/schema.types.d.ts +52 -0
- package/dist/shared/types/schema.types.d.ts.map +1 -0
- package/dist/shared/types/schema.types.js +7 -0
- package/dist/shared/types/schema.types.js.map +1 -0
- package/dist/shared/utils/index.d.ts +5 -0
- package/dist/shared/utils/index.d.ts.map +1 -0
- package/dist/shared/utils/index.js +21 -0
- package/dist/shared/utils/index.js.map +1 -0
- package/dist/shared/utils/validation.d.ts +42 -0
- package/dist/shared/utils/validation.d.ts.map +1 -0
- package/dist/shared/utils/validation.js +93 -0
- package/dist/shared/utils/validation.js.map +1 -0
- package/dist/tenant/TenantManager.d.ts +152 -0
- package/dist/tenant/TenantManager.d.ts.map +1 -0
- package/dist/tenant/TenantManager.js +392 -0
- package/dist/tenant/TenantManager.js.map +1 -0
- package/dist/tenant/index.d.ts +47 -0
- package/dist/tenant/index.d.ts.map +1 -0
- package/dist/tenant/index.js +74 -0
- package/dist/tenant/index.js.map +1 -0
- package/dist/tenant/interfaces.d.ts +170 -0
- package/dist/tenant/interfaces.d.ts.map +1 -0
- package/dist/tenant/interfaces.js +67 -0
- package/dist/tenant/interfaces.js.map +1 -0
- package/dist/tenant/providerFactory.d.ts +43 -0
- package/dist/tenant/providerFactory.d.ts.map +1 -0
- package/dist/tenant/providerFactory.js +70 -0
- package/dist/tenant/providerFactory.js.map +1 -0
- package/dist/tenant/providerRegistry.d.ts +47 -0
- package/dist/tenant/providerRegistry.d.ts.map +1 -0
- package/dist/tenant/providerRegistry.js +79 -0
- package/dist/tenant/providerRegistry.js.map +1 -0
- package/dist/tenant/providers/FirebaseTenantProvider.d.ts +41 -0
- package/dist/tenant/providers/FirebaseTenantProvider.d.ts.map +1 -0
- package/dist/tenant/providers/FirebaseTenantProvider.js +290 -0
- package/dist/tenant/providers/FirebaseTenantProvider.js.map +1 -0
- package/dist/tenant/providers/InMemoryTenantProvider.d.ts +18 -0
- package/dist/tenant/providers/InMemoryTenantProvider.d.ts.map +1 -0
- package/dist/tenant/providers/InMemoryTenantProvider.js +137 -0
- package/dist/tenant/providers/InMemoryTenantProvider.js.map +1 -0
- package/package.json +46 -10
- package/src/agents/chat/chat.handler.ts +211 -0
- package/src/agents/chat/chat.schema.ts +33 -0
- package/src/agents/chat/chat.types.ts +46 -0
- package/src/agents/chat/chat.yaml +148 -0
- package/src/agents/chat/index.ts +21 -0
- package/src/agents/chromadb/chromadb.handler.ts +130 -0
- package/src/agents/chromadb/chromadb.schema.ts +35 -0
- package/src/agents/chromadb/chromadb.types.ts +52 -0
- package/src/agents/chromadb/chromadb.yaml +128 -0
- package/src/agents/chromadb/index.ts +20 -0
- package/src/agents/gemini-vectorize/gemini-vectorize.handler.ts +75 -0
- package/src/agents/gemini-vectorize/gemini-vectorize.schema.ts +22 -0
- package/src/agents/gemini-vectorize/gemini-vectorize.types.ts +34 -0
- package/src/agents/gemini-vectorize/gemini-vectorize.yaml +84 -0
- package/src/agents/gemini-vectorize/index.ts +20 -0
- package/src/agents/gitmcp/gitmcp.handler.ts +122 -0
- package/src/agents/gitmcp/gitmcp.schema.ts +20 -0
- package/src/agents/gitmcp/gitmcp.types.ts +33 -0
- package/src/agents/gitmcp/gitmcp.yaml +71 -0
- package/src/agents/gitmcp/index.ts +21 -0
- package/src/agents/image/image.handler.ts +86 -0
- package/src/agents/image/image.schema.ts +28 -0
- package/src/agents/image/image.types.ts +46 -0
- package/src/agents/image/image.yaml +86 -0
- package/src/agents/image/index.ts +19 -0
- package/src/agents/index.ts +63 -0
- package/src/agents/joker/index.ts +19 -0
- package/src/agents/joker/joker.handler.ts +55 -0
- package/src/agents/joker/joker.schema.ts +15 -0
- package/src/agents/joker/joker.types.ts +38 -0
- package/src/agents/joker/joker.yaml +47 -0
- package/src/agents/llm/index.ts +20 -0
- package/src/agents/llm/llm.handler.ts +82 -0
- package/src/agents/llm/llm.schema.ts +25 -0
- package/src/agents/llm/llm.types.ts +37 -0
- package/src/agents/llm/llm.yaml +87 -0
- package/src/agents/mcp-tool/index.ts +19 -0
- package/src/agents/mcp-tool/mcp-tool.handler.ts +112 -0
- package/src/agents/mcp-tool/mcp-tool.schema.ts +22 -0
- package/src/agents/mcp-tool/mcp-tool.types.ts +33 -0
- package/src/agents/mcp-tool/mcp-tool.yaml +71 -0
- package/src/agents/rag/index.ts +20 -0
- package/src/agents/rag/rag.handler.ts +95 -0
- package/src/agents/rag/rag.schema.ts +26 -0
- package/src/agents/rag/rag.types.ts +45 -0
- package/src/agents/rag/rag.yaml +89 -0
- package/src/agents/{agentRegistry.ts → registry/agentRegistry.ts} +195 -6
- package/src/agents/registry/index.ts +6 -0
- package/src/agents/translator/index.ts +19 -0
- package/src/agents/translator/translator.handler.ts +97 -0
- package/src/agents/translator/translator.schema.ts +30 -0
- package/src/agents/translator/translator.types.ts +43 -0
- package/src/agents/translator/translator.yaml +80 -0
- package/src/client/index.ts +53 -0
- package/src/client/types.ts +38 -0
- package/src/index.ts +56 -5
- package/src/runtime/declarativeAgentRuntime.ts +378 -495
- package/src/runtime/index.ts +36 -0
- package/src/runtime/llmProviderFactory.ts +145 -0
- package/src/runtime/workflowExecutor.ts +107 -0
- package/src/server/api/graphql.ts +1 -1
- package/src/server/index.ts +2 -2
- package/src/shared/index.ts +7 -0
- package/src/shared/types/agent.types.ts +100 -0
- package/src/shared/types/execution.types.ts +45 -0
- package/src/shared/types/index.ts +7 -0
- package/src/shared/types/schema.types.ts +55 -0
- package/src/shared/utils/index.ts +5 -0
- package/src/shared/utils/validation.ts +100 -0
- package/src/tenant/TenantManager.ts +488 -0
- package/src/tenant/index.ts +101 -0
- package/src/tenant/interfaces.ts +231 -0
- package/src/tenant/providerFactory.ts +75 -0
- package/src/tenant/providerRegistry.ts +86 -0
- package/src/tenant/providers/InMemoryTenantProvider.ts +168 -0
- package/dist/agents/agentRegistry.d.ts.map +0 -1
- package/dist/agents/agentRegistry.js.map +0 -1
- package/src/firebase/tenantManager.ts +0 -443
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
import { existsSync, readFileSync, readdirSync, statSync } from "fs";
|
|
7
7
|
import { join } from "path";
|
|
8
|
-
import { declarativeInterpreter } from "
|
|
9
|
-
import { ExecutionContext } from "
|
|
8
|
+
import { declarativeInterpreter } from "../../runtime/declarativeAgentRuntime";
|
|
9
|
+
import { ExecutionContext } from "../../types/executionContext";
|
|
10
10
|
|
|
11
11
|
export interface AgentRegistration {
|
|
12
12
|
id: string;
|
|
@@ -210,6 +210,20 @@ export class AgentRegistry {
|
|
|
210
210
|
this.registerTranslatorAgent();
|
|
211
211
|
// Register Image Generator Agent
|
|
212
212
|
this.registerImageAgent();
|
|
213
|
+
// Register MCP Tool Agent
|
|
214
|
+
this.registerMcpToolAgent();
|
|
215
|
+
// Register Gemini Vectorize Agent
|
|
216
|
+
this.registerGeminiVectorizeAgent();
|
|
217
|
+
// Register ChromaDB Agent
|
|
218
|
+
this.registerChromaDBAgent();
|
|
219
|
+
// Register GitMCP Agent
|
|
220
|
+
this.registerGitMcpAgent();
|
|
221
|
+
// Register RAG Agent
|
|
222
|
+
this.registerRagAgent();
|
|
223
|
+
// Register LLM Agent
|
|
224
|
+
this.registerLlmAgent();
|
|
225
|
+
// Register Chat Agent (Orchestrator)
|
|
226
|
+
this.registerChatAgent();
|
|
213
227
|
} catch (error) {
|
|
214
228
|
console.error("Failed to register built-in agents:", error);
|
|
215
229
|
}
|
|
@@ -221,7 +235,7 @@ export class AgentRegistry {
|
|
|
221
235
|
private registerJokerAgent(): void {
|
|
222
236
|
try {
|
|
223
237
|
// Get the Joker Agent YAML content
|
|
224
|
-
const jokerYamlPath = this.resolveAgentPath("joker
|
|
238
|
+
const jokerYamlPath = this.resolveAgentPath("joker/joker.yaml");
|
|
225
239
|
const yamlContent = readFileSync(jokerYamlPath, "utf-8");
|
|
226
240
|
|
|
227
241
|
// Parse YAML to extract metadata
|
|
@@ -247,7 +261,7 @@ export class AgentRegistry {
|
|
|
247
261
|
*/
|
|
248
262
|
private registerTranslatorAgent(): void {
|
|
249
263
|
try {
|
|
250
|
-
const translatorYamlPath = this.resolveAgentPath("translator
|
|
264
|
+
const translatorYamlPath = this.resolveAgentPath("translator/translator.yaml");
|
|
251
265
|
const yamlContent = readFileSync(translatorYamlPath, "utf-8");
|
|
252
266
|
const agent = this.parseAgentYaml(yamlContent);
|
|
253
267
|
|
|
@@ -271,7 +285,7 @@ export class AgentRegistry {
|
|
|
271
285
|
*/
|
|
272
286
|
private registerImageAgent(): void {
|
|
273
287
|
try {
|
|
274
|
-
const imageYamlPath = this.resolveAgentPath("image
|
|
288
|
+
const imageYamlPath = this.resolveAgentPath("image/image.yaml");
|
|
275
289
|
const yamlContent = readFileSync(imageYamlPath, "utf-8");
|
|
276
290
|
const agent = this.parseAgentYaml(yamlContent);
|
|
277
291
|
|
|
@@ -290,6 +304,174 @@ export class AgentRegistry {
|
|
|
290
304
|
}
|
|
291
305
|
}
|
|
292
306
|
|
|
307
|
+
/**
|
|
308
|
+
* Register MCP Tool Agent
|
|
309
|
+
*/
|
|
310
|
+
private registerMcpToolAgent(): void {
|
|
311
|
+
try {
|
|
312
|
+
const yamlPath = this.resolveAgentPath("mcp-tool/mcp-tool.yaml");
|
|
313
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
314
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
315
|
+
|
|
316
|
+
this.registerAgent({
|
|
317
|
+
id: agent.agent.id,
|
|
318
|
+
name: "mcp-tool.execute",
|
|
319
|
+
description: agent.metadata.description,
|
|
320
|
+
protocol: agent.agent.protocol,
|
|
321
|
+
route: agent.metadata.route || "/agents/mcp-tool",
|
|
322
|
+
requiredProps: [],
|
|
323
|
+
yamlContent,
|
|
324
|
+
});
|
|
325
|
+
} catch (error) {
|
|
326
|
+
console.error("Failed to register MCP Tool Agent:", error);
|
|
327
|
+
throw error;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* Register Gemini Vectorize Agent
|
|
333
|
+
*/
|
|
334
|
+
private registerGeminiVectorizeAgent(): void {
|
|
335
|
+
try {
|
|
336
|
+
const yamlPath = this.resolveAgentPath("gemini-vectorize/gemini-vectorize.yaml");
|
|
337
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
338
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
339
|
+
|
|
340
|
+
this.registerAgent({
|
|
341
|
+
id: agent.agent.id,
|
|
342
|
+
name: "gemini-vectorize.execute",
|
|
343
|
+
description: agent.metadata.description,
|
|
344
|
+
protocol: agent.agent.protocol,
|
|
345
|
+
route: agent.metadata.route || "/agents/gemini-vectorize",
|
|
346
|
+
requiredProps: ["gemini_api_key"],
|
|
347
|
+
yamlContent,
|
|
348
|
+
});
|
|
349
|
+
} catch (error) {
|
|
350
|
+
console.error("Failed to register Gemini Vectorize Agent:", error);
|
|
351
|
+
throw error;
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
/**
|
|
356
|
+
* Register ChromaDB Agent
|
|
357
|
+
*/
|
|
358
|
+
private registerChromaDBAgent(): void {
|
|
359
|
+
try {
|
|
360
|
+
const yamlPath = this.resolveAgentPath("chromadb/chromadb.yaml");
|
|
361
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
362
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
363
|
+
|
|
364
|
+
this.registerAgent({
|
|
365
|
+
id: agent.agent.id,
|
|
366
|
+
name: "chromadb.execute",
|
|
367
|
+
description: agent.metadata.description,
|
|
368
|
+
protocol: agent.agent.protocol,
|
|
369
|
+
route: agent.metadata.route || "/agents/chromadb",
|
|
370
|
+
requiredProps: [],
|
|
371
|
+
yamlContent,
|
|
372
|
+
});
|
|
373
|
+
} catch (error) {
|
|
374
|
+
console.error("Failed to register ChromaDB Agent:", error);
|
|
375
|
+
throw error;
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
/**
|
|
380
|
+
* Register GitMCP Agent
|
|
381
|
+
*/
|
|
382
|
+
private registerGitMcpAgent(): void {
|
|
383
|
+
try {
|
|
384
|
+
const yamlPath = this.resolveAgentPath("gitmcp/gitmcp.yaml");
|
|
385
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
386
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
387
|
+
|
|
388
|
+
this.registerAgent({
|
|
389
|
+
id: agent.agent.id,
|
|
390
|
+
name: "gitmcp.execute",
|
|
391
|
+
description: agent.metadata.description,
|
|
392
|
+
protocol: agent.agent.protocol,
|
|
393
|
+
route: agent.metadata.route || "/agents/gitmcp",
|
|
394
|
+
requiredProps: [],
|
|
395
|
+
yamlContent,
|
|
396
|
+
});
|
|
397
|
+
} catch (error) {
|
|
398
|
+
console.error("Failed to register GitMCP Agent:", error);
|
|
399
|
+
throw error;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
/**
|
|
404
|
+
* Register RAG Agent
|
|
405
|
+
*/
|
|
406
|
+
private registerRagAgent(): void {
|
|
407
|
+
try {
|
|
408
|
+
const yamlPath = this.resolveAgentPath("rag/rag.yaml");
|
|
409
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
410
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
411
|
+
|
|
412
|
+
this.registerAgent({
|
|
413
|
+
id: agent.agent.id,
|
|
414
|
+
name: "rag.execute",
|
|
415
|
+
description: agent.metadata.description,
|
|
416
|
+
protocol: agent.agent.protocol,
|
|
417
|
+
route: agent.metadata.route || "/agents/rag",
|
|
418
|
+
requiredProps: ["gemini_api_key"],
|
|
419
|
+
yamlContent,
|
|
420
|
+
});
|
|
421
|
+
} catch (error) {
|
|
422
|
+
console.error("Failed to register RAG Agent:", error);
|
|
423
|
+
throw error;
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
/**
|
|
428
|
+
* Register LLM Agent
|
|
429
|
+
*/
|
|
430
|
+
private registerLlmAgent(): void {
|
|
431
|
+
try {
|
|
432
|
+
const yamlPath = this.resolveAgentPath("llm/llm.yaml");
|
|
433
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
434
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
435
|
+
|
|
436
|
+
this.registerAgent({
|
|
437
|
+
id: agent.agent.id,
|
|
438
|
+
name: "llm.execute",
|
|
439
|
+
description: agent.metadata.description,
|
|
440
|
+
protocol: agent.agent.protocol,
|
|
441
|
+
route: agent.metadata.route || "/agents/llm",
|
|
442
|
+
requiredProps: ["gemini_api_key"],
|
|
443
|
+
yamlContent,
|
|
444
|
+
});
|
|
445
|
+
} catch (error) {
|
|
446
|
+
console.error("Failed to register LLM Agent:", error);
|
|
447
|
+
throw error;
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
/**
|
|
452
|
+
* Register Chat Agent (Orchestrator)
|
|
453
|
+
*/
|
|
454
|
+
private registerChatAgent(): void {
|
|
455
|
+
try {
|
|
456
|
+
const yamlPath = this.resolveAgentPath("chat/chat.yaml");
|
|
457
|
+
const yamlContent = readFileSync(yamlPath, "utf-8");
|
|
458
|
+
const agent = this.parseAgentYaml(yamlContent);
|
|
459
|
+
|
|
460
|
+
this.registerAgent({
|
|
461
|
+
id: agent.agent.id,
|
|
462
|
+
name: "chat.execute",
|
|
463
|
+
description: agent.metadata.description,
|
|
464
|
+
protocol: agent.agent.protocol,
|
|
465
|
+
route: agent.metadata.route || "/agents/chat",
|
|
466
|
+
requiredProps: ["gemini_api_key"],
|
|
467
|
+
yamlContent,
|
|
468
|
+
});
|
|
469
|
+
} catch (error) {
|
|
470
|
+
console.error("Failed to register Chat Agent:", error);
|
|
471
|
+
throw error;
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
|
|
293
475
|
/**
|
|
294
476
|
* Parse agent YAML content
|
|
295
477
|
*/
|
|
@@ -363,11 +545,18 @@ export class AgentRegistry {
|
|
|
363
545
|
|
|
364
546
|
/**
|
|
365
547
|
* Resolve agent asset path when running in bundled runtimes
|
|
548
|
+
* Handles both source (src/agents/) and dist (dist/agents/) paths
|
|
366
549
|
*/
|
|
367
550
|
private resolveAgentPath(filename: string): string {
|
|
368
551
|
const candidatePaths = [
|
|
369
|
-
|
|
552
|
+
// From registry folder, go up one level to agents folder
|
|
553
|
+
join(__dirname, "..", filename),
|
|
554
|
+
// Direct path from src/agents
|
|
370
555
|
join(process.cwd(), "packages", "beddel", "src", "agents", filename),
|
|
556
|
+
// Direct path from dist/agents (for built package)
|
|
557
|
+
join(process.cwd(), "packages", "beddel", "dist", "agents", filename),
|
|
558
|
+
// When running from node_modules
|
|
559
|
+
join(__dirname, "..", "..", "agents", filename),
|
|
371
560
|
];
|
|
372
561
|
|
|
373
562
|
for (const path of candidatePaths) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Translator Agent - Public exports (client-safe)
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
// Schema exports (client-safe)
|
|
6
|
+
export { TranslatorInputSchema, TranslatorOutputSchema } from './translator.schema';
|
|
7
|
+
export type { TranslatorInput, TranslatorOutput } from './translator.schema';
|
|
8
|
+
|
|
9
|
+
// Type exports (client-safe)
|
|
10
|
+
export type { TranslationHandlerParams, TranslationHandlerResult, TranslatorMetadata } from './translator.types';
|
|
11
|
+
|
|
12
|
+
// Metadata (client-safe)
|
|
13
|
+
export const translatorMetadata = {
|
|
14
|
+
id: 'translator',
|
|
15
|
+
name: 'Translator Agent',
|
|
16
|
+
description: 'Translates text between languages using Gemini Flash via Genkit',
|
|
17
|
+
category: 'translation',
|
|
18
|
+
route: '/agents/translator',
|
|
19
|
+
} as const;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import 'server-only';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Translator Agent Handler - Server-only execution logic
|
|
5
|
+
* Translates text between languages using LLM providers
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { generateText } from 'ai';
|
|
9
|
+
import { LLMProviderFactory, extractProviderConfig } from '../../runtime/llmProviderFactory';
|
|
10
|
+
import type { ExecutionContext } from '../../types/executionContext';
|
|
11
|
+
import type { TranslationHandlerParams, TranslationHandlerResult } from './translator.types';
|
|
12
|
+
|
|
13
|
+
const SUPPORTED_LANGUAGES = ['pt', 'en', 'es', 'fr'];
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Execute translation using configured LLM provider
|
|
17
|
+
*/
|
|
18
|
+
export async function executeTranslationHandler(
|
|
19
|
+
params: TranslationHandlerParams,
|
|
20
|
+
props: Record<string, string>,
|
|
21
|
+
context: ExecutionContext
|
|
22
|
+
): Promise<TranslationHandlerResult> {
|
|
23
|
+
const providerConfig = extractProviderConfig(props, 'google');
|
|
24
|
+
const model = LLMProviderFactory.createLanguageModel(providerConfig);
|
|
25
|
+
const modelName = providerConfig.model || LLMProviderFactory.getDefaultModel(providerConfig.provider);
|
|
26
|
+
|
|
27
|
+
const text = params.text?.trim();
|
|
28
|
+
const sourceLanguage = params.source_language?.trim().toLowerCase();
|
|
29
|
+
const targetLanguage = params.target_language?.trim().toLowerCase();
|
|
30
|
+
|
|
31
|
+
if (!text || !sourceLanguage || !targetLanguage) {
|
|
32
|
+
throw new Error('Missing required translation parameters: text, source_language, target_language');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Same language bypass
|
|
36
|
+
if (sourceLanguage === targetLanguage) {
|
|
37
|
+
return {
|
|
38
|
+
translated_text: text,
|
|
39
|
+
metadata: {
|
|
40
|
+
model_used: modelName,
|
|
41
|
+
provider: providerConfig.provider,
|
|
42
|
+
processing_time: 0,
|
|
43
|
+
confidence: 1,
|
|
44
|
+
supported_languages: SUPPORTED_LANGUAGES,
|
|
45
|
+
requested_languages: {
|
|
46
|
+
source: sourceLanguage,
|
|
47
|
+
target: targetLanguage,
|
|
48
|
+
},
|
|
49
|
+
prompt_used: 'Bypass: source and target languages are the same',
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const template = params.promptTemplate?.trim() ||
|
|
55
|
+
`Translate the text below from {{source_language}} to {{target_language}}.
|
|
56
|
+
Reply only with the translated text without additional comments.
|
|
57
|
+
|
|
58
|
+
Text:
|
|
59
|
+
{{text}}`;
|
|
60
|
+
|
|
61
|
+
const prompt = template
|
|
62
|
+
.replace(/{{text}}/g, text)
|
|
63
|
+
.replace(/{{source_language}}/g, sourceLanguage)
|
|
64
|
+
.replace(/{{target_language}}/g, targetLanguage)
|
|
65
|
+
.trim();
|
|
66
|
+
|
|
67
|
+
const startTime = Date.now();
|
|
68
|
+
|
|
69
|
+
context.log(`[Translator] Translating from ${sourceLanguage} to ${targetLanguage}`);
|
|
70
|
+
|
|
71
|
+
const { text: translatedText } = await generateText({
|
|
72
|
+
model,
|
|
73
|
+
prompt,
|
|
74
|
+
temperature: 0.2,
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
const finalText = translatedText?.trim() || '';
|
|
78
|
+
if (!finalText) {
|
|
79
|
+
throw new Error('LLM translation returned empty response');
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return {
|
|
83
|
+
translated_text: finalText,
|
|
84
|
+
metadata: {
|
|
85
|
+
model_used: modelName,
|
|
86
|
+
provider: providerConfig.provider,
|
|
87
|
+
processing_time: Date.now() - startTime,
|
|
88
|
+
confidence: 0.85,
|
|
89
|
+
supported_languages: SUPPORTED_LANGUAGES,
|
|
90
|
+
requested_languages: {
|
|
91
|
+
source: sourceLanguage,
|
|
92
|
+
target: targetLanguage,
|
|
93
|
+
},
|
|
94
|
+
prompt_used: prompt,
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Translator Agent Schema - Zod validation schemas
|
|
3
|
+
* Safe for both client and server
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
|
|
8
|
+
export const TranslatorInputSchema = z.object({
|
|
9
|
+
text: z.string().min(1).max(10000),
|
|
10
|
+
source_language: z.string().regex(/^[a-z]{2}$/),
|
|
11
|
+
target_language: z.string().regex(/^[a-z]{2}$/),
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export const TranslatorOutputSchema = z.object({
|
|
15
|
+
translated_text: z.string(),
|
|
16
|
+
metadata: z.object({
|
|
17
|
+
model_used: z.string(),
|
|
18
|
+
processing_time: z.number(),
|
|
19
|
+
confidence: z.number(),
|
|
20
|
+
supported_languages: z.array(z.string()),
|
|
21
|
+
requested_languages: z.object({
|
|
22
|
+
source: z.string(),
|
|
23
|
+
target: z.string(),
|
|
24
|
+
}),
|
|
25
|
+
prompt_used: z.string(),
|
|
26
|
+
}),
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
export type TranslatorInput = z.infer<typeof TranslatorInputSchema>;
|
|
30
|
+
export type TranslatorOutput = z.infer<typeof TranslatorOutputSchema>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Translator Agent Types - Shared between client and server
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Parameters for translation
|
|
7
|
+
*/
|
|
8
|
+
export interface TranslationHandlerParams {
|
|
9
|
+
text: string;
|
|
10
|
+
source_language: string;
|
|
11
|
+
target_language: string;
|
|
12
|
+
promptTemplate?: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Result from translation
|
|
17
|
+
*/
|
|
18
|
+
export interface TranslationHandlerResult {
|
|
19
|
+
translated_text: string;
|
|
20
|
+
metadata: {
|
|
21
|
+
model_used: string;
|
|
22
|
+
provider: string;
|
|
23
|
+
processing_time: number;
|
|
24
|
+
confidence: number;
|
|
25
|
+
supported_languages: string[];
|
|
26
|
+
requested_languages: {
|
|
27
|
+
source: string;
|
|
28
|
+
target: string;
|
|
29
|
+
};
|
|
30
|
+
prompt_used: string;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Translator agent metadata
|
|
36
|
+
*/
|
|
37
|
+
export interface TranslatorMetadata {
|
|
38
|
+
id: 'translator';
|
|
39
|
+
name: string;
|
|
40
|
+
description: string;
|
|
41
|
+
category: 'translation';
|
|
42
|
+
route: '/agents/translator';
|
|
43
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Translator Agent - Declarative Genkit-powered translation workflow
|
|
2
|
+
# Route: /agents/translator
|
|
3
|
+
# Method: translator.execute
|
|
4
|
+
|
|
5
|
+
agent:
|
|
6
|
+
id: translator
|
|
7
|
+
version: 1.0.0
|
|
8
|
+
protocol: beddel-declarative-protocol/v2.0
|
|
9
|
+
|
|
10
|
+
metadata:
|
|
11
|
+
name: "Translator Agent"
|
|
12
|
+
description: "Translates text between languages using Gemini Flash via Genkit"
|
|
13
|
+
category: "translation"
|
|
14
|
+
route: "/agents/translator"
|
|
15
|
+
|
|
16
|
+
schema:
|
|
17
|
+
input:
|
|
18
|
+
type: "object"
|
|
19
|
+
properties:
|
|
20
|
+
text:
|
|
21
|
+
type: "string"
|
|
22
|
+
minLength: 1
|
|
23
|
+
maxLength: 10000
|
|
24
|
+
description: "Original text to be translated"
|
|
25
|
+
source_language:
|
|
26
|
+
type: "string"
|
|
27
|
+
pattern: "^[a-z]{2}$"
|
|
28
|
+
description: "Source language (ISO-639-1, e.g., pt, en)"
|
|
29
|
+
target_language:
|
|
30
|
+
type: "string"
|
|
31
|
+
pattern: "^[a-z]{2}$"
|
|
32
|
+
description: "Target language (ISO-639-1, e.g., en, es)"
|
|
33
|
+
required: ["text", "source_language", "target_language"]
|
|
34
|
+
|
|
35
|
+
output:
|
|
36
|
+
type: "object"
|
|
37
|
+
properties:
|
|
38
|
+
translated_text:
|
|
39
|
+
type: "string"
|
|
40
|
+
metadata:
|
|
41
|
+
type: "object"
|
|
42
|
+
properties:
|
|
43
|
+
model_used:
|
|
44
|
+
type: "string"
|
|
45
|
+
processing_time:
|
|
46
|
+
type: "number"
|
|
47
|
+
confidence:
|
|
48
|
+
type: "number"
|
|
49
|
+
supported_languages:
|
|
50
|
+
type: "array"
|
|
51
|
+
items:
|
|
52
|
+
type: "string"
|
|
53
|
+
requested_languages:
|
|
54
|
+
type: "object"
|
|
55
|
+
properties:
|
|
56
|
+
source:
|
|
57
|
+
type: "string"
|
|
58
|
+
target:
|
|
59
|
+
type: "string"
|
|
60
|
+
required: ["source", "target"]
|
|
61
|
+
prompt_used:
|
|
62
|
+
type: "string"
|
|
63
|
+
required:
|
|
64
|
+
[
|
|
65
|
+
"model_used",
|
|
66
|
+
"processing_time",
|
|
67
|
+
"confidence",
|
|
68
|
+
"supported_languages",
|
|
69
|
+
"requested_languages",
|
|
70
|
+
"prompt_used",
|
|
71
|
+
]
|
|
72
|
+
required: ["translated_text", "metadata"]
|
|
73
|
+
|
|
74
|
+
logic:
|
|
75
|
+
workflow:
|
|
76
|
+
- name: "translate"
|
|
77
|
+
type: "genkit-translation"
|
|
78
|
+
action:
|
|
79
|
+
type: "translate"
|
|
80
|
+
result: "translationResult"
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client Module - Safe exports for client-side usage
|
|
3
|
+
*
|
|
4
|
+
* This module exports only types and metadata that are safe for client-side usage.
|
|
5
|
+
* It does NOT export any handlers, runtime logic, or server-only code.
|
|
6
|
+
*
|
|
7
|
+
* IMPORTANT: Never import from '../agents' index as it includes server-only registry!
|
|
8
|
+
* Import directly from individual agent folders instead.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
// Re-export all shared types and utilities
|
|
12
|
+
export * from '../shared';
|
|
13
|
+
|
|
14
|
+
// Re-export client-specific types
|
|
15
|
+
export * from './types';
|
|
16
|
+
|
|
17
|
+
// Agent metadata exports (client-safe) - import directly from agent folders
|
|
18
|
+
export { jokerMetadata } from '../agents/joker';
|
|
19
|
+
export { translatorMetadata } from '../agents/translator';
|
|
20
|
+
export { imageMetadata } from '../agents/image';
|
|
21
|
+
export { mcpToolMetadata } from '../agents/mcp-tool';
|
|
22
|
+
export { geminiVectorizeMetadata } from '../agents/gemini-vectorize';
|
|
23
|
+
export { chromadbMetadata } from '../agents/chromadb';
|
|
24
|
+
export { gitmcpMetadata } from '../agents/gitmcp';
|
|
25
|
+
export { ragMetadata } from '../agents/rag';
|
|
26
|
+
export { chatMetadata } from '../agents/chat';
|
|
27
|
+
|
|
28
|
+
// Schema exports (client-safe - for validation)
|
|
29
|
+
export { JokerInputSchema, JokerOutputSchema } from '../agents/joker';
|
|
30
|
+
export { TranslatorInputSchema, TranslatorOutputSchema } from '../agents/translator';
|
|
31
|
+
export { ImageInputSchema, ImageOutputSchema } from '../agents/image';
|
|
32
|
+
export { McpToolInputSchema, McpToolOutputSchema } from '../agents/mcp-tool';
|
|
33
|
+
export { GeminiVectorizeInputSchema, GeminiVectorizeOutputSchema } from '../agents/gemini-vectorize';
|
|
34
|
+
export { ChromaDBInputSchema, ChromaDBOutputSchema } from '../agents/chromadb';
|
|
35
|
+
export { GitMcpInputSchema, GitMcpOutputSchema } from '../agents/gitmcp';
|
|
36
|
+
export { RagInputSchema, RagOutputSchema } from '../agents/rag';
|
|
37
|
+
export { ChatInputSchema, ChatOutputSchema } from '../agents/chat';
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* All agent metadata for UI display
|
|
41
|
+
* Defined here to avoid importing from agents/index.ts which includes server-only registry
|
|
42
|
+
*/
|
|
43
|
+
export const allAgentMetadata = [
|
|
44
|
+
{ id: 'joker', name: 'Joker Agent', description: 'Tells jokes using Gemini Flash', category: 'utility', route: '/agents/joker' },
|
|
45
|
+
{ id: 'translator', name: 'Translator Agent', description: 'Translates text between languages using Gemini Flash via Genkit', category: 'translation', route: '/agents/translator' },
|
|
46
|
+
{ id: 'image', name: 'Image Generator Agent', description: 'Generates images using Gemini Flash with curated styles', category: 'creative', route: '/agents/image' },
|
|
47
|
+
{ id: 'mcp-tool', name: 'MCP Tool Agent', description: 'Generic agent for calling MCP server tools via SSE transport', category: 'integration', route: '/agents/mcp-tool' },
|
|
48
|
+
{ id: 'gemini-vectorize', name: 'Gemini Vectorize Agent', description: "Generates text embeddings using Google's Gemini text-embedding-004 model", category: 'ai-service', route: '/agents/gemini-vectorize' },
|
|
49
|
+
{ id: 'chromadb', name: 'ChromaDB Agent', description: 'Vector storage and retrieval using ChromaDB. Supports local and cloud deployments.', category: 'database', route: '/agents/chromadb' },
|
|
50
|
+
{ id: 'gitmcp', name: 'GitMCP Documentation Agent', description: 'Fetches and chunks GitHub repository documentation via gitmcp.io MCP servers', category: 'integration', route: '/agents/gitmcp' },
|
|
51
|
+
{ id: 'rag', name: 'RAG Intelligence Agent', description: 'Generates natural language answers based on provided context using Gemini', category: 'intelligence', route: '/agents/rag' },
|
|
52
|
+
{ id: 'chat', name: 'Q&A Context Chat Agent', description: 'Orchestrates RAG pipeline: vectorization, storage, retrieval and answer generation', category: 'chat', route: '/agents/chat' },
|
|
53
|
+
] as const;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client Types - Safe type re-exports for client-side usage
|
|
3
|
+
* These types contain no sensitive data or server-only logic
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// Re-export all shared types
|
|
7
|
+
export type {
|
|
8
|
+
AgentMetadata,
|
|
9
|
+
AgentResponse,
|
|
10
|
+
ExecutionStep,
|
|
11
|
+
WorkflowStepType,
|
|
12
|
+
AgentCategory,
|
|
13
|
+
} from '../shared/types/agent.types';
|
|
14
|
+
|
|
15
|
+
export type {
|
|
16
|
+
ExecutionResult,
|
|
17
|
+
ExecutionStatus,
|
|
18
|
+
ExecutionSummary,
|
|
19
|
+
ExecutionLogEntry,
|
|
20
|
+
} from '../shared/types/execution.types';
|
|
21
|
+
|
|
22
|
+
export type {
|
|
23
|
+
SchemaProperty,
|
|
24
|
+
AgentSchemaDefinition,
|
|
25
|
+
ValidationResult,
|
|
26
|
+
ValidationError,
|
|
27
|
+
} from '../shared/types/schema.types';
|
|
28
|
+
|
|
29
|
+
// Agent-specific type exports (client-safe)
|
|
30
|
+
export type { JokerInput, JokerOutput, JokeHandlerParams, JokeHandlerResult } from '../agents/joker';
|
|
31
|
+
export type { TranslatorInput, TranslatorOutput, TranslationHandlerParams, TranslationHandlerResult } from '../agents/translator';
|
|
32
|
+
export type { ImageInput, ImageOutput, ImageStyle, ImageHandlerParams, ImageHandlerResult } from '../agents/image';
|
|
33
|
+
export type { McpToolInput, McpToolOutput, McpToolHandlerParams, McpToolHandlerResult } from '../agents/mcp-tool';
|
|
34
|
+
export type { GeminiVectorizeInput, GeminiVectorizeOutput, VectorizeHandlerParams, VectorizeHandlerResult } from '../agents/gemini-vectorize';
|
|
35
|
+
export type { ChromaDBInput, ChromaDBOutput, ChromaDBHandlerParams, ChromaDBHandlerResult, ChromaDBSearchResult } from '../agents/chromadb';
|
|
36
|
+
export type { GitMcpInput, GitMcpOutput, GitMcpHandlerParams, GitMcpHandlerResult } from '../agents/gitmcp';
|
|
37
|
+
export type { RagInput, RagOutput, RagHandlerParams, RagHandlerResult, ConversationMessage } from '../agents/rag';
|
|
38
|
+
export type { ChatInput, ChatOutput, ChatHandlerParams, ChatHandlerResult } from '../agents/chat';
|