@ainetwork/adk 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +299 -0
- package/dist/cjs/ainagent.d.ts +15 -0
- package/dist/cjs/ainagent.d.ts.map +1 -0
- package/dist/cjs/ainagent.js +68 -0
- package/dist/cjs/ainagent.js.map +1 -0
- package/dist/cjs/app.d.ts +102 -0
- package/dist/cjs/app.d.ts.map +1 -0
- package/dist/cjs/app.js +170 -0
- package/dist/cjs/app.js.map +1 -0
- package/dist/cjs/controllers/a2a.controller.d.ts +14 -0
- package/dist/cjs/controllers/a2a.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/a2a.controller.js +98 -0
- package/dist/cjs/controllers/a2a.controller.js.map +1 -0
- package/dist/cjs/controllers/api/model.api.controller.d.ts +8 -0
- package/dist/cjs/controllers/api/model.api.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/api/model.api.controller.js +19 -0
- package/dist/cjs/controllers/api/model.api.controller.js.map +1 -0
- package/dist/cjs/controllers/api/session.api.controller.d.ts +8 -0
- package/dist/cjs/controllers/api/session.api.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/api/session.api.controller.js +21 -0
- package/dist/cjs/controllers/api/session.api.controller.js.map +1 -0
- package/dist/cjs/controllers/query.controller.d.ts +8 -0
- package/dist/cjs/controllers/query.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/query.controller.js +20 -0
- package/dist/cjs/controllers/query.controller.js.map +1 -0
- package/dist/cjs/intent/analyzer.d.ts +24 -0
- package/dist/cjs/intent/analyzer.d.ts.map +1 -0
- package/dist/cjs/intent/analyzer.js +154 -0
- package/dist/cjs/intent/analyzer.js.map +1 -0
- package/dist/cjs/intent/modules/a2a/index.d.ts +12 -0
- package/dist/cjs/intent/modules/a2a/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/a2a/index.js +136 -0
- package/dist/cjs/intent/modules/a2a/index.js.map +1 -0
- package/dist/cjs/intent/modules/a2a/tool.d.ts +8 -0
- package/dist/cjs/intent/modules/a2a/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/a2a/tool.js +14 -0
- package/dist/cjs/intent/modules/a2a/tool.js.map +1 -0
- package/dist/cjs/intent/modules/common/tool.d.ts +10 -0
- package/dist/cjs/intent/modules/common/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/common/tool.js +18 -0
- package/dist/cjs/intent/modules/common/tool.js.map +1 -0
- package/dist/cjs/intent/modules/common/types.d.ts +5 -0
- package/dist/cjs/intent/modules/common/types.d.ts.map +1 -0
- package/dist/cjs/intent/modules/common/types.js +9 -0
- package/dist/cjs/intent/modules/common/types.js.map +1 -0
- package/dist/cjs/intent/modules/fol/client/folClient.d.ts +31 -0
- package/dist/cjs/intent/modules/fol/client/folClient.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/client/folClient.js +185 -0
- package/dist/cjs/intent/modules/fol/client/folClient.js.map +1 -0
- package/dist/cjs/intent/modules/fol/index.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/index.js +14 -0
- package/dist/cjs/intent/modules/fol/index.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/base.d.ts +9 -0
- package/dist/cjs/intent/modules/fol/store/base.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/base.js +7 -0
- package/dist/cjs/intent/modules/fol/store/base.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/index.d.ts +5 -0
- package/dist/cjs/intent/modules/fol/store/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/index.js +12 -0
- package/dist/cjs/intent/modules/fol/store/index.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/local.d.ts +25 -0
- package/dist/cjs/intent/modules/fol/store/local.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/local.js +221 -0
- package/dist/cjs/intent/modules/fol/store/local.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/mongo.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/store/mongo.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/mongo.js +9 -0
- package/dist/cjs/intent/modules/fol/store/mongo.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.js +9 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.js.map +1 -0
- package/dist/cjs/intent/modules/fol/types/index.d.ts +43 -0
- package/dist/cjs/intent/modules/fol/types/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/types/index.js +3 -0
- package/dist/cjs/intent/modules/fol/types/index.js.map +1 -0
- package/dist/cjs/intent/modules/mcp/index.d.ts +12 -0
- package/dist/cjs/intent/modules/mcp/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/mcp/index.js +65 -0
- package/dist/cjs/intent/modules/mcp/index.js.map +1 -0
- package/dist/cjs/intent/modules/mcp/tool.d.ts +8 -0
- package/dist/cjs/intent/modules/mcp/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/mcp/tool.js +15 -0
- package/dist/cjs/intent/modules/mcp/tool.js.map +1 -0
- package/dist/cjs/middleware/auth/base.d.ts +5 -0
- package/dist/cjs/middleware/auth/base.d.ts.map +1 -0
- package/dist/cjs/middleware/auth/base.js +13 -0
- package/dist/cjs/middleware/auth/base.js.map +1 -0
- package/dist/cjs/middlewares/auth/base.d.ts +5 -0
- package/dist/cjs/middlewares/auth/base.d.ts.map +1 -0
- package/dist/cjs/middlewares/auth/base.js +13 -0
- package/dist/cjs/middlewares/auth/base.js.map +1 -0
- package/dist/cjs/middlewares/error.middleware.d.ts +6 -0
- package/dist/cjs/middlewares/error.middleware.d.ts.map +1 -0
- package/dist/cjs/middlewares/error.middleware.js +17 -0
- package/dist/cjs/middlewares/error.middleware.js.map +1 -0
- package/dist/cjs/models/BaseModel.d.ts +25 -0
- package/dist/cjs/models/BaseModel.d.ts.map +1 -0
- package/dist/cjs/models/BaseModel.js +7 -0
- package/dist/cjs/models/BaseModel.js.map +1 -0
- package/dist/cjs/models/base.d.ts +24 -0
- package/dist/cjs/models/base.d.ts.map +1 -0
- package/dist/cjs/models/base.js +7 -0
- package/dist/cjs/models/base.js.map +1 -0
- package/dist/cjs/models/gemini.d.ts +16 -0
- package/dist/cjs/models/gemini.d.ts.map +1 -0
- package/dist/cjs/models/gemini.js +107 -0
- package/dist/cjs/models/gemini.js.map +1 -0
- package/dist/cjs/models/openai.d.ts +16 -0
- package/dist/cjs/models/openai.d.ts.map +1 -0
- package/dist/cjs/models/openai.js +113 -0
- package/dist/cjs/models/openai.js.map +1 -0
- package/dist/cjs/modules/a2a/a2a.module.d.ts +71 -0
- package/dist/cjs/modules/a2a/a2a.module.d.ts.map +1 -0
- package/dist/cjs/modules/a2a/a2a.module.js +195 -0
- package/dist/cjs/modules/a2a/a2a.module.js.map +1 -0
- package/dist/cjs/modules/a2a/a2a.tool.d.ts +13 -0
- package/dist/cjs/modules/a2a/a2a.tool.d.ts.map +1 -0
- package/dist/cjs/modules/a2a/a2a.tool.js +21 -0
- package/dist/cjs/modules/a2a/a2a.tool.js.map +1 -0
- package/dist/cjs/modules/fol/fol.module.d.ts +31 -0
- package/dist/cjs/modules/fol/fol.module.d.ts.map +1 -0
- package/dist/cjs/modules/fol/fol.module.js +180 -0
- package/dist/cjs/modules/fol/fol.module.js.map +1 -0
- package/dist/cjs/modules/fol/store/base.d.ts +9 -0
- package/dist/cjs/modules/fol/store/base.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/base.js +7 -0
- package/dist/cjs/modules/fol/store/base.js.map +1 -0
- package/dist/cjs/modules/fol/store/index.d.ts +3 -0
- package/dist/cjs/modules/fol/store/index.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/index.js +8 -0
- package/dist/cjs/modules/fol/store/index.js.map +1 -0
- package/dist/cjs/modules/fol/store/local.d.ts +25 -0
- package/dist/cjs/modules/fol/store/local.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/local.js +221 -0
- package/dist/cjs/modules/fol/store/local.js.map +1 -0
- package/dist/cjs/modules/index.d.ts +6 -0
- package/dist/cjs/modules/index.d.ts.map +1 -0
- package/dist/cjs/modules/index.js +14 -0
- package/dist/cjs/modules/index.js.map +1 -0
- package/dist/cjs/modules/mcp/mcp.module.d.ts +65 -0
- package/dist/cjs/modules/mcp/mcp.module.d.ts.map +1 -0
- package/dist/cjs/modules/mcp/mcp.module.js +118 -0
- package/dist/cjs/modules/mcp/mcp.module.js.map +1 -0
- package/dist/cjs/modules/mcp/mcp.tool.d.ts +13 -0
- package/dist/cjs/modules/mcp/mcp.tool.d.ts.map +1 -0
- package/dist/cjs/modules/mcp/mcp.tool.js +22 -0
- package/dist/cjs/modules/mcp/mcp.tool.js.map +1 -0
- package/dist/cjs/modules/memory/inmemory.d.ts +14 -0
- package/dist/cjs/modules/memory/inmemory.d.ts.map +1 -0
- package/dist/cjs/modules/memory/inmemory.js +27 -0
- package/dist/cjs/modules/memory/inmemory.js.map +1 -0
- package/dist/cjs/modules/memory/memory.module.d.ts +65 -0
- package/dist/cjs/modules/memory/memory.module.d.ts.map +1 -0
- package/dist/cjs/modules/memory/memory.module.js +50 -0
- package/dist/cjs/modules/memory/memory.module.js.map +1 -0
- package/dist/cjs/modules/models/gemini.d.ts +16 -0
- package/dist/cjs/modules/models/gemini.d.ts.map +1 -0
- package/dist/cjs/modules/models/gemini.js +108 -0
- package/dist/cjs/modules/models/gemini.js.map +1 -0
- package/dist/cjs/modules/models/model.module.d.ts +102 -0
- package/dist/cjs/modules/models/model.module.d.ts.map +1 -0
- package/dist/cjs/modules/models/model.module.js +80 -0
- package/dist/cjs/modules/models/model.module.js.map +1 -0
- package/dist/cjs/modules/models/openai.d.ts +16 -0
- package/dist/cjs/modules/models/openai.d.ts.map +1 -0
- package/dist/cjs/modules/models/openai.js +114 -0
- package/dist/cjs/modules/models/openai.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/router/a2a/executor.d.ts +11 -0
- package/dist/cjs/router/a2a/executor.d.ts.map +1 -0
- package/dist/cjs/router/a2a/executor.js +96 -0
- package/dist/cjs/router/a2a/executor.js.map +1 -0
- package/dist/cjs/router/a2a/requestHandler.d.ts +9 -0
- package/dist/cjs/router/a2a/requestHandler.d.ts.map +1 -0
- package/dist/cjs/router/a2a/requestHandler.js +20 -0
- package/dist/cjs/router/a2a/requestHandler.js.map +1 -0
- package/dist/cjs/router/a2a/router.d.ts +12 -0
- package/dist/cjs/router/a2a/router.d.ts.map +1 -0
- package/dist/cjs/router/a2a/router.js +99 -0
- package/dist/cjs/router/a2a/router.js.map +1 -0
- package/dist/cjs/routes/a2a.routes.d.ts +12 -0
- package/dist/cjs/routes/a2a.routes.d.ts.map +1 -0
- package/dist/cjs/routes/a2a.routes.js +29 -0
- package/dist/cjs/routes/a2a.routes.js.map +1 -0
- package/dist/cjs/routes/api/models.routes.d.ts +4 -0
- package/dist/cjs/routes/api/models.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api/models.routes.js +14 -0
- package/dist/cjs/routes/api/models.routes.js.map +1 -0
- package/dist/cjs/routes/api/sessions.routes.d.ts +4 -0
- package/dist/cjs/routes/api/sessions.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api/sessions.routes.js +14 -0
- package/dist/cjs/routes/api/sessions.routes.js.map +1 -0
- package/dist/cjs/routes/api.routes.d.ts +4 -0
- package/dist/cjs/routes/api.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api.routes.js +16 -0
- package/dist/cjs/routes/api.routes.js.map +1 -0
- package/dist/cjs/routes/index.d.ts +5 -0
- package/dist/cjs/routes/index.d.ts.map +1 -0
- package/dist/cjs/routes/index.js +10 -0
- package/dist/cjs/routes/index.js.map +1 -0
- package/dist/cjs/routes/query.routes.d.ts +4 -0
- package/dist/cjs/routes/query.routes.d.ts.map +1 -0
- package/dist/cjs/routes/query.routes.js +15 -0
- package/dist/cjs/routes/query.routes.js.map +1 -0
- package/dist/cjs/services/a2a.service.d.ts +15 -0
- package/dist/cjs/services/a2a.service.d.ts.map +1 -0
- package/dist/cjs/services/a2a.service.js +93 -0
- package/dist/cjs/services/a2a.service.js.map +1 -0
- package/dist/cjs/services/query.service.d.ts +57 -0
- package/dist/cjs/services/query.service.d.ts.map +1 -0
- package/dist/cjs/services/query.service.js +158 -0
- package/dist/cjs/services/query.service.js.map +1 -0
- package/dist/cjs/session/BaseSession.d.ts +21 -0
- package/dist/cjs/session/BaseSession.d.ts.map +1 -0
- package/dist/cjs/session/BaseSession.js +13 -0
- package/dist/cjs/session/BaseSession.js.map +1 -0
- package/dist/cjs/types/fol.d.ts +38 -0
- package/dist/cjs/types/fol.d.ts.map +1 -0
- package/dist/cjs/types/fol.js +3 -0
- package/dist/cjs/types/fol.js.map +1 -0
- package/dist/cjs/types/index.d.ts +44 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/mcp.d.ts +5 -0
- package/dist/cjs/types/mcp.d.ts.map +1 -0
- package/dist/cjs/types/mcp.js +3 -0
- package/dist/cjs/types/mcp.js.map +1 -0
- package/dist/cjs/types/memory.d.ts +73 -0
- package/dist/cjs/types/memory.d.ts.map +1 -0
- package/dist/cjs/types/memory.js +16 -0
- package/dist/cjs/types/memory.js.map +1 -0
- package/dist/cjs/types/tool.d.ts +87 -0
- package/dist/cjs/types/tool.d.ts.map +1 -0
- package/dist/cjs/types/tool.js +14 -0
- package/dist/cjs/types/tool.js.map +1 -0
- package/dist/cjs/utils/logger.d.ts +13 -0
- package/dist/cjs/utils/logger.d.ts.map +1 -0
- package/dist/cjs/utils/logger.js +39 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/esm/ainagent.d.ts +15 -0
- package/dist/esm/ainagent.d.ts.map +1 -0
- package/dist/esm/ainagent.js +61 -0
- package/dist/esm/ainagent.js.map +1 -0
- package/dist/esm/app.d.ts +102 -0
- package/dist/esm/app.d.ts.map +1 -0
- package/dist/esm/app.js +163 -0
- package/dist/esm/app.js.map +1 -0
- package/dist/esm/controllers/a2a.controller.d.ts +14 -0
- package/dist/esm/controllers/a2a.controller.d.ts.map +1 -0
- package/dist/esm/controllers/a2a.controller.js +94 -0
- package/dist/esm/controllers/a2a.controller.js.map +1 -0
- package/dist/esm/controllers/api/model.api.controller.d.ts +8 -0
- package/dist/esm/controllers/api/model.api.controller.d.ts.map +1 -0
- package/dist/esm/controllers/api/model.api.controller.js +15 -0
- package/dist/esm/controllers/api/model.api.controller.js.map +1 -0
- package/dist/esm/controllers/api/session.api.controller.d.ts +8 -0
- package/dist/esm/controllers/api/session.api.controller.d.ts.map +1 -0
- package/dist/esm/controllers/api/session.api.controller.js +17 -0
- package/dist/esm/controllers/api/session.api.controller.js.map +1 -0
- package/dist/esm/controllers/query.controller.d.ts +8 -0
- package/dist/esm/controllers/query.controller.d.ts.map +1 -0
- package/dist/esm/controllers/query.controller.js +16 -0
- package/dist/esm/controllers/query.controller.js.map +1 -0
- package/dist/esm/intent/analyzer.d.ts +24 -0
- package/dist/esm/intent/analyzer.d.ts.map +1 -0
- package/dist/esm/intent/analyzer.js +150 -0
- package/dist/esm/intent/analyzer.js.map +1 -0
- package/dist/esm/intent/modules/a2a/index.d.ts +12 -0
- package/dist/esm/intent/modules/a2a/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/a2a/index.js +132 -0
- package/dist/esm/intent/modules/a2a/index.js.map +1 -0
- package/dist/esm/intent/modules/a2a/tool.d.ts +8 -0
- package/dist/esm/intent/modules/a2a/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/a2a/tool.js +10 -0
- package/dist/esm/intent/modules/a2a/tool.js.map +1 -0
- package/dist/esm/intent/modules/common/tool.d.ts +10 -0
- package/dist/esm/intent/modules/common/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/common/tool.js +14 -0
- package/dist/esm/intent/modules/common/tool.js.map +1 -0
- package/dist/esm/intent/modules/common/types.d.ts +5 -0
- package/dist/esm/intent/modules/common/types.d.ts.map +1 -0
- package/dist/esm/intent/modules/common/types.js +6 -0
- package/dist/esm/intent/modules/common/types.js.map +1 -0
- package/dist/esm/intent/modules/fol/client/folClient.d.ts +31 -0
- package/dist/esm/intent/modules/fol/client/folClient.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/client/folClient.js +178 -0
- package/dist/esm/intent/modules/fol/client/folClient.js.map +1 -0
- package/dist/esm/intent/modules/fol/index.d.ts +4 -0
- package/dist/esm/intent/modules/fol/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/index.js +6 -0
- package/dist/esm/intent/modules/fol/index.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/base.d.ts +9 -0
- package/dist/esm/intent/modules/fol/store/base.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/base.js +3 -0
- package/dist/esm/intent/modules/fol/store/base.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/index.d.ts +5 -0
- package/dist/esm/intent/modules/fol/store/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/index.js +5 -0
- package/dist/esm/intent/modules/fol/store/index.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/local.d.ts +25 -0
- package/dist/esm/intent/modules/fol/store/local.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/local.js +214 -0
- package/dist/esm/intent/modules/fol/store/local.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/mongo.d.ts +4 -0
- package/dist/esm/intent/modules/fol/store/mongo.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/mongo.js +5 -0
- package/dist/esm/intent/modules/fol/store/mongo.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/postgresql.d.ts +4 -0
- package/dist/esm/intent/modules/fol/store/postgresql.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/postgresql.js +5 -0
- package/dist/esm/intent/modules/fol/store/postgresql.js.map +1 -0
- package/dist/esm/intent/modules/fol/types/index.d.ts +43 -0
- package/dist/esm/intent/modules/fol/types/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/types/index.js +2 -0
- package/dist/esm/intent/modules/fol/types/index.js.map +1 -0
- package/dist/esm/intent/modules/mcp/index.d.ts +12 -0
- package/dist/esm/intent/modules/mcp/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/mcp/index.js +61 -0
- package/dist/esm/intent/modules/mcp/index.js.map +1 -0
- package/dist/esm/intent/modules/mcp/tool.d.ts +8 -0
- package/dist/esm/intent/modules/mcp/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/mcp/tool.js +11 -0
- package/dist/esm/intent/modules/mcp/tool.js.map +1 -0
- package/dist/esm/middleware/auth/base.d.ts +5 -0
- package/dist/esm/middleware/auth/base.d.ts.map +1 -0
- package/dist/esm/middleware/auth/base.js +9 -0
- package/dist/esm/middleware/auth/base.js.map +1 -0
- package/dist/esm/middlewares/auth/base.d.ts +5 -0
- package/dist/esm/middlewares/auth/base.d.ts.map +1 -0
- package/dist/esm/middlewares/auth/base.js +9 -0
- package/dist/esm/middlewares/auth/base.js.map +1 -0
- package/dist/esm/middlewares/error.middleware.d.ts +6 -0
- package/dist/esm/middlewares/error.middleware.d.ts.map +1 -0
- package/dist/esm/middlewares/error.middleware.js +13 -0
- package/dist/esm/middlewares/error.middleware.js.map +1 -0
- package/dist/esm/models/BaseModel.d.ts +25 -0
- package/dist/esm/models/BaseModel.d.ts.map +1 -0
- package/dist/esm/models/BaseModel.js +3 -0
- package/dist/esm/models/BaseModel.js.map +1 -0
- package/dist/esm/models/base.d.ts +24 -0
- package/dist/esm/models/base.d.ts.map +1 -0
- package/dist/esm/models/base.js +3 -0
- package/dist/esm/models/base.js.map +1 -0
- package/dist/esm/models/gemini.d.ts +16 -0
- package/dist/esm/models/gemini.d.ts.map +1 -0
- package/dist/esm/models/gemini.js +104 -0
- package/dist/esm/models/gemini.js.map +1 -0
- package/dist/esm/models/openai.d.ts +16 -0
- package/dist/esm/models/openai.d.ts.map +1 -0
- package/dist/esm/models/openai.js +110 -0
- package/dist/esm/models/openai.js.map +1 -0
- package/dist/esm/modules/a2a/a2a.module.d.ts +71 -0
- package/dist/esm/modules/a2a/a2a.module.d.ts.map +1 -0
- package/dist/esm/modules/a2a/a2a.module.js +191 -0
- package/dist/esm/modules/a2a/a2a.module.js.map +1 -0
- package/dist/esm/modules/a2a/a2a.tool.d.ts +13 -0
- package/dist/esm/modules/a2a/a2a.tool.d.ts.map +1 -0
- package/dist/esm/modules/a2a/a2a.tool.js +17 -0
- package/dist/esm/modules/a2a/a2a.tool.js.map +1 -0
- package/dist/esm/modules/fol/fol.module.d.ts +31 -0
- package/dist/esm/modules/fol/fol.module.d.ts.map +1 -0
- package/dist/esm/modules/fol/fol.module.js +176 -0
- package/dist/esm/modules/fol/fol.module.js.map +1 -0
- package/dist/esm/modules/fol/store/base.d.ts +9 -0
- package/dist/esm/modules/fol/store/base.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/base.js +3 -0
- package/dist/esm/modules/fol/store/base.js.map +1 -0
- package/dist/esm/modules/fol/store/index.d.ts +3 -0
- package/dist/esm/modules/fol/store/index.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/index.js +3 -0
- package/dist/esm/modules/fol/store/index.js.map +1 -0
- package/dist/esm/modules/fol/store/local.d.ts +25 -0
- package/dist/esm/modules/fol/store/local.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/local.js +214 -0
- package/dist/esm/modules/fol/store/local.js.map +1 -0
- package/dist/esm/modules/index.d.ts +6 -0
- package/dist/esm/modules/index.d.ts.map +1 -0
- package/dist/esm/modules/index.js +6 -0
- package/dist/esm/modules/index.js.map +1 -0
- package/dist/esm/modules/mcp/mcp.module.d.ts +65 -0
- package/dist/esm/modules/mcp/mcp.module.d.ts.map +1 -0
- package/dist/esm/modules/mcp/mcp.module.js +114 -0
- package/dist/esm/modules/mcp/mcp.module.js.map +1 -0
- package/dist/esm/modules/mcp/mcp.tool.d.ts +13 -0
- package/dist/esm/modules/mcp/mcp.tool.d.ts.map +1 -0
- package/dist/esm/modules/mcp/mcp.tool.js +18 -0
- package/dist/esm/modules/mcp/mcp.tool.js.map +1 -0
- package/dist/esm/modules/memory/inmemory.d.ts +14 -0
- package/dist/esm/modules/memory/inmemory.d.ts.map +1 -0
- package/dist/esm/modules/memory/inmemory.js +23 -0
- package/dist/esm/modules/memory/inmemory.js.map +1 -0
- package/dist/esm/modules/memory/memory.module.d.ts +65 -0
- package/dist/esm/modules/memory/memory.module.d.ts.map +1 -0
- package/dist/esm/modules/memory/memory.module.js +45 -0
- package/dist/esm/modules/memory/memory.module.js.map +1 -0
- package/dist/esm/modules/models/gemini.d.ts +16 -0
- package/dist/esm/modules/models/gemini.d.ts.map +1 -0
- package/dist/esm/modules/models/gemini.js +104 -0
- package/dist/esm/modules/models/gemini.js.map +1 -0
- package/dist/esm/modules/models/model.module.d.ts +102 -0
- package/dist/esm/modules/models/model.module.d.ts.map +1 -0
- package/dist/esm/modules/models/model.module.js +75 -0
- package/dist/esm/modules/models/model.module.js.map +1 -0
- package/dist/esm/modules/models/openai.d.ts +16 -0
- package/dist/esm/modules/models/openai.d.ts.map +1 -0
- package/dist/esm/modules/models/openai.js +110 -0
- package/dist/esm/modules/models/openai.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/router/a2a/executor.d.ts +11 -0
- package/dist/esm/router/a2a/executor.d.ts.map +1 -0
- package/dist/esm/router/a2a/executor.js +92 -0
- package/dist/esm/router/a2a/executor.js.map +1 -0
- package/dist/esm/router/a2a/requestHandler.d.ts +9 -0
- package/dist/esm/router/a2a/requestHandler.d.ts.map +1 -0
- package/dist/esm/router/a2a/requestHandler.js +16 -0
- package/dist/esm/router/a2a/requestHandler.js.map +1 -0
- package/dist/esm/router/a2a/router.d.ts +12 -0
- package/dist/esm/router/a2a/router.d.ts.map +1 -0
- package/dist/esm/router/a2a/router.js +95 -0
- package/dist/esm/router/a2a/router.js.map +1 -0
- package/dist/esm/routes/a2a.routes.d.ts +12 -0
- package/dist/esm/routes/a2a.routes.d.ts.map +1 -0
- package/dist/esm/routes/a2a.routes.js +25 -0
- package/dist/esm/routes/a2a.routes.js.map +1 -0
- package/dist/esm/routes/api/models.routes.d.ts +4 -0
- package/dist/esm/routes/api/models.routes.d.ts.map +1 -0
- package/dist/esm/routes/api/models.routes.js +10 -0
- package/dist/esm/routes/api/models.routes.js.map +1 -0
- package/dist/esm/routes/api/sessions.routes.d.ts +4 -0
- package/dist/esm/routes/api/sessions.routes.d.ts.map +1 -0
- package/dist/esm/routes/api/sessions.routes.js +10 -0
- package/dist/esm/routes/api/sessions.routes.js.map +1 -0
- package/dist/esm/routes/api.routes.d.ts +4 -0
- package/dist/esm/routes/api.routes.d.ts.map +1 -0
- package/dist/esm/routes/api.routes.js +12 -0
- package/dist/esm/routes/api.routes.js.map +1 -0
- package/dist/esm/routes/index.d.ts +5 -0
- package/dist/esm/routes/index.d.ts.map +1 -0
- package/dist/esm/routes/index.js +5 -0
- package/dist/esm/routes/index.js.map +1 -0
- package/dist/esm/routes/query.routes.d.ts +4 -0
- package/dist/esm/routes/query.routes.d.ts.map +1 -0
- package/dist/esm/routes/query.routes.js +11 -0
- package/dist/esm/routes/query.routes.js.map +1 -0
- package/dist/esm/services/a2a.service.d.ts +15 -0
- package/dist/esm/services/a2a.service.d.ts.map +1 -0
- package/dist/esm/services/a2a.service.js +89 -0
- package/dist/esm/services/a2a.service.js.map +1 -0
- package/dist/esm/services/query.service.d.ts +57 -0
- package/dist/esm/services/query.service.d.ts.map +1 -0
- package/dist/esm/services/query.service.js +154 -0
- package/dist/esm/services/query.service.js.map +1 -0
- package/dist/esm/session/BaseSession.d.ts +21 -0
- package/dist/esm/session/BaseSession.d.ts.map +1 -0
- package/dist/esm/session/BaseSession.js +9 -0
- package/dist/esm/session/BaseSession.js.map +1 -0
- package/dist/esm/types/fol.d.ts +38 -0
- package/dist/esm/types/fol.d.ts.map +1 -0
- package/dist/esm/types/fol.js +2 -0
- package/dist/esm/types/fol.js.map +1 -0
- package/dist/esm/types/index.d.ts +44 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/mcp.d.ts +5 -0
- package/dist/esm/types/mcp.d.ts.map +1 -0
- package/dist/esm/types/mcp.js +2 -0
- package/dist/esm/types/mcp.js.map +1 -0
- package/dist/esm/types/memory.d.ts +73 -0
- package/dist/esm/types/memory.d.ts.map +1 -0
- package/dist/esm/types/memory.js +13 -0
- package/dist/esm/types/memory.js.map +1 -0
- package/dist/esm/types/tool.d.ts +87 -0
- package/dist/esm/types/tool.d.ts.map +1 -0
- package/dist/esm/types/tool.js +11 -0
- package/dist/esm/types/tool.js.map +1 -0
- package/dist/esm/utils/logger.d.ts +13 -0
- package/dist/esm/utils/logger.d.ts.map +1 -0
- package/dist/esm/utils/logger.js +32 -0
- package/dist/esm/utils/logger.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.loggers = exports.getLogger = exports.logger = void 0;
|
|
7
|
+
const winston_1 = __importDefault(require("winston"));
|
|
8
|
+
const { combine, timestamp, printf, colorize, errors } = winston_1.default.format;
|
|
9
|
+
const createLogger = (service) => {
|
|
10
|
+
const logger = winston_1.default.createLogger({
|
|
11
|
+
level: process.env.LOG_LEVEL || "info",
|
|
12
|
+
format: combine(errors({ stack: true }), colorize(), timestamp({ format: "HH:mm:ss" }), printf(({ level, message, timestamp, service, stack, ...meta }) => {
|
|
13
|
+
const metaStr = Object.keys(meta).length
|
|
14
|
+
? ` | ${JSON.stringify(meta)}`
|
|
15
|
+
: "";
|
|
16
|
+
const errorStack = stack ? `\n${stack}` : "";
|
|
17
|
+
return `${timestamp} [${service}] ${level}: ${message}${metaStr}${errorStack}`;
|
|
18
|
+
})),
|
|
19
|
+
defaultMeta: { service },
|
|
20
|
+
transports: [new winston_1.default.transports.Console()],
|
|
21
|
+
});
|
|
22
|
+
return logger;
|
|
23
|
+
};
|
|
24
|
+
// Default logger instance
|
|
25
|
+
exports.logger = createLogger("ain-adk");
|
|
26
|
+
// Factory function for creating service-specific loggers
|
|
27
|
+
const getLogger = (service) => createLogger(service);
|
|
28
|
+
exports.getLogger = getLogger;
|
|
29
|
+
// Convenience methods for different components
|
|
30
|
+
exports.loggers = {
|
|
31
|
+
agent: (0, exports.getLogger)("AINAgent"),
|
|
32
|
+
intent: (0, exports.getLogger)("Intent"),
|
|
33
|
+
mcp: (0, exports.getLogger)("MCPModule"),
|
|
34
|
+
a2a: (0, exports.getLogger)("A2AModule"),
|
|
35
|
+
model: (0, exports.getLogger)("Model"),
|
|
36
|
+
server: (0, exports.getLogger)("A2AServer"),
|
|
37
|
+
fol: (0, exports.getLogger)("FOL"),
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA8B;AAE9B,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,iBAAO,CAAC,MAAM,CAAC;AAExE,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE;IACxC,MAAM,MAAM,GAAG,iBAAO,CAAC,YAAY,CAAC;QACnC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM;QACtC,MAAM,EAAE,OAAO,CACd,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACvB,QAAQ,EAAE,EACV,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EACjC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;YACjE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;gBACvC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBAC9B,CAAC,CAAC,EAAE,CAAC;YACN,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,SAAS,KAAK,OAAO,KAAK,KAAK,KAAK,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,CAAC;QAChF,CAAC,CAAC,CACF;QACD,WAAW,EAAE,EAAE,OAAO,EAAE;QACxB,UAAU,EAAE,CAAC,IAAI,iBAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;KAC9C,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,0BAA0B;AACb,QAAA,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;AAE9C,yDAAyD;AAClD,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAAvD,QAAA,SAAS,aAA8C;AAEpE,+CAA+C;AAClC,QAAA,OAAO,GAAG;IACtB,KAAK,EAAE,IAAA,iBAAS,EAAC,UAAU,CAAC;IAC5B,MAAM,EAAE,IAAA,iBAAS,EAAC,QAAQ,CAAC;IAC3B,GAAG,EAAE,IAAA,iBAAS,EAAC,WAAW,CAAC;IAC3B,GAAG,EAAE,IAAA,iBAAS,EAAC,WAAW,CAAC;IAC3B,KAAK,EAAE,IAAA,iBAAS,EAAC,OAAO,CAAC;IACzB,MAAM,EAAE,IAAA,iBAAS,EAAC,WAAW,CAAC;IAC9B,GAAG,EAAE,IAAA,iBAAS,EAAC,KAAK,CAAC;CACZ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import express from "express";
|
|
2
|
+
import type { IntentAnalyzer } from "./intent/analyzer.js";
|
|
3
|
+
import type { AINAgentInfo } from "./types/index.js";
|
|
4
|
+
export declare class AINAgent {
|
|
5
|
+
app: express.Application;
|
|
6
|
+
info: AINAgentInfo;
|
|
7
|
+
private authScheme?;
|
|
8
|
+
private sessionManager?;
|
|
9
|
+
private intentAnalyzer;
|
|
10
|
+
private a2aRouter?;
|
|
11
|
+
constructor(intentAnalyzer: IntentAnalyzer, info: AINAgentInfo, url?: string);
|
|
12
|
+
private infoToCard;
|
|
13
|
+
start(port: number): void;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=ainagent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ainagent.d.ts","sourceRoot":"","sources":["../../src/ainagent.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAK3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,qBAAa,QAAQ;IACb,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;IACzB,IAAI,EAAE,YAAY,CAAC;IAG1B,OAAO,CAAC,UAAU,CAAC,CAAW;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAc;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,SAAS,CAAC,CAAY;gBAG7B,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,YAAY,EAClB,GAAG,CAAC,EAAE,MAAM;IAeb,OAAO,CAAC,UAAU;IAkBX,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAsChC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import cors from "cors";
|
|
2
|
+
import express from "express";
|
|
3
|
+
import { loggers } from "./utils/logger.js";
|
|
4
|
+
import { A2ARouter } from "./router/a2a/router.js";
|
|
5
|
+
export class AINAgent {
|
|
6
|
+
constructor(intentAnalyzer, info, url) {
|
|
7
|
+
this.app = express();
|
|
8
|
+
this.app.use(cors());
|
|
9
|
+
this.app.use(express.json());
|
|
10
|
+
this.intentAnalyzer = intentAnalyzer;
|
|
11
|
+
this.info = info;
|
|
12
|
+
if (url) {
|
|
13
|
+
// A2A Server enabled
|
|
14
|
+
const card = this.infoToCard(info, url);
|
|
15
|
+
this.a2aRouter = new A2ARouter(intentAnalyzer, card);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
infoToCard(info, url) {
|
|
19
|
+
const _url = new URL(url);
|
|
20
|
+
_url.pathname = "a2a";
|
|
21
|
+
return {
|
|
22
|
+
...info,
|
|
23
|
+
url: _url.toString(),
|
|
24
|
+
capabilities: {
|
|
25
|
+
streaming: true, // The new framework supports streaming
|
|
26
|
+
pushNotifications: false, // Assuming not implemented for this agent yet
|
|
27
|
+
stateTransitionHistory: true, // Agent uses history
|
|
28
|
+
},
|
|
29
|
+
defaultInputModes: ["text"],
|
|
30
|
+
defaultOutputModes: ["text", "task-status"], // task-status is a common output mode
|
|
31
|
+
skills: [],
|
|
32
|
+
supportsAuthenticatedExtendedCard: false,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
start(port) {
|
|
36
|
+
if (this.authScheme) {
|
|
37
|
+
this.app.use(this.authScheme.middleware());
|
|
38
|
+
}
|
|
39
|
+
this.app.get("/", async (_req, res) => {
|
|
40
|
+
const { name, description, version } = this.info;
|
|
41
|
+
res.status(200).send(`
|
|
42
|
+
⚡ AIN Agent: ${name} v${version}<br/>
|
|
43
|
+
${description}<br/><br/>
|
|
44
|
+
Agent status: Online and ready.
|
|
45
|
+
`.trim());
|
|
46
|
+
});
|
|
47
|
+
this.app.post("/query", async (req, res) => {
|
|
48
|
+
const { message, sessionId } = req.body;
|
|
49
|
+
// load session memory
|
|
50
|
+
const sessionHistory = (await this.sessionManager?.getSessionHistory(sessionId)) || {};
|
|
51
|
+
// TODO: Handle query type
|
|
52
|
+
const response = await this.intentAnalyzer?.handleQueryWithSession(message, sessionId, sessionHistory);
|
|
53
|
+
res.json(response);
|
|
54
|
+
});
|
|
55
|
+
this.a2aRouter?.setupRoutes(this.app);
|
|
56
|
+
this.app.listen(port, () => {
|
|
57
|
+
loggers.agent.info(`AINAgent is running on port ${port}`);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=ainagent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ainagent.js","sourceRoot":"","sources":["../../src/ainagent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { AgentCard } from "@a2a-js/sdk";
|
|
2
|
+
import express from "express";
|
|
3
|
+
import type { BaseAuth } from "./middlewares/auth/base.js";
|
|
4
|
+
import type { FOLModule } from "./modules/fol/fol.module.js";
|
|
5
|
+
import type { A2AModule, MCPModule, MemoryModule, ModelModule } from "./modules/index.js";
|
|
6
|
+
import type { AinAgentManifest } from "./types/index.js";
|
|
7
|
+
/**
|
|
8
|
+
* Main class for AI Network Agent Development Kit (AIN-ADK).
|
|
9
|
+
*
|
|
10
|
+
* AINAgent orchestrates all modules and provides an Express server for handling
|
|
11
|
+
* agent interactions through both standard query endpoints and A2A protocol endpoints.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const manifest = {
|
|
16
|
+
* name: "MyAgent",
|
|
17
|
+
* description: "An example AI agent",
|
|
18
|
+
* version: "1.0.0"
|
|
19
|
+
* };
|
|
20
|
+
*
|
|
21
|
+
* const agent = new AINAgent(manifest, {
|
|
22
|
+
* modelModule: new ModelModule(),
|
|
23
|
+
* a2aModule: new A2AModule(),
|
|
24
|
+
* mcpModule: new MCPModule()
|
|
25
|
+
* });
|
|
26
|
+
*
|
|
27
|
+
* agent.start(3000);
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare class AINAgent {
|
|
31
|
+
/** Express application instance */
|
|
32
|
+
app: express.Application;
|
|
33
|
+
/** Agent manifest containing metadata and configuration */
|
|
34
|
+
manifest: AinAgentManifest;
|
|
35
|
+
/** Modules */
|
|
36
|
+
modelModule: ModelModule;
|
|
37
|
+
a2aModule?: A2AModule;
|
|
38
|
+
mcpModule?: MCPModule;
|
|
39
|
+
memoryModule?: MemoryModule;
|
|
40
|
+
folModule?: FOLModule;
|
|
41
|
+
/** Optional authentication scheme for securing endpoints */
|
|
42
|
+
authScheme?: BaseAuth;
|
|
43
|
+
/**
|
|
44
|
+
* Creates a new AINAgent instance.
|
|
45
|
+
*
|
|
46
|
+
* @param manifest - Agent manifest containing name, description, version, and optional URL
|
|
47
|
+
* @param modules - Required and optional modules for the agent
|
|
48
|
+
* @param modules.modelModule - Required module for AI model integrations
|
|
49
|
+
* @param modules.a2aModule - Optional module for A2A protocol support
|
|
50
|
+
* @param modules.mcpModule - Optional module for MCP server connections
|
|
51
|
+
* @param modules.memoryModule - Optional module for memory management
|
|
52
|
+
* @param modules.folModule - Optional module for fol management
|
|
53
|
+
* @param authScheme - Optional authentication middleware for securing endpoints
|
|
54
|
+
*/
|
|
55
|
+
constructor(manifest: AinAgentManifest, modules: {
|
|
56
|
+
modelModule: ModelModule;
|
|
57
|
+
a2aModule?: A2AModule;
|
|
58
|
+
mcpModule?: MCPModule;
|
|
59
|
+
memoryModule?: MemoryModule;
|
|
60
|
+
folModule?: FOLModule;
|
|
61
|
+
}, authScheme?: BaseAuth);
|
|
62
|
+
/**
|
|
63
|
+
* Initializes Express middlewares for security, CORS, and body parsing.
|
|
64
|
+
* Also applies authentication middleware if configured.
|
|
65
|
+
*/
|
|
66
|
+
private initializeMiddlewares;
|
|
67
|
+
/**
|
|
68
|
+
* Validates if a string is a valid HTTP or HTTPS URL.
|
|
69
|
+
*
|
|
70
|
+
* @param urlString - The URL string to validate
|
|
71
|
+
* @returns true if the URL is valid HTTP/HTTPS, false otherwise
|
|
72
|
+
*/
|
|
73
|
+
private isValidUrl;
|
|
74
|
+
/**
|
|
75
|
+
* Generates an A2A protocol agent card for discovery.
|
|
76
|
+
*
|
|
77
|
+
* The agent card contains metadata about the agent's capabilities,
|
|
78
|
+
* supported input/output modes, and connection information.
|
|
79
|
+
*
|
|
80
|
+
* @returns AgentCard object with agent metadata and capabilities
|
|
81
|
+
* @throws Error if manifest URL is invalid or missing
|
|
82
|
+
*/
|
|
83
|
+
generateAgentCard: () => AgentCard;
|
|
84
|
+
/**
|
|
85
|
+
* Initializes all HTTP routes including health check, agent discovery,
|
|
86
|
+
* query endpoints, and optional A2A endpoints.
|
|
87
|
+
*
|
|
88
|
+
* Routes initialized:
|
|
89
|
+
* - GET / - Health check endpoint
|
|
90
|
+
* - GET /.well-known/agent.json - Agent card discovery endpoint
|
|
91
|
+
* - /query/* - Query processing endpoints
|
|
92
|
+
* - /a2a/* - A2A protocol endpoints (only if valid URL is configured)
|
|
93
|
+
*/
|
|
94
|
+
private initializeRoutes;
|
|
95
|
+
/**
|
|
96
|
+
* Starts the Express server on the specified port.
|
|
97
|
+
*
|
|
98
|
+
* @param port - The port number to listen on
|
|
99
|
+
*/
|
|
100
|
+
start(port: number): void;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,OAA0B,MAAM,SAAS,CAAC;AAGjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,QAAQ;IACpB,mCAAmC;IAC5B,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;IAEhC,2DAA2D;IACpD,QAAQ,EAAE,gBAAgB,CAAC;IAElC,cAAc;IACP,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,SAAS,CAAC,EAAE,SAAS,CAAC;IAE7B,4DAA4D;IACrD,UAAU,CAAC,EAAE,QAAQ,CAAC;IAE7B;;;;;;;;;;;OAWG;gBAEF,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE;QACR,WAAW,EAAE,WAAW,CAAC;QACzB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,SAAS,CAAC,EAAE,SAAS,CAAC;KACtB,EACD,UAAU,CAAC,EAAE,QAAQ;IAqBtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAalB;;;;;;;;OAQG;IACI,iBAAiB,QAAO,SAAS,CAmBtC;IAEF;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB,CAyBtB;IAEF;;;;OAIG;IACI,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAKhC"}
|
package/dist/esm/app.js
ADDED
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import cors from "cors";
|
|
2
|
+
import express from "express";
|
|
3
|
+
import helmet from "helmet";
|
|
4
|
+
import { StatusCodes } from "http-status-codes";
|
|
5
|
+
import { loggers } from "./utils/logger.js";
|
|
6
|
+
import { errorMiddleware } from "./middlewares/error.middleware.js";
|
|
7
|
+
import { createA2ARouter } from "./routes/a2a.routes.js";
|
|
8
|
+
import { createQueryRouter } from "./routes/query.routes.js";
|
|
9
|
+
/**
|
|
10
|
+
* Main class for AI Network Agent Development Kit (AIN-ADK).
|
|
11
|
+
*
|
|
12
|
+
* AINAgent orchestrates all modules and provides an Express server for handling
|
|
13
|
+
* agent interactions through both standard query endpoints and A2A protocol endpoints.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const manifest = {
|
|
18
|
+
* name: "MyAgent",
|
|
19
|
+
* description: "An example AI agent",
|
|
20
|
+
* version: "1.0.0"
|
|
21
|
+
* };
|
|
22
|
+
*
|
|
23
|
+
* const agent = new AINAgent(manifest, {
|
|
24
|
+
* modelModule: new ModelModule(),
|
|
25
|
+
* a2aModule: new A2AModule(),
|
|
26
|
+
* mcpModule: new MCPModule()
|
|
27
|
+
* });
|
|
28
|
+
*
|
|
29
|
+
* agent.start(3000);
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export class AINAgent {
|
|
33
|
+
/**
|
|
34
|
+
* Creates a new AINAgent instance.
|
|
35
|
+
*
|
|
36
|
+
* @param manifest - Agent manifest containing name, description, version, and optional URL
|
|
37
|
+
* @param modules - Required and optional modules for the agent
|
|
38
|
+
* @param modules.modelModule - Required module for AI model integrations
|
|
39
|
+
* @param modules.a2aModule - Optional module for A2A protocol support
|
|
40
|
+
* @param modules.mcpModule - Optional module for MCP server connections
|
|
41
|
+
* @param modules.memoryModule - Optional module for memory management
|
|
42
|
+
* @param modules.folModule - Optional module for fol management
|
|
43
|
+
* @param authScheme - Optional authentication middleware for securing endpoints
|
|
44
|
+
*/
|
|
45
|
+
constructor(manifest, modules, authScheme) {
|
|
46
|
+
/**
|
|
47
|
+
* Generates an A2A protocol agent card for discovery.
|
|
48
|
+
*
|
|
49
|
+
* The agent card contains metadata about the agent's capabilities,
|
|
50
|
+
* supported input/output modes, and connection information.
|
|
51
|
+
*
|
|
52
|
+
* @returns AgentCard object with agent metadata and capabilities
|
|
53
|
+
* @throws Error if manifest URL is invalid or missing
|
|
54
|
+
*/
|
|
55
|
+
this.generateAgentCard = () => {
|
|
56
|
+
const _url = new URL(this.manifest.url || "");
|
|
57
|
+
_url.pathname = "a2a";
|
|
58
|
+
return {
|
|
59
|
+
name: this.manifest.name,
|
|
60
|
+
description: this.manifest.description,
|
|
61
|
+
version: this.manifest.version,
|
|
62
|
+
url: _url.toString(),
|
|
63
|
+
capabilities: {
|
|
64
|
+
streaming: true, // The new framework supports streaming
|
|
65
|
+
pushNotifications: false, // Assuming not implemented for this agent yet
|
|
66
|
+
stateTransitionHistory: true, // Agent uses history
|
|
67
|
+
},
|
|
68
|
+
defaultInputModes: ["text"],
|
|
69
|
+
defaultOutputModes: ["text", "task-status"], // task-status is a common output mode
|
|
70
|
+
skills: [],
|
|
71
|
+
supportsAuthenticatedExtendedCard: false,
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Initializes all HTTP routes including health check, agent discovery,
|
|
76
|
+
* query endpoints, and optional A2A endpoints.
|
|
77
|
+
*
|
|
78
|
+
* Routes initialized:
|
|
79
|
+
* - GET / - Health check endpoint
|
|
80
|
+
* - GET /.well-known/agent.json - Agent card discovery endpoint
|
|
81
|
+
* - /query/* - Query processing endpoints
|
|
82
|
+
* - /a2a/* - A2A protocol endpoints (only if valid URL is configured)
|
|
83
|
+
*/
|
|
84
|
+
this.initializeRoutes = () => {
|
|
85
|
+
this.app.get("/", async (_, res) => {
|
|
86
|
+
const { name, description, version } = this.manifest;
|
|
87
|
+
res.status(200).send(`
|
|
88
|
+
⚡ AIN Agent: ${name} v${version}<br/>
|
|
89
|
+
${description}<br/><br/>
|
|
90
|
+
Agent status: Online and ready.
|
|
91
|
+
`.trim());
|
|
92
|
+
});
|
|
93
|
+
this.app.get("/.well-known/agent.json", async (_, res) => {
|
|
94
|
+
try {
|
|
95
|
+
const card = this.generateAgentCard();
|
|
96
|
+
res.json(card);
|
|
97
|
+
}
|
|
98
|
+
catch (_error) {
|
|
99
|
+
res.status(StatusCodes.NOT_FOUND).send("No agent card");
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
this.app.use(createQueryRouter(this));
|
|
103
|
+
if (this.isValidUrl(this.manifest.url)) {
|
|
104
|
+
this.app.use(createA2ARouter(this));
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
this.app = express();
|
|
108
|
+
// Set manifest
|
|
109
|
+
this.manifest = manifest;
|
|
110
|
+
// Set modules
|
|
111
|
+
this.modelModule = modules.modelModule;
|
|
112
|
+
this.a2aModule = modules.a2aModule;
|
|
113
|
+
this.mcpModule = modules.mcpModule;
|
|
114
|
+
this.memoryModule = modules.memoryModule;
|
|
115
|
+
this.folModule = modules.folModule;
|
|
116
|
+
this.authScheme = authScheme;
|
|
117
|
+
this.initializeMiddlewares();
|
|
118
|
+
this.initializeRoutes();
|
|
119
|
+
this.app.use(errorMiddleware);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Initializes Express middlewares for security, CORS, and body parsing.
|
|
123
|
+
* Also applies authentication middleware if configured.
|
|
124
|
+
*/
|
|
125
|
+
initializeMiddlewares() {
|
|
126
|
+
this.app.use(helmet());
|
|
127
|
+
this.app.use(cors());
|
|
128
|
+
this.app.use(express.json());
|
|
129
|
+
this.app.use(express.urlencoded({ extended: true }));
|
|
130
|
+
if (this.authScheme) {
|
|
131
|
+
this.app.use(this.authScheme.middleware());
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Validates if a string is a valid HTTP or HTTPS URL.
|
|
136
|
+
*
|
|
137
|
+
* @param urlString - The URL string to validate
|
|
138
|
+
* @returns true if the URL is valid HTTP/HTTPS, false otherwise
|
|
139
|
+
*/
|
|
140
|
+
isValidUrl(urlString) {
|
|
141
|
+
if (!urlString) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
try {
|
|
145
|
+
const url = new URL(urlString);
|
|
146
|
+
return url.protocol === "http:" || url.protocol === "https:";
|
|
147
|
+
}
|
|
148
|
+
catch (_error) {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Starts the Express server on the specified port.
|
|
154
|
+
*
|
|
155
|
+
* @param port - The port number to listen on
|
|
156
|
+
*/
|
|
157
|
+
start(port) {
|
|
158
|
+
this.app.listen(port, () => {
|
|
159
|
+
loggers.agent.info(`AINAgent is running on port ${port}`);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AgentCard, TaskStore } from "@a2a-js/sdk";
|
|
2
|
+
import type { Request, Response } from "express";
|
|
3
|
+
import type { A2AService } from "../services/a2a.service.js";
|
|
4
|
+
export declare class A2AController {
|
|
5
|
+
private jsonRpcTransportHandler;
|
|
6
|
+
constructor(a2aService: A2AService, taskStore: TaskStore, cardGenerator: () => AgentCard);
|
|
7
|
+
/**
|
|
8
|
+
* Handles the POST /a2a request.
|
|
9
|
+
*/
|
|
10
|
+
handleA2ARequest: (req: Request, res: Response) => Promise<void>;
|
|
11
|
+
private streamSse;
|
|
12
|
+
private handleError;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=a2a.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"a2a.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/a2a.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEX,SAAS,EAKT,SAAS,EACT,MAAM,aAAa,CAAC;AAOrB,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AA2B5D,qBAAa,aAAa;IACzB,OAAO,CAAC,uBAAuB,CAA0B;gBAGxD,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,MAAM,SAAS;IAW/B;;OAEG;IACI,gBAAgB,GAAU,KAAK,OAAO,EAAE,KAAK,QAAQ,mBAyB1D;YAEY,SAAS;IAuCvB,OAAO,CAAC,WAAW;CAoBnB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { A2AError, DefaultExecutionEventBusManager, DefaultRequestHandler, JsonRpcTransportHandler, } from "@a2a-js/sdk";
|
|
2
|
+
import { loggers } from "../utils/logger.js";
|
|
3
|
+
/**
|
|
4
|
+
* Handles the transport layer for A2A communication.
|
|
5
|
+
* It orchestrates the A2A-JS SDK components and manages the HTTP request/response lifecycle.
|
|
6
|
+
*/
|
|
7
|
+
class AINRequestHandler extends DefaultRequestHandler {
|
|
8
|
+
constructor(cardGenerator, taskStore, executor, eventBusManager = new DefaultExecutionEventBusManager()) {
|
|
9
|
+
const card = cardGenerator();
|
|
10
|
+
super(card, taskStore, executor, eventBusManager);
|
|
11
|
+
this.cardGenerator = cardGenerator;
|
|
12
|
+
}
|
|
13
|
+
async getAgentCard() {
|
|
14
|
+
return this.cardGenerator();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export class A2AController {
|
|
18
|
+
constructor(a2aService, taskStore, cardGenerator) {
|
|
19
|
+
/**
|
|
20
|
+
* Handles the POST /a2a request.
|
|
21
|
+
*/
|
|
22
|
+
this.handleA2ARequest = async (req, res) => {
|
|
23
|
+
try {
|
|
24
|
+
const rpcResponseOrStream = await this.jsonRpcTransportHandler.handle(req.body);
|
|
25
|
+
// Handle streaming responses (AsyncGenerator)
|
|
26
|
+
if (typeof rpcResponseOrStream?.[Symbol.asyncIterator] ===
|
|
27
|
+
"function") {
|
|
28
|
+
const stream = rpcResponseOrStream;
|
|
29
|
+
this.streamSse(req, res, stream);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
// Handle single JSON-RPC response
|
|
33
|
+
const rpcResponse = rpcResponseOrStream;
|
|
34
|
+
res.status(200).json(rpcResponse);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
this.handleError(req, res, error);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
// The controller is responsible for setting up the SDK components.
|
|
42
|
+
const requestHandler = new AINRequestHandler(cardGenerator, taskStore, a2aService);
|
|
43
|
+
this.jsonRpcTransportHandler = new JsonRpcTransportHandler(requestHandler);
|
|
44
|
+
}
|
|
45
|
+
async streamSse(req, res, stream) {
|
|
46
|
+
res.setHeader("Content-Type", "text/event-stream");
|
|
47
|
+
res.setHeader("Cache-Control", "no-cache");
|
|
48
|
+
res.setHeader("Connection", "keep-alive");
|
|
49
|
+
res.flushHeaders();
|
|
50
|
+
try {
|
|
51
|
+
for await (const event of stream) {
|
|
52
|
+
res.write(`id: ${Date.now()}\n`);
|
|
53
|
+
res.write(`data: ${JSON.stringify(event)}\n\n`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch (streamError) {
|
|
57
|
+
loggers.server.error(`Error during SSE streaming (request ${req.body?.id}):`, streamError);
|
|
58
|
+
const a2aError = streamError instanceof A2AError
|
|
59
|
+
? streamError
|
|
60
|
+
: A2AError.internalError("Streaming error");
|
|
61
|
+
const errorResponse = {
|
|
62
|
+
jsonrpc: "2.0",
|
|
63
|
+
id: req.body?.id || null,
|
|
64
|
+
error: a2aError.toJSONRPCError(),
|
|
65
|
+
};
|
|
66
|
+
res.write(`id: ${Date.now()}\n`);
|
|
67
|
+
res.write("event: error\n");
|
|
68
|
+
res.write(`data: ${JSON.stringify(errorResponse)}\n\n`);
|
|
69
|
+
}
|
|
70
|
+
finally {
|
|
71
|
+
if (!res.writableEnded) {
|
|
72
|
+
res.end();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
handleError(req, res, error) {
|
|
77
|
+
loggers.server.error("Unhandled error in AINAgent A2A POST handler:", error);
|
|
78
|
+
const a2aError = error instanceof A2AError
|
|
79
|
+
? error
|
|
80
|
+
: A2AError.internalError("General processing error");
|
|
81
|
+
const errorResponse = {
|
|
82
|
+
jsonrpc: "2.0",
|
|
83
|
+
id: req.body?.id || null,
|
|
84
|
+
error: a2aError.toJSONRPCError(),
|
|
85
|
+
};
|
|
86
|
+
if (!res.headersSent) {
|
|
87
|
+
res.status(500).json(errorResponse);
|
|
88
|
+
}
|
|
89
|
+
else if (!res.writableEnded) {
|
|
90
|
+
res.end();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=a2a.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"a2a.controller.js","sourceRoot":"","sources":["../../../src/controllers/a2a.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { NextFunction, Request, Response } from "express";
|
|
2
|
+
import type { ModelModule } from "../../modules/index.js";
|
|
3
|
+
export declare class ModelApiController {
|
|
4
|
+
private modelModule;
|
|
5
|
+
constructor(modelModule: ModelModule);
|
|
6
|
+
handleModelList: (_req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=model.api.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.api.controller.d.ts","sourceRoot":"","sources":["../../../../src/controllers/api/model.api.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,qBAAa,kBAAkB;IAC9B,OAAO,CAAC,WAAW,CAAc;gBAErB,WAAW,EAAE,WAAW;IAI7B,eAAe,GACrB,MAAM,OAAO,EACb,KAAK,QAAQ,EACb,MAAM,YAAY,mBAQjB;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class ModelApiController {
|
|
2
|
+
constructor(modelModule) {
|
|
3
|
+
this.handleModelList = async (_req, res, next) => {
|
|
4
|
+
try {
|
|
5
|
+
const models = this.modelModule.getModelList();
|
|
6
|
+
res.json(models);
|
|
7
|
+
}
|
|
8
|
+
catch (error) {
|
|
9
|
+
next(error);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
this.modelModule = modelModule;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=model.api.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.api.controller.js","sourceRoot":"","sources":["../../../../src/controllers/api/model.api.controller.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,kBAAkB;IAG9B,YAAY,WAAwB;QAI7B,oBAAe,GAAG,KAAK,EAC7B,IAAa,EACb,GAAa,EACb,IAAkB,EACjB,EAAE;YACH,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;gBAC/C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,CAAC,CAAC;YACb,CAAC;QACF,CAAC,CAAC;QAdD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,CAAC;CAcD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { NextFunction, Request, Response } from "express";
|
|
2
|
+
import type { MemoryModule } from "../../modules/index.js";
|
|
3
|
+
export declare class SessionApiController {
|
|
4
|
+
private memoryModule;
|
|
5
|
+
constructor(memoryModule: MemoryModule);
|
|
6
|
+
handleSessionHistory: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=session.api.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.api.controller.d.ts","sourceRoot":"","sources":["../../../../src/controllers/api/session.api.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,qBAAa,oBAAoB;IAChC,OAAO,CAAC,YAAY,CAAe;gBAEvB,YAAY,EAAE,YAAY;IAI/B,oBAAoB,GAC1B,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,mBAUjB;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class SessionApiController {
|
|
2
|
+
constructor(memoryModule) {
|
|
3
|
+
this.handleSessionHistory = async (req, res, next) => {
|
|
4
|
+
try {
|
|
5
|
+
const { id: sessionId } = req.params;
|
|
6
|
+
const memoryInstance = this.memoryModule.getMemory();
|
|
7
|
+
const session = await memoryInstance.getSessionHistory(sessionId);
|
|
8
|
+
res.json(session);
|
|
9
|
+
}
|
|
10
|
+
catch (error) {
|
|
11
|
+
next(error);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
this.memoryModule = memoryModule;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=session.api.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.api.controller.js","sourceRoot":"","sources":["../../../../src/controllers/api/session.api.controller.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,oBAAoB;IAGhC,YAAY,YAA0B;QAI/B,yBAAoB,GAAG,KAAK,EAClC,GAAY,EACZ,GAAa,EACb,IAAkB,EACjB,EAAE;YACH,IAAI,CAAC;gBACJ,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;gBACrC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAClE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,CAAC,CAAC;YACb,CAAC;QACF,CAAC,CAAC;QAhBD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IAClC,CAAC;CAgBD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { NextFunction, Request, Response } from "express";
|
|
2
|
+
import type { QueryService } from "../services/query.service.js";
|
|
3
|
+
export declare class QueryController {
|
|
4
|
+
private queryService;
|
|
5
|
+
constructor(queryService: QueryService);
|
|
6
|
+
handleQueryRequest: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=query.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/query.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,qBAAa,eAAe;IAC3B,OAAO,CAAC,YAAY,CAAC;gBAET,YAAY,EAAE,YAAY;IAI/B,kBAAkB,GACxB,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,mBAWjB;CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export class QueryController {
|
|
2
|
+
constructor(queryService) {
|
|
3
|
+
this.handleQueryRequest = async (req, res, next) => {
|
|
4
|
+
try {
|
|
5
|
+
const { message, sessionId } = req.body;
|
|
6
|
+
const result = await this.queryService.handleQuery(message, sessionId);
|
|
7
|
+
res.status(200).json(result);
|
|
8
|
+
}
|
|
9
|
+
catch (error) {
|
|
10
|
+
next(error);
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
this.queryService = queryService;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=query.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.controller.js","sourceRoot":"","sources":["../../../src/controllers/query.controller.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,eAAe;IAG3B,YAAY,YAA0B;QAI/B,uBAAkB,GAAG,KAAK,EAChC,GAAY,EACZ,GAAa,EACb,IAAkB,EACjB,EAAE;YACH,IAAI,CAAC;gBACJ,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBAEvE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,CAAC,CAAC;YACb,CAAC;QACF,CAAC,CAAC;QAjBD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IAClC,CAAC;CAiBD"}
|