@cloudbase/agent-examples-agents-server 0.0.2

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 ADDED
@@ -0,0 +1,82 @@
1
+ # Agentic Chat Example Server
2
+
3
+ Follow these steps to run the LangGraph agent backend that powers the Agentic Chat example. Commands assume you are in the monorepo root unless noted.
4
+
5
+ ## 1. Build the Monorepo Packages
6
+
7
+ From the TypeScript workspace root (`AG-Kit/typescript-sdk`):
8
+
9
+ - `pnpm install`
10
+ - `pnpm run build`
11
+
12
+ ## 2. Prepare Server Environment Variables
13
+
14
+ In this directory (`AG-Kit/typescript-sdk/packages/examples/agents/server`):
15
+
16
+ - Copy `.env.example` to `.env` (or create `.env` manually)
17
+ - Set the required variables:
18
+ - `OPENAI_API_KEY`
19
+ - `OPENAI_MODEL`
20
+ - `OPENAI_BASE_URL`
21
+
22
+ ## 3. Install, Build, and Start the Server
23
+
24
+ Still inside `AG-Kit/typescript-sdk/packages/examples/agents/server`, run:
25
+
26
+ - `pnpm install`
27
+ - `pnpm run build`
28
+ - `pnpm run start`
29
+
30
+ The server exposes endpoints under `/v1/aibot/bots/` that the web frontend consumes.
31
+
32
+ ## Docker Deployment
33
+
34
+ ### Prerequisites
35
+
36
+ Before building the Docker image, ensure you have:
37
+
38
+ 1. **Built the entire monorepo locally**
39
+ ```bash
40
+ # From the typescript-sdk root directory
41
+ cd ../../../
42
+ pnpm install
43
+ pnpm build
44
+ ```
45
+
46
+ 2. **Prepared Environment Variables**
47
+ ```bash
48
+ # Copy and configure environment variables
49
+ cp .env.example .env
50
+ # Edit .env and set your OPENAI_API_KEY
51
+ ```
52
+
53
+ ### Building and Running with Docker
54
+
55
+ 1. **Build the Docker Image**
56
+ ```bash
57
+ # From the server directory
58
+ docker build -t ag-kit-server .
59
+ ```
60
+
61
+ 2. **Run the Container**
62
+ ```bash
63
+ # Run with environment variables
64
+ docker run -p 9000:9000 \
65
+ -e OPENAI_API_KEY=your_api_key_here \
66
+ -e NODE_ENV=production \
67
+ ag-kit-server
68
+
69
+ # Or run with .env file
70
+ docker run -p 9000:9000 --env-file .env ag-kit-server
71
+ ```
72
+
73
+ 3. **Access the Server**
74
+ - Server will be available at `http://localhost:9000`
75
+ - Health check endpoint: `http://localhost:9000/health`
76
+
77
+ ### Docker Features
78
+
79
+ - **Workspace Support**: Includes all workspace dependencies in the image
80
+ - **Pre-built**: All dependencies and built files are included
81
+ - **Performance**: Alpine Linux base image for smaller size
82
+ - **Simple**: No build process required in container
@@ -0,0 +1,5 @@
1
+ import express from 'express';
2
+
3
+ declare function createApp(): Promise<express.Express>;
4
+
5
+ export { createApp as server };
@@ -0,0 +1,5 @@
1
+ import express from 'express';
2
+
3
+ declare function createApp(): Promise<express.Express>;
4
+
5
+ export { createApp as server };
package/dist/index.js ADDED
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/index.ts
31
+ var index_exports = {};
32
+ __export(index_exports, {
33
+ server: () => server_default
34
+ });
35
+ module.exports = __toCommonJS(index_exports);
36
+ var process2 = __toESM(require("process"));
37
+
38
+ // src/server.ts
39
+ var import_cors = __toESM(require("cors"));
40
+ var import_dotenv = __toESM(require("dotenv"));
41
+ var import_agent_adapter_langgraph = require("@cloudbase/agent-adapter-langgraph");
42
+ var import_agent_server = require("@cloudbase/agent-server");
43
+ var import_agent_adapter_llamaindex = require("@cloudbase/agent-adapter-llamaindex");
44
+ var import_agent_adapter_mastra = require("@cloudbase/agent-adapter-mastra");
45
+ var import_express = __toESM(require("express"));
46
+ var undici = __toESM(require("undici"));
47
+ var import_agent_examples_langgraph_agentic_chat = require("@cloudbase/agent-examples-langgraph-agentic-chat");
48
+ var import_agent_examples_langgraph_human_in_the_loop = require("@cloudbase/agent-examples-langgraph-human-in-the-loop");
49
+ var import_agent_examples_agkit_agents_agentic_chat = require("@cloudbase/agent-examples-agkit-agents-agentic-chat");
50
+ var import_agent_examples_agkit_agents_human_in_the_loop = require("@cloudbase/agent-examples-agkit-agents-human-in-the-loop");
51
+ var import_agent_examples_llamaindex_ts_multi_agent = require("@cloudbase/agent-examples-llamaindex-ts-multi-agent");
52
+ var import_agent_examples_mastra_agentic_chat = require("@cloudbase/agent-examples-mastra-agentic-chat");
53
+ var import_agent_examples_agkit_agents_mcp_knowledge_retrieval = require("@cloudbase/agent-examples-agkit-agents-mcp-knowledge-retrieval");
54
+ var import_agent_examples_agkit_agents_multi_agent = require("@cloudbase/agent-examples-agkit-agents-multi-agent");
55
+ var import_agent_examples_langchain_agentic_chat = require("@cloudbase/agent-examples-langchain-agentic-chat");
56
+ var import_agent_examples_openai_agent_sdk_agentic_chat = require("@cloudbase/agent-examples-openai-agent-sdk-agentic-chat");
57
+ var import_agent_adapter_openai_agent_sdk = require("@cloudbase/agent-adapter-openai-agent-sdk");
58
+ var import_agent_agents = require("@cloudbase/agent-agents");
59
+ var import_agent_examples_agkit_agents_manga_creator = require("@cloudbase/agent-examples-agkit-agents-manga-creator");
60
+ import_dotenv.default.config({ path: ".env" });
61
+ if (process.env.http_proxy) {
62
+ undici.setGlobalDispatcher(new undici.ProxyAgent(process.env.http_proxy));
63
+ }
64
+ var memory = new import_agent_agents.InMemoryMemory();
65
+ async function createApp() {
66
+ const app = (0, import_express.default)();
67
+ app.use((0, import_cors.default)());
68
+ const AGENTS = {
69
+ agentic_chat: () => {
70
+ return {
71
+ agent: new import_agent_adapter_langgraph.LanggraphAgent({
72
+ name: "agentic chat",
73
+ description: "An agent to showcase agentic chat ability.",
74
+ compiledWorkflow: import_agent_examples_langgraph_agentic_chat.agenticChatGraph
75
+ })
76
+ };
77
+ },
78
+ human_in_the_loop: () => {
79
+ return {
80
+ agent: new import_agent_adapter_langgraph.LanggraphAgent({
81
+ name: "human in the loop",
82
+ description: "An agent to showcase human in the loop ability.",
83
+ compiledWorkflow: import_agent_examples_langgraph_human_in_the_loop.humanInTheLoopGraph
84
+ })
85
+ };
86
+ },
87
+ agkit_agentic_chat: () => {
88
+ return {
89
+ agent: (0, import_agent_examples_agkit_agents_agentic_chat.createAgenticChatAgent)()
90
+ };
91
+ },
92
+ agkit_human_in_the_loop: () => {
93
+ return {
94
+ agent: (0, import_agent_examples_agkit_agents_human_in_the_loop.createHumanInTheLoopAgent)()
95
+ };
96
+ },
97
+ agkit_mcp_knowledge_retrieval: async () => {
98
+ const { agent, cleanup } = await (0, import_agent_examples_agkit_agents_mcp_knowledge_retrieval.createMCPKnowledgeRetrievalAgent)();
99
+ return {
100
+ agent,
101
+ cleanup
102
+ };
103
+ },
104
+ llamaindex_multi_agent: () => {
105
+ return {
106
+ agent: new import_agent_adapter_llamaindex.LlamaIndexAgent({
107
+ workflowFactory: import_agent_examples_llamaindex_ts_multi_agent.createWebReadingMultiAgent
108
+ })
109
+ };
110
+ },
111
+ mastra_agentic_chat: () => {
112
+ return {
113
+ agent: new import_agent_adapter_mastra.MastraAgent({
114
+ runnableFactory: import_agent_examples_mastra_agentic_chat.createAgenticChatAgent
115
+ })
116
+ };
117
+ },
118
+ agkit_multi_agent: () => {
119
+ return {
120
+ agent: (0, import_agent_examples_agkit_agents_multi_agent.createMultiAgentOrchestrator)()
121
+ };
122
+ },
123
+ langchain_agentic_chat: () => {
124
+ return {
125
+ agent: (0, import_agent_examples_langchain_agentic_chat.createAgent)()
126
+ };
127
+ },
128
+ openai_agentic_chat: () => {
129
+ return {
130
+ agent: new import_agent_adapter_openai_agent_sdk.OpenAIAgent({
131
+ ...(0, import_agent_examples_openai_agent_sdk_agentic_chat.createOpenAIAgenticChatAgent)(),
132
+ memory
133
+ })
134
+ };
135
+ },
136
+ agkit_manga_creator: () => {
137
+ return {
138
+ agent: (0, import_agent_examples_agkit_agents_manga_creator.createMangaCreatorAgent)()
139
+ };
140
+ }
141
+ };
142
+ Object.entries(AGENTS).forEach(([key, agent]) => {
143
+ (0, import_agent_server.createExpressRoutes)({
144
+ basePath: `/${key}/`,
145
+ createAgent: agent,
146
+ express: app
147
+ });
148
+ });
149
+ return app;
150
+ }
151
+ var server_default = createApp;
152
+
153
+ // src/index.ts
154
+ var port = process2.env.PORT || 9e3;
155
+ async function startServer() {
156
+ const app = await server_default();
157
+ return new Promise((resolve, reject) => {
158
+ app.listen(port, (err) => {
159
+ if (err) {
160
+ reject(err);
161
+ } else {
162
+ resolve(app);
163
+ }
164
+ });
165
+ });
166
+ }
167
+ startServer().then(() => {
168
+ console.log("Server running on port " + port);
169
+ }).catch(console.error);
170
+ // Annotate the CommonJS export names for ESM import in node:
171
+ 0 && (module.exports = {
172
+ server
173
+ });
174
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/server.ts"],"sourcesContent":["import * as process from \"node:process\";\nexport { default as server } from \"./server.js\";\n\nimport createApp from \"./server.js\";\n\n\nconst port = process.env.PORT || 9000;\nasync function startServer() {\n const app = await createApp();\n\n return new Promise<Awaited<ReturnType<typeof createApp>>>((resolve, reject) => {\n app.listen(port, (err) => {\n if (err) {\n reject(err);\n } else {\n resolve(app);\n }\n });\n });\n}\n\nstartServer().then(() => {\n console.log(\"Server running on port \" + port);\n}).catch(console.error);\n","import cors from \"cors\";\nimport dotenv from \"dotenv\";\nimport { LanggraphAgent } from \"@cloudbase/agent-adapter-langgraph\";\nimport { createExpressRoutes } from \"@cloudbase/agent-server\";\nimport { LlamaIndexAgent } from \"@cloudbase/agent-adapter-llamaindex\";\nimport { MastraAgent } from \"@cloudbase/agent-adapter-mastra\";\nimport express from \"express\";\nimport * as undici from 'undici'\nimport { agenticChatGraph } from \"@cloudbase/agent-examples-langgraph-agentic-chat\";\nimport { humanInTheLoopGraph } from \"@cloudbase/agent-examples-langgraph-human-in-the-loop\";\nimport { createAgenticChatAgent } from \"@cloudbase/agent-examples-agkit-agents-agentic-chat\";\nimport { createHumanInTheLoopAgent } from \"@cloudbase/agent-examples-agkit-agents-human-in-the-loop\";\nimport { createWebReadingMultiAgent } from \"@cloudbase/agent-examples-llamaindex-ts-multi-agent\";\nimport { createAgenticChatAgent as createMastraAgenticChatAgent } from \"@cloudbase/agent-examples-mastra-agentic-chat\";\nimport { createMCPKnowledgeRetrievalAgent } from \"@cloudbase/agent-examples-agkit-agents-mcp-knowledge-retrieval\";\nimport { createMultiAgentOrchestrator } from \"@cloudbase/agent-examples-agkit-agents-multi-agent\";\nimport { createAgent as createLangchainAgenticChatAgent } from \"@cloudbase/agent-examples-langchain-agentic-chat\";\nimport { createOpenAIAgenticChatAgent } from \"@cloudbase/agent-examples-openai-agent-sdk-agentic-chat\";\nimport { OpenAIAgent } from \"@cloudbase/agent-adapter-openai-agent-sdk\";\nimport { InMemoryMemory } from \"@cloudbase/agent-agents\";\nimport { createMangaCreatorAgent } from \"@cloudbase/agent-examples-agkit-agents-manga-creator\";\n\n// Load environment variables FIRST\ndotenv.config({ path: '.env' });\nif (process.env.http_proxy) {\n undici.setGlobalDispatcher(new undici.ProxyAgent(process.env.http_proxy));\n}\nconst memory = new InMemoryMemory();\nasync function createApp(): Promise<express.Express> {\n const app: express.Express = express();\n\n app.use(cors());\n\n\n const AGENTS = {\n agentic_chat: () => {\n return {\n agent: new LanggraphAgent({\n name: \"agentic chat\",\n description: \"An agent to showcase agentic chat ability.\",\n compiledWorkflow: agenticChatGraph,\n })\n }\n },\n\n human_in_the_loop: () => {\n return {\n agent: new LanggraphAgent({\n name: \"human in the loop\",\n description: \"An agent to showcase human in the loop ability.\",\n compiledWorkflow: humanInTheLoopGraph,\n })\n }\n },\n\n agkit_agentic_chat: () => {\n return {\n agent: createAgenticChatAgent(),\n }\n },\n\n agkit_human_in_the_loop: () => {\n return {\n agent: createHumanInTheLoopAgent(),\n }\n },\n\n agkit_mcp_knowledge_retrieval: async () => {\n const { agent, cleanup } = await createMCPKnowledgeRetrievalAgent();\n return {\n agent,\n cleanup\n }\n },\n llamaindex_multi_agent: () => {\n return {\n agent: new LlamaIndexAgent({\n workflowFactory: createWebReadingMultiAgent,\n })\n }\n },\n mastra_agentic_chat: () => {\n return {\n agent: new MastraAgent({\n runnableFactory: createMastraAgenticChatAgent,\n })\n }\n },\n\n agkit_multi_agent: () => {\n return {\n agent: createMultiAgentOrchestrator(),\n }\n },\n langchain_agentic_chat: () => {\n return {\n agent: createLangchainAgenticChatAgent(),\n }\n },\n openai_agentic_chat: () => {\n return {\n agent: new OpenAIAgent({\n ...createOpenAIAgenticChatAgent(),\n memory,\n }),\n }\n },\n agkit_manga_creator: () => {\n return {\n agent: createMangaCreatorAgent(),\n }\n },\n };\n\n Object.entries(AGENTS).forEach(([key, agent]) => {\n createExpressRoutes({\n basePath: `/${key}/`,\n createAgent: agent,\n express: app,\n });\n });\n\n return app;\n}\n\nexport default createApp;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,WAAyB;;;ACAzB,kBAAiB;AACjB,oBAAmB;AACnB,qCAA+B;AAC/B,0BAAoC;AACpC,sCAAgC;AAChC,kCAA4B;AAC5B,qBAAoB;AACpB,aAAwB;AACxB,mDAAiC;AACjC,wDAAoC;AACpC,sDAAuC;AACvC,2DAA0C;AAC1C,sDAA2C;AAC3C,gDAAuE;AACvE,iEAAiD;AACjD,qDAA6C;AAC7C,mDAA+D;AAC/D,0DAA6C;AAC7C,4CAA4B;AAC5B,0BAA+B;AAC/B,uDAAwC;AAGxC,cAAAC,QAAO,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9B,IAAI,QAAQ,IAAI,YAAY;AAC1B,EAAO,2BAAoB,IAAW,kBAAW,QAAQ,IAAI,UAAU,CAAC;AAC1E;AACA,IAAM,SAAS,IAAI,mCAAe;AAClC,eAAe,YAAsC;AACnD,QAAM,UAAuB,eAAAC,SAAQ;AAErC,MAAI,QAAI,YAAAC,SAAK,CAAC;AAGd,QAAM,SAAS;AAAA,IACb,cAAc,MAAM;AAClB,aAAO;AAAA,QACL,OAAO,IAAI,8CAAe;AAAA,UACxB,MAAM;AAAA,UACN,aAAa;AAAA,UACb,kBAAkB;AAAA,QACpB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IAEA,mBAAmB,MAAM;AACvB,aAAO;AAAA,QACL,OAAO,IAAI,8CAAe;AAAA,UACxB,MAAM;AAAA,UACN,aAAa;AAAA,UACb,kBAAkB;AAAA,QACpB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IAEA,oBAAoB,MAAM;AACxB,aAAO;AAAA,QACL,WAAO,wEAAuB;AAAA,MAChC;AAAA,IACF;AAAA,IAEA,yBAAyB,MAAM;AAC7B,aAAO;AAAA,QACL,WAAO,gFAA0B;AAAA,MACnC;AAAA,IACF;AAAA,IAEA,+BAA+B,YAAY;AACzC,YAAM,EAAE,OAAO,QAAQ,IAAI,UAAM,6FAAiC;AAClE,aAAO;AAAA,QACL;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,IACA,wBAAwB,MAAM;AAC5B,aAAO;AAAA,QACL,OAAO,IAAI,gDAAgB;AAAA,UACzB,iBAAiB;AAAA,QACnB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA,qBAAqB,MAAM;AACzB,aAAO;AAAA,QACL,OAAO,IAAI,wCAAY;AAAA,UACrB,iBAAiB,0CAAAC;AAAA,QACnB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IAEA,mBAAmB,MAAM;AACvB,aAAO;AAAA,QACL,WAAO,6EAA6B;AAAA,MACtC;AAAA,IACF;AAAA,IACA,wBAAwB,MAAM;AAC5B,aAAO;AAAA,QACL,WAAO,6CAAAC,aAAgC;AAAA,MACzC;AAAA,IACF;AAAA,IACA,qBAAqB,MAAM;AACzB,aAAO;AAAA,QACL,OAAO,IAAI,kDAAY;AAAA,UACrB,OAAG,kFAA6B;AAAA,UAChC;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA,qBAAqB,MAAM;AACzB,aAAO;AAAA,QACL,WAAO,0EAAwB;AAAA,MACjC;AAAA,IACF;AAAA,EACF;AAEA,SAAO,QAAQ,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC/C,iDAAoB;AAAA,MAClB,UAAU,IAAI,GAAG;AAAA,MACjB,aAAa;AAAA,MACb,SAAS;AAAA,IACX,CAAC;AAAA,EACH,CAAC;AAED,SAAO;AACT;AAEA,IAAO,iBAAQ;;;ADvHf,IAAM,OAAe,aAAI,QAAQ;AACjC,eAAe,cAAc;AAC3B,QAAM,MAAM,MAAM,eAAU;AAE5B,SAAO,IAAI,QAA+C,CAAC,SAAS,WAAW;AAC7E,QAAI,OAAO,MAAM,CAAC,QAAQ;AACxB,UAAI,KAAK;AACP,eAAO,GAAG;AAAA,MACZ,OAAO;AACL,gBAAQ,GAAG;AAAA,MACb;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH;AAEA,YAAY,EAAE,KAAK,MAAM;AACvB,UAAQ,IAAI,4BAA4B,IAAI;AAC9C,CAAC,EAAE,MAAM,QAAQ,KAAK;","names":["process","dotenv","express","cors","createMastraAgenticChatAgent","createLangchainAgenticChatAgent"]}
package/dist/index.mjs ADDED
@@ -0,0 +1,139 @@
1
+ // src/index.ts
2
+ import * as process2 from "process";
3
+
4
+ // src/server.ts
5
+ import cors from "cors";
6
+ import dotenv from "dotenv";
7
+ import { LanggraphAgent } from "@cloudbase/agent-adapter-langgraph";
8
+ import { createExpressRoutes } from "@cloudbase/agent-server";
9
+ import { LlamaIndexAgent } from "@cloudbase/agent-adapter-llamaindex";
10
+ import { MastraAgent } from "@cloudbase/agent-adapter-mastra";
11
+ import express from "express";
12
+ import * as undici from "undici";
13
+ import { agenticChatGraph } from "@cloudbase/agent-examples-langgraph-agentic-chat";
14
+ import { humanInTheLoopGraph } from "@cloudbase/agent-examples-langgraph-human-in-the-loop";
15
+ import { createAgenticChatAgent } from "@cloudbase/agent-examples-agkit-agents-agentic-chat";
16
+ import { createHumanInTheLoopAgent } from "@cloudbase/agent-examples-agkit-agents-human-in-the-loop";
17
+ import { createWebReadingMultiAgent } from "@cloudbase/agent-examples-llamaindex-ts-multi-agent";
18
+ import { createAgenticChatAgent as createMastraAgenticChatAgent } from "@cloudbase/agent-examples-mastra-agentic-chat";
19
+ import { createMCPKnowledgeRetrievalAgent } from "@cloudbase/agent-examples-agkit-agents-mcp-knowledge-retrieval";
20
+ import { createMultiAgentOrchestrator } from "@cloudbase/agent-examples-agkit-agents-multi-agent";
21
+ import { createAgent as createLangchainAgenticChatAgent } from "@cloudbase/agent-examples-langchain-agentic-chat";
22
+ import { createOpenAIAgenticChatAgent } from "@cloudbase/agent-examples-openai-agent-sdk-agentic-chat";
23
+ import { OpenAIAgent } from "@cloudbase/agent-adapter-openai-agent-sdk";
24
+ import { InMemoryMemory } from "@cloudbase/agent-agents";
25
+ import { createMangaCreatorAgent } from "@cloudbase/agent-examples-agkit-agents-manga-creator";
26
+ dotenv.config({ path: ".env" });
27
+ if (process.env.http_proxy) {
28
+ undici.setGlobalDispatcher(new undici.ProxyAgent(process.env.http_proxy));
29
+ }
30
+ var memory = new InMemoryMemory();
31
+ async function createApp() {
32
+ const app = express();
33
+ app.use(cors());
34
+ const AGENTS = {
35
+ agentic_chat: () => {
36
+ return {
37
+ agent: new LanggraphAgent({
38
+ name: "agentic chat",
39
+ description: "An agent to showcase agentic chat ability.",
40
+ compiledWorkflow: agenticChatGraph
41
+ })
42
+ };
43
+ },
44
+ human_in_the_loop: () => {
45
+ return {
46
+ agent: new LanggraphAgent({
47
+ name: "human in the loop",
48
+ description: "An agent to showcase human in the loop ability.",
49
+ compiledWorkflow: humanInTheLoopGraph
50
+ })
51
+ };
52
+ },
53
+ agkit_agentic_chat: () => {
54
+ return {
55
+ agent: createAgenticChatAgent()
56
+ };
57
+ },
58
+ agkit_human_in_the_loop: () => {
59
+ return {
60
+ agent: createHumanInTheLoopAgent()
61
+ };
62
+ },
63
+ agkit_mcp_knowledge_retrieval: async () => {
64
+ const { agent, cleanup } = await createMCPKnowledgeRetrievalAgent();
65
+ return {
66
+ agent,
67
+ cleanup
68
+ };
69
+ },
70
+ llamaindex_multi_agent: () => {
71
+ return {
72
+ agent: new LlamaIndexAgent({
73
+ workflowFactory: createWebReadingMultiAgent
74
+ })
75
+ };
76
+ },
77
+ mastra_agentic_chat: () => {
78
+ return {
79
+ agent: new MastraAgent({
80
+ runnableFactory: createMastraAgenticChatAgent
81
+ })
82
+ };
83
+ },
84
+ agkit_multi_agent: () => {
85
+ return {
86
+ agent: createMultiAgentOrchestrator()
87
+ };
88
+ },
89
+ langchain_agentic_chat: () => {
90
+ return {
91
+ agent: createLangchainAgenticChatAgent()
92
+ };
93
+ },
94
+ openai_agentic_chat: () => {
95
+ return {
96
+ agent: new OpenAIAgent({
97
+ ...createOpenAIAgenticChatAgent(),
98
+ memory
99
+ })
100
+ };
101
+ },
102
+ agkit_manga_creator: () => {
103
+ return {
104
+ agent: createMangaCreatorAgent()
105
+ };
106
+ }
107
+ };
108
+ Object.entries(AGENTS).forEach(([key, agent]) => {
109
+ createExpressRoutes({
110
+ basePath: `/${key}/`,
111
+ createAgent: agent,
112
+ express: app
113
+ });
114
+ });
115
+ return app;
116
+ }
117
+ var server_default = createApp;
118
+
119
+ // src/index.ts
120
+ var port = process2.env.PORT || 9e3;
121
+ async function startServer() {
122
+ const app = await server_default();
123
+ return new Promise((resolve, reject) => {
124
+ app.listen(port, (err) => {
125
+ if (err) {
126
+ reject(err);
127
+ } else {
128
+ resolve(app);
129
+ }
130
+ });
131
+ });
132
+ }
133
+ startServer().then(() => {
134
+ console.log("Server running on port " + port);
135
+ }).catch(console.error);
136
+ export {
137
+ server_default as server
138
+ };
139
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/server.ts"],"sourcesContent":["import * as process from \"node:process\";\nexport { default as server } from \"./server.js\";\n\nimport createApp from \"./server.js\";\n\n\nconst port = process.env.PORT || 9000;\nasync function startServer() {\n const app = await createApp();\n\n return new Promise<Awaited<ReturnType<typeof createApp>>>((resolve, reject) => {\n app.listen(port, (err) => {\n if (err) {\n reject(err);\n } else {\n resolve(app);\n }\n });\n });\n}\n\nstartServer().then(() => {\n console.log(\"Server running on port \" + port);\n}).catch(console.error);\n","import cors from \"cors\";\nimport dotenv from \"dotenv\";\nimport { LanggraphAgent } from \"@cloudbase/agent-adapter-langgraph\";\nimport { createExpressRoutes } from \"@cloudbase/agent-server\";\nimport { LlamaIndexAgent } from \"@cloudbase/agent-adapter-llamaindex\";\nimport { MastraAgent } from \"@cloudbase/agent-adapter-mastra\";\nimport express from \"express\";\nimport * as undici from 'undici'\nimport { agenticChatGraph } from \"@cloudbase/agent-examples-langgraph-agentic-chat\";\nimport { humanInTheLoopGraph } from \"@cloudbase/agent-examples-langgraph-human-in-the-loop\";\nimport { createAgenticChatAgent } from \"@cloudbase/agent-examples-agkit-agents-agentic-chat\";\nimport { createHumanInTheLoopAgent } from \"@cloudbase/agent-examples-agkit-agents-human-in-the-loop\";\nimport { createWebReadingMultiAgent } from \"@cloudbase/agent-examples-llamaindex-ts-multi-agent\";\nimport { createAgenticChatAgent as createMastraAgenticChatAgent } from \"@cloudbase/agent-examples-mastra-agentic-chat\";\nimport { createMCPKnowledgeRetrievalAgent } from \"@cloudbase/agent-examples-agkit-agents-mcp-knowledge-retrieval\";\nimport { createMultiAgentOrchestrator } from \"@cloudbase/agent-examples-agkit-agents-multi-agent\";\nimport { createAgent as createLangchainAgenticChatAgent } from \"@cloudbase/agent-examples-langchain-agentic-chat\";\nimport { createOpenAIAgenticChatAgent } from \"@cloudbase/agent-examples-openai-agent-sdk-agentic-chat\";\nimport { OpenAIAgent } from \"@cloudbase/agent-adapter-openai-agent-sdk\";\nimport { InMemoryMemory } from \"@cloudbase/agent-agents\";\nimport { createMangaCreatorAgent } from \"@cloudbase/agent-examples-agkit-agents-manga-creator\";\n\n// Load environment variables FIRST\ndotenv.config({ path: '.env' });\nif (process.env.http_proxy) {\n undici.setGlobalDispatcher(new undici.ProxyAgent(process.env.http_proxy));\n}\nconst memory = new InMemoryMemory();\nasync function createApp(): Promise<express.Express> {\n const app: express.Express = express();\n\n app.use(cors());\n\n\n const AGENTS = {\n agentic_chat: () => {\n return {\n agent: new LanggraphAgent({\n name: \"agentic chat\",\n description: \"An agent to showcase agentic chat ability.\",\n compiledWorkflow: agenticChatGraph,\n })\n }\n },\n\n human_in_the_loop: () => {\n return {\n agent: new LanggraphAgent({\n name: \"human in the loop\",\n description: \"An agent to showcase human in the loop ability.\",\n compiledWorkflow: humanInTheLoopGraph,\n })\n }\n },\n\n agkit_agentic_chat: () => {\n return {\n agent: createAgenticChatAgent(),\n }\n },\n\n agkit_human_in_the_loop: () => {\n return {\n agent: createHumanInTheLoopAgent(),\n }\n },\n\n agkit_mcp_knowledge_retrieval: async () => {\n const { agent, cleanup } = await createMCPKnowledgeRetrievalAgent();\n return {\n agent,\n cleanup\n }\n },\n llamaindex_multi_agent: () => {\n return {\n agent: new LlamaIndexAgent({\n workflowFactory: createWebReadingMultiAgent,\n })\n }\n },\n mastra_agentic_chat: () => {\n return {\n agent: new MastraAgent({\n runnableFactory: createMastraAgenticChatAgent,\n })\n }\n },\n\n agkit_multi_agent: () => {\n return {\n agent: createMultiAgentOrchestrator(),\n }\n },\n langchain_agentic_chat: () => {\n return {\n agent: createLangchainAgenticChatAgent(),\n }\n },\n openai_agentic_chat: () => {\n return {\n agent: new OpenAIAgent({\n ...createOpenAIAgenticChatAgent(),\n memory,\n }),\n }\n },\n agkit_manga_creator: () => {\n return {\n agent: createMangaCreatorAgent(),\n }\n },\n };\n\n Object.entries(AGENTS).forEach(([key, agent]) => {\n createExpressRoutes({\n basePath: `/${key}/`,\n createAgent: agent,\n express: app,\n });\n });\n\n return app;\n}\n\nexport default createApp;\n"],"mappings":"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","names":["process"]}
package/package.json ADDED
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "@cloudbase/agent-examples-agents-server",
3
+ "version": "0.0.2",
4
+ "description": "",
5
+ "files": [
6
+ "dist/",
7
+ "README.md",
8
+ "CHANGELOG.md"
9
+ ],
10
+ "main": "dist/index.js",
11
+ "keywords": [],
12
+ "author": "",
13
+ "license": "ISC",
14
+ "devDependencies": {
15
+ "@types/cors": "^2.8.19",
16
+ "@types/express": "^5.0.3",
17
+ "tsup": "^8.5.0",
18
+ "tsx": "^4.20.6"
19
+ },
20
+ "dependencies": {
21
+ "cors": "^2.8.5",
22
+ "dotenv": "^16.4.5",
23
+ "express": "^5.1.0",
24
+ "proxy-agent": "^6.5.0",
25
+ "undici": "^7.16.0",
26
+ "@cloudbase/agent-adapter-langchain": "^0.0.2",
27
+ "@cloudbase/agent-adapter-llamaindex": "^0.0.2",
28
+ "@cloudbase/agent-adapter-mastra": "^0.0.2",
29
+ "@cloudbase/agent-adapter-langgraph": "^0.0.2",
30
+ "@cloudbase/agent-adapter-openai-agent-sdk": "^0.0.2",
31
+ "@cloudbase/agent-agents": "^0.0.2",
32
+ "@cloudbase/agent-examples-agkit-agents-human-in-the-loop": "^0.0.2",
33
+ "@cloudbase/agent-examples-agkit-agents-manga-creator": "^0.0.2",
34
+ "@cloudbase/agent-examples-agkit-agents-mcp-knowledge-retrieval": "^0.0.2",
35
+ "@cloudbase/agent-examples-langgraph-agentic-chat": "^0.0.2",
36
+ "@cloudbase/agent-examples-agkit-agents-multi-agent": "^0.0.2",
37
+ "@cloudbase/agent-examples-langchain-agentic-chat": "^0.0.2",
38
+ "@cloudbase/agent-examples-llamaindex-ts-multi-agent": "^0.0.2",
39
+ "@cloudbase/agent-examples-mastra-agentic-chat": "^0.0.2",
40
+ "@cloudbase/agent-examples-openai-agent-sdk-agentic-chat": "^0.0.2",
41
+ "@cloudbase/agent-examples-agkit-agents-agentic-chat": "^0.0.2",
42
+ "@cloudbase/agent-server": "^0.0.2",
43
+ "@cloudbase/agent-examples-langgraph-human-in-the-loop": "^0.0.2"
44
+ },
45
+ "scripts": {
46
+ "test": "echo \"Error: no test specified\" && exit 1",
47
+ "build": "tsup --config tsup.config.ts",
48
+ "start": "node dist/index.js",
49
+ "dev": "npm run build && npm run start"
50
+ }
51
+ }